LXDE waves goodbye to GTK in merge with Razor-qt

One of Linux's better lightweight windows managers has discarded GNOME's GTK+ toolkit for a Qt future.
Written by Chris Duckett, Contributor

It's been a week of change for the Razor-qt and LXDE projects.

Over the weekend, the Razor-qt project announced that it would be merging with the Qt port of the LXDE project, focusing resources from both projects onto LXDE-Qt.

What started out as an experiment in moving LXDE's file manager to the Qt framework in February, had become by July a port of the LXDE desktop to Qt.

As LXDE moved more and more of its code to supporting Qt, the question of how long LXDE could support a codebase for each framework kept coming up.

Back when he announced the original experiments in Qt, LXDE's founder, Hong Jen Yee "PCMan", pointed out that the project would not be moving from GTK+ 2 to the newer GTK+ 3 that arrived with GNOME 3.

"Since GTK+ 3 breaks backward compatibility a lot and it becomes more memory hungry and slower, I don't see much advantage of GTK+ now," PCMan wrote at the time.

"GTK+ 2 is lighter, but it's no longer true for GTK+ 3. Ironically, fixing all of the broken compatibility is even harder than porting to Qt in some cases (PCManFM IMO is one of them)."

The writing was being pencilled on the wall, and yesterday, the letters were filled in.

In a blog post yesterday, PCMan announced that the first release of LXDE-Qt and the final release of Razor-qt would see the light of day in the coming weeks. Beyond that, for the "foreseeable future", the GTK version of LXDE will have features ported back to it from work on the Qt version.

Eventually, though, the GTK-based LXDE will disappear.

"Looking further ahead, the GTK version of LXDE will be dropped and all efforts will be focused on the Qt port," wrote PCMan.

Even for a project, such as LXDE, that maintains a lightweight footprint, having to support two frameworks and two different languages is a massive task. Coding for one version in C++ and porting back to a different framework that uses C/GObject bindings will be a thankless task.

I'm surprised and impressed that LXDE is not dropping its GTK support altogether after its merger with Razor-qt.

It will be interesting to see whether existing users of LXDE make the switch to Qt along with the desktop. Given that many users make exclusive use of a suite of GTK-based or Qt-based applications, a desktop switching its framework is no small decision — especially when the desktops, and users, are looking to minimise memory usage.

With GTK-based alternative XFCE moving to GTK+ 3 eventually, the GTK+ 2 purists are left with few choices.

If you are in the market for an actively developed, long-term solution to avoid GTK+ 3 without heading over to Qt-based environments, your best bet is to look in the direction of MATE Desktop — but your choices are getting fewer and fewer.

Meanwhile, though, if framework choice is neither here nor there for you, I'm sure LXDE will remain a good, lightweight desktop alternative/backup environment for when the larger desktop breaks. It's a niche that it fills well, and it looks set to continue to do so.

Editorial standards