LXDE has been accepted as a mentoring organization for Google Summer of Code 2010. We are looking forward to a great summer with more people joining development. Please propose ideas for the program on our idea page. Students wishing to apply, please check out the Student Check List in the wiki and join us on irc.oftc.net #lxde to discuss your ideas. A channel for discussion in Chinese on irc.oftc.net #lxde-zh. A German channel is available at #lxde-de.
LXDE is applying as a project for the Google Summer of Code 2010. For students it is a good way to get deeper involved into Free and Open Source Software and LXDE specifically. During the summer students have the chance to code on LXDE and get paid by Google.
Some other projects usually also offer student slots for the LXDE community in the program. We are gathering project ideas, as a way to start for applicants here. If you are interested to join LXDE at the summer of code and would like to discuss project ideas, please join us on IRC at irc.oftc.net #lxde and on the mailing list: https://lists.sourceforge.net/lists/listinfo/lxde-list
The most common question we get from students is “How do I prepare for Google Summer of Code?” The simple answer is not to wait for the program to get involved in open source. Start checking out projects now: take a look at documentation, check out their source code and idle in some IRC channels to see what interests you. The projects who have been past participants in Google Summer of Code are a great place to start; use the categorized list of mentoring organizations (e.g. projects listed by programming languages) from 2009 to help you get started.
About Google Summer of Code
Google Summer of Code (GSoC) is a global program that offers student developers stipends to write code for various open source software projects. We have worked with several open source, free software, and technology-related groups to identify and fund several projects over a three month period. Since its inception in 2005, the program has brought together nearly 3,400 students and more than more than 3,000 mentors & co-mentors from nearly 100 countries worldwide, all for the love of code. Through Google Summer of Code, accepted student applicants are paired with a mentor or mentors from the participating projects, thus gaining exposure to real-world software development scenarios and the opportunity for employment in areas related to their academic pursuits. In turn, the participating projects are able to more easily identify and bring in new developers. Best of all, more source code is created and released for the use and benefit of all.
LXNM (Lightweight Network Manager) is working now after a long time for development. If you often check the news of SVN, you can notice that the next generation of LXNM has already supported wireless connection setting, also it has many feature as old version of LXNM. The new implementation and protocol defination seems to work well at least there is no bug of old version of LXDE had that no Access Point was scanned always.
Here is some screenshots to show you current LXNM wireless support:
As a network manager, wireless is the basic feature, but only the feature is not enough for new internet devices. To be a full function network connection utility, it must provide most popular methods of internet connection service something’s like 3G(HSPDA), PPPoE, dial…etc. And also we can expect WiMAX will be coming soon, so supporting WiMAX maybe important and necessary in the feature as well.
So far most network connections methods need to use PPP (Point-to-Point Protocol) to make connection, so we must try to focus on how’s PPP working and how to integrate PPP stuffs with our program. Fortunately, Most of operating system was using pppd to handle the ppp connections, it seems to be a standard we can consider. If we know how to get pppd immediate status, it will be easy to integrate PPP with our utility for us.
Regarding pppd implementation, it uses a tdb(samba database) to store current connection information(IP, interface, deivce, gateway, dns…etc) in system folder as root. Thus we need to read the file to get network status and the relationship between modem(eg, 3G modem, general modem) and network interface(eg, ppp0, ppp1…). Because of pppd is a user-space implementation as well as it doesn’t have library to provide serial APIs to let us be easy to operate its own stuffs, LXNM must direct open the tdb file. The problem is that pppd will update the tdb file anytime, it is possible that database be modified when LXNM is just reading the file. When it is happened, LXNM will get incorrect information or access failed to cause crazy crash. For solving this bug, we do some to check more information details which is from tdb. After some hard works, right now the issue was solved already.
Besides, the 3G support which is most important feature people concern. LXNM will try to use AT command to control 3G (HSDPA) modem to implement the connection handler, it can provide more information(ISP, Service Location, current area…etc) for your SIM Card with AT command. Some developers suggest us to research the implementation of Modem Manager Project for helping development.
Now we are working on this part which is that dialing with 3G modem, but there were also some weird problems we got. More details about those issues will be explained at blog next time.
Next generation of LXNM (Lightweight Network Manager) is still under development right now, You guys can see the prototype which was implemented in SVN already. In the future, LXNM will provide some programs includes lxnm daemon, utility which is a command line program to make control of all kind of networking devices be unified into only one utility, a LXPanel plugin and a standalone applet for running without LXPanel.
So the project will has three parts to be maintained:
1. lxnm (LXNM Daemon and command line utility – lxnetctl)
2. lxpanel-netstat (LXPanel plugin)
3. lxnm-applet (standalone applet)
For the current version in SVN, lxnm can be working now, we can using lxnetctl utility to connect to lxnm daemon to control our networking devices and get informations include ethernet and wireless interface.
BTW, I am now working on lxnm-applet to implement a graphical LXNM client to display and control network devices.
Besides, in the future, LXNM will provide a library to make easy to write a new LXNM client(eg, lxnm-applet) for developer.
There are still opportunities for people interested in working on LXDE as a summer of code project. We are in touch for example with the Debian project, who offered to give spots to students from the LXDE project for example for a better integration. Also, new student projects are welcome. The summer of code program offers student stipends of 4500,- USD for studying and development work on specific free and open source projects.
Please check it out and apply as soon as possible. Also get in touch with us, so we can support your application.
The application deadline is approaching soon. It is important to apply before 19:00 UTC April 3rd. Applications can still be adapted and specified with mentors after that date. You might regard your first application as a version 0.1 maybe. So, please, dont be shy. Good luck!
The Google Summer of Code is now accepting applications from students for projects. There are a number of projects, that could accept LXDE related works. If you have an idea we are open to support you and discuss it. Please join us in the LXDE channel on irc.oftc.net. I would also like to support you and endorse any applications by talking to projects directly. Just let me know, please.
We are gathering project ideas for LXDE in the wiki. If you are interested to join LXDE at the summer of code and would like to discuss project ideas, please also join us on IRC at irc.oftc.net #lxde.
Ideas for the PCMan File Manager project are on a seperate project page here: PCMan File Manager Ideas. The pages will be continuously updated with more information starting at the week from Monday, March 16, 2009.
Please visit our idea pages and add your project ideas. We are looking forward to your involvement and contributions!