LXDE speaks 13 languages!

Three weeks have passed (was supposed to deliver some statistics last week but not that much had happened so I took the weekend to rest =)) since last report and we have had another huge progress in the code, most of it has happened the last week though.

As we approach the imminent release of GPicView the translators have been busy to complete the new strings and most of them have also completed and updated other parts of the project. It’s nice to see how interested the community are in completing the translation effort for their language. In early May we had four languages (and English) completed – Arabic, Spanish, Japanese and Swedish. I am pleased to be able to report that we have twelve (not including English!) individual language codes fully translated. We even got some new languages added these weeks that are completed. That’s a really fulfilling experience. Big up to Urudu (a sole maintainer does both Urdu and Urdu as spoken in Pakistan).
Another great achievement this last week was the progress from Dutch and Indonesian, Dutch was placed in the need work category (less than 50% completed) and are now completed. Indonesian wasn’t that far off but not in the runners up category (90% or more done).

Let’s get down to the figures for real then, the completed translations enable 1200 000 000 people to use LXDE in their native tounge. We have doubled the numbers in just about a month work! By completing the runners up category we will add another 411 200 000 native speakers. And by all you who get around by using a secondary language (English, Spanish, French?) the number of enabled users are truly amazing! The translators really deserv a big hand for their great work in connecting people.

I always try to get some languages to deliver, we have a sad category I call “Needs work“. These are not by any means minor languages but their progress is stalled and their completion rate is under 50%. We call members of the community who speak Afrikaans, Bulgarian (new language added just yesterday!), Galician, Korean, Norweigan Bokmål, Norgweigan Nynorsk, Farsi/Persian, Turkish or Vietnamese to the stands. If you show up and can complete the translation effort we could add another 275 000 000 people to the stash. Please note here that the Chinese translations (as spoken in China and as spoken in Taiwan) are not completed and would bring another 1 000 000 000+ people to the totals. We are a large community, but why stop at large when great is near?

If you know any of the not completed languages or want to translate LXDE in to a new language that we at this stage not try to support please contact us (via the mailinglist, the forums, me directly or by IRC, any means would probably do – e-mail is the best because of time zones=)).
If your language is already in LXDE in some state it is enabled in the Pootle server and it’s easy as reading the guide to get started. Or if you rather would like to get the files and use a PO-file editor there are guides for that approach. Help us become a well translated and enabled Desktop Environment.

Improving the translations workflow with Transifex

Roughly about a month ago Martin Bagge mentioned that we were researching the possibility of using Transifex as a translation platform for all of the LXDE components. That is not to say that our Pootle server won’t be around, but we felt that our translators could benefit from a few handy features that Transifex has to offer.

So what exactly is Transifex you may ask? I guess the best way to describe it is as a bridge between source code that needs to be localized and people who know how to translate it. But that was a rather simple description of what this amazing tools does! I could go on and on about the cool features, but for this post I’ll try to keep it simple and go directly to the point.

For the administrators: Nothing needs to be done! That’s right, nothing! No more local user accounts, ssh keys and all of that nonsense! Put your feet up and relax!

For the translators: At first glance it may seem like there is yet another entry point for you to do your work, but bear with me for a bit. If you love how Pootle works and that does the trick for you, then nothing has changed. The same goes for those who like me have direct commit access and like to use the command line! Keep up the good work! However, if you crave for some some type of management and up to the second information about your translations, then you’re going to enjoy what Transifex has to offer!

As I mentioned before, Transifex acts like a bridge between your source code and translators. It doesn’t really matter what type of versioning control system is used to store the source code (by the way, we use subversion). All this tool needs to know is: where does the code live, who is entitled to work on translations, and if translations that are uploaded can be automatically committed upstream.

Transifex workflow
Transifex workflow

So your job as a translator will be:

  1. to create a (free) account in the Transifex server;
  2. associate yourself with the LXDE project and the specific language you want to work on;
  3. and use the web interface to reserve a file for translation. This file can then be downloaded and translated offline and then submitted back via the same interface. The translation is then validated and committed upstream into the official repository.

If you are responsible for managing one of the language teams or just want to make sure you know what is happening with the project as a whole, you can choose to be notified every time someone reserves a file for translation, writes down a comment, reviews someone’s work, or a commit takes place. Since people will have to reserve a file for translation, you can make sure that no two people work on the same file at the same time, in the end saving time, headaches and redundancy. Best of all, since your work can be committed automatically when you upload your translation, you can see in real time your progress and that of your teammates.

Reserving and submitting translations
Reserving and submitting translations

In the next few weeks we will have a LXDE project officially set up and hosted by our friends from the Transifex project and we will then make a call to arms so that those who want to use this new platform can get the proper permissions configured, but I kindly ask everyone to wait until we make another announcement here.

In the meantime, keep up the excelente work you’ve  been doing and let us know how we can make your lives easier! Comments, concerns and suggestions are more than welcome!

GPicView 0.2 beta is coming with GIF animation support!

Finally, we have yet another new release of GPicView.


Really glad to announce the upcoming release of gpicview 0.2.
With the help from Marty Jack and Louis Casillas, some new features are added.
* GIF animation support!!
* Save jpeg and png files with different compression ratio.
* Background color can be freely changed.
* Some bug fixes.
* UI polishing.
* New translations

So, we’re going to release gpicview 0.2 soon.
Currently a beta version 0.1.99 will be released first for testing.
If there are typos or inappropriate text on UI, feel free to bug report.

Once everything goes fine, the strings in the UI will be frozen.
Then it’s the time for translators to get all of them translated, and
we can make a 0.2 stable release.


