Linux desktop is the environment that you see once you log into the Linux system. Since the early 1990’s Linux desktop has matured from a simple Window manager to a full-scale desktop. In the early days of Linux, you did not have much choice on the desktop, and most people who worked with Linux preferred the Commandline and did not have much use for a desktop. But once I tried the Graphical user interface, I kind of became addicted to it. It was great to run applications in separate windows and have the ability to run them side by side. In the last 26 years, the Linux desktop has come a long way. Today you have a lot of choices in the Linux desktop world. Plasma KDE, Gnome, Budgie, Mate, Deepin just to name a few.

The first “desktops” On Linux weren’t yet desktops. Instead, they were window managers running on the X Window System. X provided the basic building blocks for a graphical user interface, such as creating windows on the screen and providing keyboard and mouse input. By itself, X didn’t do much. To make the X graphical environment useful, you needed a way to manage all the windows in your session. That’s where the window manager came in. Running an X program like xterm or xclock opens that program in a window. The window manager keeps track of windows and does basic housekeeping, such as letting you move windows around and minimize them. You could launch programs when X started by listing them in the ~/.xinitrc file, but usually, you’d run new programs from an xterm.

The most used window manager in 1993 was TWM, which dates back to 1988. TWM was quite simple and provided only basic window management.

TWM Showing xterm and xclock with emacs editor

There were a number of other window managers as well running on number of systems. Open Look Virtual Window Manager (OLVWM) was developed by Sun Microsystems in 1988 and later was ported to other systems. This was one of the first window managers that supported multiple work spaces.

When Linux started to gain traction it did not take long for others to start creating window managers that work with Linux systems. These new window mangers had a smother performance and a more polished interfaces. The first of these new window managers was FVWM, a virtual window manager. FVWM sported a more modern look than TWM or OLVWM. But we didn’t yet have a desktop.

FVWM with File Manager and xterm

These screens today might look very plain but keep in mind that in the same time period Microsoft Windows was on version 3.11 looked as plain as the rest of them.

Microsoft Windows 3.11 with Clock, Minesweeper game and Program Manager

Microsoft Windows: In August 1995, Microsoft released Windows 95 and changed the modern PC desktop landscape. Certainly, I was impressed. I thought Windows 3.x was ungainly and ugly, but Windows 95 was smooth and pretty. More importantly, Windows 95 was what we now consider a desktop. The new desktop metaphor was a huge step forward. You could put icons on the desktop—and in fact, Windows 95 presented two default desktop icons, for My Computer (to open a file manager) and the Recycle Bin (where you put files to be deleted later).

But more importantly, the Windows 95 desktop meant integration. The Program Manager was gone, replaced by a Taskbar at the bottom of the screen that let you launch new programs using a simpler Start menu. The Taskbar was multifunctional and also showed your running programs via a series of buttons and a dock showing the time, speaker volume, and other simple controls. You could right-click on any object on the new desktop, and Windows 95 would present you with a context-sensitive menu with actions you could perform.

Windows 95 with taskbar

The Windows 95 interface was slick and much easier to use than previous versions of Windows. Not to be outdone, Linux developers created a new version of FVWM that mimicked the Windows 95 interface. Called FVWM95, the new window manager still wasn’t a desktop, but it looked very nice. The new taskbar lets you start new X programs using the Start menu. The taskbar also showed your running programs using buttons similar to Windows 95’s.

FVWM95 with Task Bar

While FVWM95 and other window managers were improving, the core problem remained: Linux didn’t really have a desktop. It had a collection of window managers, and that was about it. Linux applications that used a graphical user interface (GUI, pretty much meaning they were X applications) all looked different and worked differently. You couldn’t copy and paste from one application to another, except the simple text-only copy/paste provided by the X Window System. What Linux really needed was a complete redo in its GUI to create the first desktop.

First Linux Desktop: In 1996, Matthias Ettrich was troubled by the inconsistency of Linux applications under X. He wanted to make the graphical environment easy to use. And more importantly, he wanted to make everything integrated—like an actual desktop. Matthias started work on the K Desktop Environment. That’s K for “Kool.” But the name KDE was also meant to be a play on the Common Desktop Environment (CDE) that was the standard in the “Big Unix” world. Although by 1996, CDE was looking pretty dated. CDE was based on the Motif widget set, which is the same design that FVWM mimicked. Finalized in July 1998, KDE 1.0 was a definite improvement over plain window managers like FVWM95.

KDE 1.0 Desktop

KDE was a big step forward for Linux. Finally, Linux had a true desktop with application integration and more modern desktop icons. KDE’s design was not dissimilar from Windows 95. You had a kind-of taskbar along the bottom of the screen that provided the equivalent of Windows 95’s Start menu as well as several application shortcuts. KDE also supported virtual desktops, which were cleverly labeled One, Two, Three, and Four (This is one area that Linux desktop has been ahead of Windows. This functionality was not introduced in Windows until Windows 10). Running applications were represented via buttons in a separate taskbar at the top of the screen.

But not everyone was happy with KDE. To abstract the GUI from the system, KDE used Trolltech’s Qt toolkit library. Unfortunately, Qt was not distributed under a free software license. Trolltech allowed Qt to be used at no charge in free software applications but charged a fee to use it in commercial or proprietary applications. And that dichotomy is not aligned with free software. This caused problems for Linux distributions: Should they include KDE? Or default to an older but free software graphical user interface like FVWM?

