Developer Hong Jen Yee says GNOME is good, but it’s not lightweight or fast enough for some users. After coding several lightweight desktop utilities, Hong and his colleagues wound up building an entire desktop environment – the Lightweight X11 Desktop Environment (LXDE). Now LXDE is getting a distro of its own – Lubuntu.
Does the world really need another desktop environment? Hong says GNOME is less responsive then it should be, especially when used with netbooks. In addition, it suffers from dependency problems; “when you only need part of the functionality provided by GNOME, most of time you’ll need to install a lot of additional dependencies. It’s a complete platform, but it just provides too many things that are not necessarily needed by many users.”
KDE, Hong says, suffers from similar problems. “Components are tightly integrated with each other and don’t work as nicely in other desktop environments. In addition, it’s just too much for some users who only want to get basic daily work done.”
What about other so-called lightweight desktops? “Xfce seems to be something in between GNOME and KDE. However, it’s getting closer to GNOME in feature sets, and now they share similar shortcomings. ROX desktop is lightweight, but some features are lacking. Also, I cannot get used to its user interface.”
If you’re a developer and you can’t find a tool you like, your alternative is to write your own, and that’s just what Hong did. “Around the end of 2006, I decided to develop a lightweight file manager, called PCManFM originally. After it was developed, I replaced the desktop panel with fbpanel, and then used IceWM as window manager rather than using a full GNOME desktop. Later, I felt that some features were lacking in fbpanel, so I forked fbpanel and added the features I wanted, and created LXPanel. Since by that time I had replaced the most crucial parts of a desktop environment, it was quite natural to build a new desktop environment on top of them. That’s how LXDE got started.”
Hong says LXDE is designed to be modular and tries to make every component work nicely in other desktop environments with minimal dependencies. However, when those components are installed together and are launched under LXDE, they exhibit slightly different behavior to make things more integrated. In addition, LXDE follows freedesktop.org standards for compatibility with other desktop environments. It also offers great i18n support; Hong says LXDE has been translated to dozens of languages.
The project tries to reuse existing solution when possible. For instance, instead of creating their own window manager and text editor, the project chose the already mature Openbox and Leafpad. But since the components are not tightly integrated, you can easily replace one with another program, if you prefer, for example, a different window manager.
LXDE is lightweight, but it doesn’t sacrifice usability. Unlike some other lightweight window managers, you generally don’t have to manually edit configuration files. You just choose “LXDE” in your gdm menu as your window manager and log in. You can configure the desktop via the GUI most of the time; you might have to manually edit configuration files only if you want further customization or if your distro maker doesn’t provide proper default configurations.
In the latest version of LXPanel the layout of panel items was redesigned by new project member Marty Jack, and many old bugs were fixed. There still seem to be some performance issues in the latest 0.5.3 release reported by Debian community, but they’re on the list to be fixed.
Also on tap for upcoming releases is a total rewrite of the PCManFM file manager based on glib/gio. Hong says, “If things go smoothly, the first public release will be in Q1 2010. The next generation of PCManFM will optionally support seamless remote filesystem access when gvfs is available. The core of the file manager is now separated from the main program; it became a library named libfm. The library provides basic facilities needed by a file manager. Other programmers can use this library to create their own file managers. For example, you could write a new file manager with a two-pane layout by using libfm.”
Hong says a new display manager named lxdm is being developed to replace gdm in LXDE-based distros, and a broken network management tool, LXNM, is undergoing a total rewrite to turn it into a new lightweight network manager.
The project uses the so-called rolling stone model for software releases. “We make constant small releases of each component rather than a big upgrade of the whole LXDE. However, since now the project is becoming more and more mature, we may consider changing the model if the community wants it.”
LXDE uses several SourceForge.net facilities to develop the software, including use SVN, Git, mailing list, and the bug trackers. When you’re coordinating the work of more than four dozen developers, a good toolset is a must.
Tweet of the day: @leastfixedpoint: the homepage of sourceforge.net looks like a spammy domain parking page