Making LXDE packages at Coding for Fun in Beijing

I am meeting up with some folks from the Beijing Linux User Group at Coding for fun at the Thiz Linux office in Beijing.


It is great to see how dedicated everyone is. eMBee is teaching Guang Yudong how to actually create packages. Besides that we have Zhang Sen working on his Google Summer of Code project, folks working on OpenMoko and supporting Chengying in her first steps with Linux. Xuedi is discussing with Anthony Fok and Ollo about other cool staff in the FOSS/Open Source community. Thanks for a great time in Beijing!

Xuedi with Beijinglug T-shirt

T-shirts and Banners for LXDE

LXDEs popularity is increasing and so people ask for presentation materials and T-shirts. So, lets design some T-shirts and banners together.

We are calling for you to make some T-shirt designs and designs for the display of LXDE at community events with PVC banners. You are a designer or like to become one? Please join
– the design project page http://wiki.lxde.org/en/Category:Design
– the design mailing list http://mailinglist.lxde.org/cgi-bin/mailman/listinfo/design
– and post your designs in the Forum at http://forum.lxde.org/viewforum.php?f=13

We are looking for T-Shirt prints we can use for example at the Linuxtag in Berlin and also for designs for banners of the size of 160×60 cm. Feel free to include screenshots, pictures of the community and anything you can think of :-)

Happy to see your results soon!

New LXDE Components available

PCMan released new LXDE Components and improved settings structure of LXDE.

1. LXInput. This is a config tool used to configure your keyboard and mouse under LXDE.
2. The lxde-settings-daemon: The original lxde-settings is moved from lxde-common to a new separate package and was renamed to lxde-settings-daemon. In addition to the theme, now the settings daemon will configure keyboard and mouse for you. (works with lxinput config tool)
3. lxde-common 0.4: some fixes were done, and unused files are removed. lxde-common is now a noarch, data-only package, and doesn’t contain any binary program in it. The settings daemon is now in lxde-settings-daemon.
4. menu-cache 0.2.5: binaries are now moved to libexec.
5. The original lxsession is deprecated, and will be totally replaced by lxsession-lite since X11 session management is problematic, complicated, and rarely used by applications. GNOME now replaced XSM with dbus, too. So we don’t need that anymore.

LXDE in CentOS

Avelino from the CentOS Community in Brazil and Chris Wickert had an interesting talk on the LXDE IRC (irc.oftc.net #lxde), how to make LXDE run in CentOS.

There are no LXDE rpms for CentOS yet, but it is possible to rebuild the srpms from Fedora.

You can grab the latest packages from https://admin.fedoraproject.org/updates, use the search box to search for a package and then install as described in http://wiki.lxde.org/en/Fedora.

If you download and install the CentOS RPM it should work fine (https://admin.fedoraproject.org/updates/search/lxde).

You will also need menu-cache if you install latest lxpanel 0.4.0 or a later version.

LXPanel 0.4 and menu-cache 0.2.4 released

Hi all, here comes the latest release of LXPanel – version 0.4.

LXPanel 0.4 screenshot
LXPanel 0.4 screenshot

First I’d like to say sorry because this is not a bug-free release.
Some existing problems are not completely solved yet, but most of the bugs causing crashes were fixed. However, we feel it’s right time to have a new release. The menu-cache library is now stable enough for extensive use in LXDE. This will give us a enhanced and faster application menu and lxlauncher. Later, the lib will be used by pcmanfm, too.

The new features and some important bug fixes really deserves a new release of lxpanel.
So here comes version 0.4.


To use LXPanel 0.4, you’ll also need following packages:
* menu-cache (lib used to parse freedesktop.org menu file and generate menu)
* lxmenu-data (data files used to generate application menu)

What’s new:
* A whole new application menu generated according to freedesktop.org menu spec.
(faster and more standard-compliant. has tooltips for menu items)
* Enhanced “Run” dialog.
* Auto-resize of application launcher buttons when panel size gets changed.
* Some important critical bug fixes.
* The problematic netstat plugin is now turned off by default. It will be moved to a separate project later.
* Building dynamic panel plugins outside the source tree of lxpanel is now possible.
* and more…

Some bugs are not yet fixed and we know that. We’ll do our best to fixed them later.

LXNM Will Bring Back to Life

So far LXNM(Network Manager of LXDE) was in prototype, LXDE team was just trying to implement a usable network utility. In the beginning, it was expected be enough to work instead of Network Manager of GNOME. But even today, most of people still uses LXDE desktop environment without LXNM due to it is so buggy and poor. Also LXNM has no more improvements in the past, it seems to die for a long time.

It is the truth that LXNM will bring back to life, LXDE team have tried to restart this project and plan on working to implement new architecture of LXNM. Here is a diagram of new structure for next version of LXNM:

LXNM Structure

In principle LXNM will keep original features and most of architecture, but for more requirements of networking device operations, it will be modified or re-designed some parts of that, For communication of Client/Server, LXNM protocol will be re-defined to support more features that something’s just like response of networking status, it means that in the future user can get more complete informations of networking in a moment, and also fixed a critical bug that netstat plugin of LXPanele cannot found out any wireless Access Point as non-root.

For easy to migrate to other platform which is other linux distribution or other Unix-like operating system, LXNM still keep script-based method to handle network device control. Considering that efficiency issue, LXNM will provide a new way to implement that direct call system call to operate network device for each operating system in C language without any scripts, this feature needs more time to be done due to it’s harder and more complicated than script-based method.

With the Google Summer of Code 2009, LXNM is restarting right now. We expect that LXNM will have a great usable version after three month in the future.