This article is more than 1 year old
Two new Linux desktops – one with deep roots – come to Debian
One's a bit raw and touchy, but the other is vintage stuff, brought up to date
Maybe the DBUS developers have a point: desktops are like buses… you wait for ages, then two of them come along at once: Lomiri on Debian, and GSDE, the GNUstep Desktop Environment.
Both the new offerings focus on Debian for now, although that may well change in time, and although both are quite different to more mainstream offerings, they each have roots in tech that's been around for some time. Lomiri is the now cross-platform desktop environment that was formerly called Unity 8, which Canonical cancelled in 2017. As we covered back in February, Lomiri's Ubuntu dependencies – and trademarks – have been cleaned up. Along with changing its name, now it's much more cross-platform, but we must confess that we missed the full significance of what lead developer Marius Gripsård told us at the time:
What made this possible to get it into Debian was the effort we did on renaming and dropping legacy dependencies.
We misunderstood what this implied: he didn't mean that it now runs on Debian, but rather that as of Debian 12 "Bookworm", it is part of Debian. It's not one of the desktops offered in the Debian installer, but the Lomiri desktop, complete with Mir display server, is in the Bookworm's repositories. If you're curious, this means that it's very easy to give it a try – you can install it with a single command:
apt install -y lomiri
We've tried it on a few different machines now, on both Arm64 and on x86-64, the latter on both bare metal and in a virtual machine. From our experiments so far, we advise starting with a bare installation of Debian 12, with no other graphical user interface or display server installed. Installation of Lomiri also installs Canonical's Mir display server, which it requires, and we found that if we had another desktop already installed, Lomiri failed to launch.
Lomiri is an option in Debian Bookworm, but while it installs and runs, it's not ready for daily use yet
The best results that we had were in Virtualbox on x86-64, where the environment launches successfully, and displays its dock and top panel, complete with controls. That, unfortunately, is about as good as it gets: for instance, the web browser has never opened successfully for us on any platform, which also means that you can't access the environment's built-in help. Most X11 applications wouldn't launch for us, although we did get the Netsurf web browser running successfully.
At present, Lomiri is both bare-bones and incomplete; for instance, we couldn't find a way to change the screen mode. The environment was primarily built for tablets, and assumes a single fixed resolution. However, you can open a bunch of terminals, and for some Linux users, that may be enough. In an bare-metal install, it did succeed as far as displaying a desktop, but the panel lacked any controls and almost no applications would open. With the best will in the world, the desktop version is in an extremely preliminary state: it's not ready for use. The reports that we've heard about using it on smartphones, for example on the old-mobe-centric postmarketOS, are much more encouraging. Its inclusion in Debian 12 means that Lomiri (and Mir) are now available to a lot more people without building from source, and we hope that this will lead to more development and increased usability soon.
The other new desktop that we have been playing with recently has far deeper roots. The GNUstep Desktop, or GSDE for short, draws upon two older projects. One of these is the long established GNUstep Project, which is an open-source reimplementation of the Cocoa programming frameworks: the Objective-C tools and libraries from which NeXTstep was built, and thus also the modern incarnation of NeXTstep, Apple's macOS.
GNUstep has been around since the 1990s, and has re-implemented a substantial amount of NeXTstep, completely from scratch. Almost as a byproduct, that means that the GNUstep project has implemented most of a desktop environment: a file manager called GWorkspace, a rather good email client, both plain-text and formatted-text editors, a terminal emulator, image viewers and graphics editors, a suite of development tools, and so on. One of the few omissions, in fact, is a web browser – which is somewhat ironic, given that Tim Berners-Lee's original WorldWideWeb was first written on NeXTstep.
The thing is that none of this exists as a coherent whole, and it's not an option on any Linux distro, because the project's goal was a coherent set of frameworks and controls, rather than a desktop environment. The fact that there are enough developer tools, proof-of-concept and demo apps to build most of a desktop is almost a happy side-effect.
GSDE brings the classic NeXTstep look and feel to Debian, complete with a whole suite of useful apps -- even including a browser
So a few years ago, a Ukrainian programmer called Sergii Stoian started to build a modern Linux desktop environment based around the GNUstep components running on top of CentOS Linux, which he called NEXTSPACE. Sadly, development stalled a couple of years ago, before CentOS Linux' premature end-of-life. We are happy to report that Stoian is alive and well, but what with his country being invaded and so on, he's been a bit too busy to work on his project in recent years.
This is where Ondrej Florian, also known as OnFlApp, comes in. Florian has put together a collection of GNUstep components, including some drawn from NEXTSPACE, to create the GNUstep Desktop Environment. For now, the project's [GitHub repository] contains scripts to build it and install it, but only on Debian, although Debian versions 9, 10 and 11 are included. We tried on Debian 11.7 "Bullseye", and in a VM, it works perfectly. The process is manual, but not too labour-intensive: install Git, clone the repo, then run three scripts. The first, install-dependencies-debian
, installs the project's many dependencies; then fetch_world
downloads GSDE's source code (so you will need an internet connection); finally, build_world
compiles and installs it all. If you want luxuries like a graphical login process, or for GSDE to launch automatically when you log in, it's up to you to configure that stuff manually.
So, at this stage, GSDE is not very beginner friendly, but it's a substantial improvement over manually finding, installing or compiling, and configuring the various bits of the GNUstep system which are already in the Debian and Ubuntu repositories. The end result is better integrated, more complete, and even includes a working web browser – although you'll need to install the Chromium browser yourself, in order for the GSDE web browser to call it and work.
The end result is a quite complete setup that we really enjoy using. Although the Reg FOSS Desk does own an original copy of NeXTstep 3.3, sadly for us we do not own a NeXTcube or NeXTstation, so we've only got to experience it running under the Previous emulator. In a way, running NeXTstep or GSDE in the 21st century is a little bit like running RISC OS Open on a Raspberry Pi: both of them are graphical desktops whose design predates the release of Windows 3.0. It's not that they are weird or limited — they aren't — it's just that all the familiar UI conventions from the last third of a century of graphical desktop OSs don't apply here. GSDE makes a few concessions to modern niceties: For example, scroll bars are on the right of the thing being scrolled, whereas NeXT put them on the left. Strangely, the modifier key in GSDE is Alt, rather than Ctrl as Windows and Linux users would expect. That's because on a Mac, the default modifier key is Command, which on a Mac keyboard is right next to the space bar – where you find Alt on a PC keyboard. So, for instance, to copy something, you press Alt-C rather than Ctrl-C.
GSDE is still a little flaky, and not everything works perfectly, but for what is basically a version 1.0 product, it's remarkably complete, largely thanks to its GNUstep base. And it runs on top of vanilla X.org, so for example when we installed the Virtualbox guest additions, the GSDE desktop smoothly resized to the size of the VM window.
GSDE isn't a fork of NEXTSPACE; it's an independent project, which adopts some NEXTSPACE components. Stoian has said that he hopes to return to work on NEXTSPACE when things in Kyiv are more peaceful, and he's also open to versions for other distros. The Reg FOSS desk would be delighted to see a Fedora NEXTSPACE spin. It's also worth pointing out that NEXTSPACE was not the first such effort of its kind – for instance, some years ago, GNUstep Live was a Debian 9-based bootable ISO image to demonstrate the GNUstep environment and tools. For us, GSDE wins over both, not only because it's more current, but because it runs on a recent version of Debian rather than "Stretch" (or CentOS Linux).
- Asahi Linux developer warns the one true way is Wayland
- Had enough of Android? First 'Focal' based Ubuntu Touch is out
- Croquet for Unity: Live, network-transparent 3D gaming... but it's so much more
- Unity and Trinity: New releases for forks of abandoned Linux desktops
We would really love to see GSDE get more polished, and binary packages included in mainstream distros, or at least bundled into a ready-to-run distro. If it resulted in more attention for GNUstep, that would also be a big win. The underlying GNUstep frameworks are starting to get a bit left behind by more recent Apple software developments – for example, there is no support for Apple's new Swift programming language as of yet. If GSDE resulted in the GNUstep project getting more interest or support, that would be no bad thing. As we've previously described, alongside implementing most of a desktop environment, GNUstep also implemented a cross-distro packaging system as a byproduct of its efforts.
NeXTstep – so good-looking, it was in music videos
We have bemoaned the lack of diversity in the Linux desktop space before. For a lot of people, this Vulture included, the original NeXTstep desktop is the most beautiful GUI ever invented, and it's a real pleasure to run something that's almost uncannily close to it on top of a modern Linux distro. ®