Most of us don’t think of the desktop as something separate from the operating system. What you see on the screen—that is Windows or that is macOS. But on Linux, there is no one desktop. Instead, there are many.
Most people stick with what comes by default, and a number of Linux distributors are opting to create their own desktop from scratch. elementary OS has Pantheon. Solus has Budgie. System76 has COSMIC. Nitrux Linux has Maui Shell. In the past, Ubuntu had Unity.
Creating a desktop is easier said than done, so why are so many distros making the effort?
1. To Control Their Software Experience
In the proprietary software world, the company providing the operating system has control over most of the desktop experience. They develop the code themselves, or they contract the work out to someone else, and they have the power to make any changes their development team is able to throw together.
In the free software world, all the components come from different entities. The people who develop the display server differ from those who make the boot screen and those who make the packaging format. A distro’s team may lack the knowledge to fix bugs in any of these components or lack the permission to make the desired changes.
By making their own desktop environment, a company like System76 can at least take control over the interface that customers see.
This way, they aren’t left trying to fix their extensions or patches that may break every six months when a new version of the GNOME desktop environment (which System76 shipped by default before developing COSMIC) comes out. And they aren’t left crossing their fingers hoping GNOME will incorporate their desired changes.
2. They Can Establish Their Own Vision
Having control of the code is only one aspect. What also matters is control over the direction the code is moving toward.
Consider how GNOME is very committed to only displaying the dock inside the Activities Overview. Distros like Ubuntu and Pop!_OS that want a dock visible at all times write extensions to make this change. But while GNOME allows extensions, making sure extensions work from one version of GNOME to the next isn’t a priority.
So Canonical and System76 find themselves dependent on a desktop that doesn’t provide the desired functionality and doesn’t necessarily provide a stable foundation for them to patch that functionality in.
By creating its own desktop environment, System76 can make a desktop that functions more in line with the experience it wants to deliver to customers, rather than reshape someone else’s vision to align with their own.
A dock can be a first-class citizen. So can a tiling-window manager. So can a custom theme that some GNOME developers aren’t particularly fond of, which would simply become the default. Updates won’t break these aspects of the experience unless they’re the ones doing the breaking.
3. They Must Respond to User Feedback
When people start to use your project, you will eventually get feedback about what they like and what they don’t. Some people love that GNOME doesn’t have desktop icons. Others find this unacceptable. The latter provides motivation for a company like Canonical to have kept this functionality as part of Unity and to add it back into GNOME through an extension.
To provide another example, consider how many people find KDE Plasma to have an overwhelming number of options. Yet still, at some point, someone asks for a feature, and another option appears.
This isn’t because KDE has a mission statement to be complicated. Far from it. Someone simply wanted a feature, and either they made it happen or, more often, someone else created it for them.
System76 occupies a special place in the Linux world. It’s a Linux laptop provider that both ships hardware and develops its own software. It has paying customers who express their expectations and desires back to the company.
Customers may not directly ask System76 for a new desktop environment, but creating one can empower the company to deliver what customers actually are asking for.
4. Volunteers Want Freedom to Develop
GNOME is a very opinionated desktop environment. This isn’t a criticism. Unlike many traditional Linux desktop environments, the GNOME project has a targeted vision of how its interface will look, function, and integrate. Any contributions that deviate from that direction are not incorporated.
So if someone creates a way to display thumbnails for each open workspace in the bottom corner of the screen, that’s not likely to become part of GNOME because the accepted visual metaphor is for workspaces to be something you zoom in and out of when you activate the Activities Overview.
This person, in this case, may not abandon their code and instead develop something else for GNOME. Since they aren’t employees, they may instead go to another desktop where their contribution feels welcome.
Some volunteers have a grand vision for how the entire desktop can work, and no existing project gives them the freedom to create things exactly as they want them. The result is they start their own project.
Whether it’s technical or visual, there will always be reasons for someone to want to try their hand at making a new desktop environment. This is the case for free software apps in general, and the broader interface is no different.
5. They Want to Be Distinctive
Canonical’s Unity interface was somewhat controversial in the Linux world when it first arrived. Many people did not understand why Canonical would spend so much time reinventing the wheel when it already had a functioning desktop interface.
But part of Ubuntu’s mission was to be easily accessible, and part of that meant coming pre-installed on new computers. And some computer manufacturers were not particularly enthusiastic about trying to sell computers with an interface that looked as outdated as GNOME 2 did.
Unity was a distinctive look, not only among Linux distributions but compared to Windows and macOS as well. When you looked at a picture of the Unity desktop, you knew what you were looking at. It was Ubuntu. It had bright vibrant icons on the left and a useful keyboard-driven HUD feature for navigating app menus by typing alone.
By creating their own desktop environment, Canonical had a unique offering that manufacturers could try to sell.
Even among traditional Linux users who download an ISO file and replace their existing operating system, there must be a reason to use one distro over another. Package formats and release schedules used to be the key differentiators. Over the years, attention has gravitated toward desktop environments.
Does Linux Need More Desktop Environments?
This is the perennial question. Ultimately, it doesn’t matter. People don’t create new desktops because there is a need (and who can determine who needs what anyway?). People create new desktops because they can.
New desktops are in the works, but in the meantime, have you familiarized yourself with the many Linux desktop environments that already exist?
Choosing a Linux desktop environment can be difficult. Here are the best Linux desktop environments to consider.
About The Author