GNOME Desktop: In response, Miguel de Icaza and Federico Mena started work in 1997 on a new Linux desktop. The new project was dubbed GNOME, for GNU Network Object Model Environment. GNOME aimed to be completely free software and used a different toolkit, called GTK, from the GIMP image editor. GTK literally stood for GIMP Tool Kit. When GNOME 1.0 was finally released in 1999, Linux had another modern desktop environment.

GNOME 1.0 File Manager

While it was great to have two desktop environments for Linux, the “KDE versus GNOME” rivalry continued for some time. By 1999, Trolltech re-released the Qt library under a new public license, the Q Public License (QPL). But the new license carried its own baggage—the QPL only applied to Qt’s use in open source software projects, not commercial projects. Thus the Free Software Foundation deemed the QPL not compatible with the GNU General Public License (GNU GPL). This licensing issue would remain until Trolltech re-re-released the Qt library under the GNU GPL version 2 in 2000.

The Linux desktop continued to mature. KDE and GNOME settled into a friendly competition that pushed both to add new features and to exchange ideas and concepts. By 2004, both GNOME and KDE had made significant strides, yet brought only incremental changes to the user interface.

KDE 2 and 3 continued to rely on a taskbar concept at the bottom of the screen but incorporated the buttons for running applications. One of KDE’s most visible changes was the addition of the Konqueror browser, which first appeared in KDE 2.

KDE 2.2.2 with Konqueror Browser

GNOME 2 also used a taskbar concept but split the bar into two: a taskbar at the top of the screen to launch applications and respond to desktop alerts, and a taskbar at the bottom of the page to show running applications. On my own, I referred to the two taskbars as “things you can do” (top) and “things are you doing” (bottom). In addition to the streamlined user interface, GNOME also added an updated file manager called Nautilus, developed by Eazel.

GNOME 2.6 with File Manager

Evolution of the Linux Desktop: Over time, KDE and GNOME have taken different paths. Both provide a feature-rich, robust, and modern desktop environment—but with different user interface goals. In 2011, there was a major deviation between how GNOME and KDE approached the desktop interface. KDE 4.6 (January 2011) and KDE 4.7 (July 2011) provided a more traditional desktop metaphor while continuing to rely on the taskbar concept familiar to many users. Of course, KDE saw lots of changes under the hood, but the familiar look and feel remained.

KDE 4.6

In 2011, GNOME completely changed gears with a new desktop concept. GNOME 3 aimed to create a simpler, more streamlined desktop experience, allowing users to focus on what they were working on. The taskbar disappeared, replaced by a black status bar at the top of the screen that included volume and network controls, displayed the time and battery status, and allowed users to launch new programs via a redesigned menu.

The menu was the most dramatic change. Clicking the Activities menu or moving the mouse into the Activities “hot corner” showed all open applications as separate windows. Users could also click an Applications tab from the Overview to start a new program. The Overview also provided an integrated search function.

GNOME 3 Menu and Activities 2011
GNOME 3 Window Spread 2011

Having two desktops for Linux means users have great choice. Some prefer KDE and others like GNOME. That’s fine. Pick the desktop that best suits you.

To be sure, both KDE and GNOME have fans and detractors. For example, GNOME received a fair bit of criticism for dropping the taskbar in favor of the Activities Overview. Perhaps the most well-known critic was Linus Torvalds, who loudly denounced and abandoned the new GNOME as an “unholy mess” in 2011—before moving back to GNOME two years later.

Others have made similar criticisms of GNOME 3, to the point that some developers forked the GNOME 2 source code to create the MATE desktop. MATE (which stands for MATE Advanced Traditional Environment) continues the traditional taskbar interface from GNOME 2.

GNOME 3.36 Menu Screen 2020
KDE 5.18 Desktop

Conclusion: Regardless, there’s no doubt that the two most popular Linux desktops today are KDE and GNOME. Their current versions are both very mature and packed with features. Both KDE 5.18 (2020) and GNOME 3.36 (2020) try to simplify and streamline the Linux desktop experience—but in different ways. GNOME 3.36 continues to aim for a minimal appearance, removing all distracting user interface elements so users can focus on their applications and work. KDE 5.18 takes a more conventional approach with the taskbar but has added other visual improvements and flair, especially around improved widget handling and icons. Keep in mind that you still have a lot of ways to customize your desktop based on how you would like to work. KDE desktop can be customized in so many ways that sometimes it looks very different than what the stock desktop looked like when you started the installation process. You can also customize GNOME as well via several extensions that are available for GNOME. This level of customization is practically impossible in Mac or Windows operating systems.

Customized version of KDE 5.18

At the same time, you don’t completely lose out on compatibility. Every major Linux distribution provides compatibility libraries, so you can run applications from, say, KDE while running GNOME. This is immensely useful when an application you really want to use is written for the other desktop environment—not a problem; you can run KDE applications on GNOME and vice versa.

I don’t see this changing anytime soon. And I think that’s a good thing. Healthy competition between KDE and GNOME has allowed developers in both camps to push the envelope. Whether you use KDE or GNOME, or any other desktop based on either one of them, you have a modern desktop with great integration. And above all, this means Linux has the best feature in free software: choice.

Over the years there has also been a number of other desktops and Window managers introduced to Linux. Mate ( Based on GTK 2), Deepin, Budgie, XFCE, LDQT to name a Few. Now that you know where the Linux desktop started You should look at the overview of each of the desktops to understand what will work best for you. Please see our section on how to choose a desktop that is right for you, to dive deeper into KDE, GNOME, or any of the other desktops Linux has to offer.