loading...

Which Linux Desktop Environment will be the best for you?

imtiazsakib profile image Nazmus Sakib Updated on ・4 min read

Right after you have chosen your Linux distribution, the very next question comes to your mind is what desktop environment am I going to use? This was not a problem if you have used windows or mac, you do not have the choice at all! Linux gives you the freedom and the sweet trouble of which one to choose. Let’s see if we can help you here.

One thing we need to clarify before we proceed, not all desktop environments will work out of the box in all distribution. Why?? Because sometimes developers do not target all distributions and skip testing on distros other than their selected few. For example, Cinnamon is only supported on Linux mint. That does not mean you can not make that DE work on your non-mint system. Most probably you can, but you may need to go through additional pain to fix things if any trouble arises.

Okay, enough talking.

Gnome

Gnome does not have the most extensive set of features, but that’s not its goal. Gnome wants to keep it's feature-set small but solid. It is most widely chosen as the primary DE among distributions because of this. It has a very large flock of developers supporting it. Its features can be extended easily by thousands of extensions. Its easy for developers to write these extensions with the help of the great API & documentation gnome provides. You can’t go wrong with gnome.

Pros

  • Stable, robust, rock-solid
  • Thousands of extensions
  • Official support from distros
  • Large developer base
  • Minimal, unobtrusive design
  • Wayland Support

Cons

  • Fewer features, less customizability
  • Extensions are not of good quality. Fails too often.
  • Poor workspace management
  • Resource hungry

KDE Plasma

KDE has tons of features on the contrary. Not only it provides the DE, it provides many softwares as well which suits best only on KDE (for example, KDE connect). while it has its pros on customizability and feature-set, it did not feel that stable to me like many others. The code-base is old and hard to maintain, as complained by many. It is also a bit heavier than most others.

[Edit]

KDE plasma has improved a lot over the past year. I can't complain it's 'heavy' anymore. Plasma fans have fried me down there in the comment section with some very valid statements. Kudos KDE for the revamped plasma!

Pros

  • HUGE feature-set
  • Large developer base
  • KDE softwares
  • More Customizable
  • Wayland Support

Cons

  • Not so robust
  • May seem cluttered and distracting to many

XFCE

It looks old and boring, honestly. Fortunately, it's only when you first unpack it. You can customize it to your heart’s content. The look, the feel & the behavior. XFCE is very efficient in using resources. You can expect solid, robust performance although it is maintained by only a handful of developers. If you have a low spec system, XFCE can be your friend. I have seen many high spec folks using XFCE because they like the efficiency and no-bullshit principle of XFCE

Pros

  • Fast, Efficient on resources
  • Customizability
  • Good workspace management

Cons

  • Old school design out of the box
  • Slow development
  • No real sign of Wayland support

Mate

Gnome took some radical decisions when they upgraded from Gnome 2 to Gnome 3. Many gnome developers and fans did not like the move at all. They decided to take the existing codes of Gnome 2 and keep making it awesome in their way. Mate is the end result. It does not have that many extensions like Gnome 3. But it's fast, simple, customizable and robust.

Pros

  • Many active developers
  • Very easy to customize
  • Simple, lightweight, fast
  • Robust and stable experience

Cons

  • Slow to pick up trends
  • Conservative principles to hold on Gnome-2 like experience
  • Looks and feels old by default
  • No Wayland support yet

Cinnamon

There are many Windows refugees out there in Linux world. Many of them prefer a Windows-like look and feel in their desktop environment. Cinnamon can be the way to go. It's also a child of the mighty Gnome DE. Unlike MATE, it is born from Gnome 3 (MATE is a fork of Gnome-2).

Pros

  • Windows look & feel
  • Nice UI, theming
  • More modern fork of Gnome
  • Fairly Customizable

Cons

  • Not that robust
  • Only supported on Linux mint
  • Sometimes buggy

i3

A Desktop environment mainly consists of a window manager, panels, menu, system tray, launcher and so on. I3 is not a full desktop environment. It is basically a window manager with a bit of panel support. Unlike the DE’s that we have discussed already, this one does not have a floating window manager. This is a tiling window manager which can provide a very fast workflow for power users. Many former DE users moved to such tiling window managers and you can try one too!

Pros

  • Crazy fast workflow
  • No need for mouse 90% of the time
  • Extremely customizable
  • Configuration (aka rice) can be replicated easily

Cons

  • Difficult for beginners
  • Hard to set up as a full DE
  • Panels, menu, system tray set up can be hard

[Edit]

There are other DEs worth mentioning, like Budgie. And if you like an window manager like i3, openbox is another big name to try out. However, I haven't personally tried these so not commenting too much on them. However, do check out the comment section to read other people's experiences!

Posted on by:

Discussion

markdown guide
 

i3 isn't a desktop environment. It's a window manager. You can use i3 on top of Gnome or KDE to replace the current window manager.

 

Technically true, but can be used instead a full blown DE.
I use i3wm without any DE and find it extremely enjoyable.

 

Yeah I mentioned that though. I tried to use i3 on top of Gnome but couldn't find a proper solution that works seamlessly. have you tried?

 

Try Regolith, this is an easy start for i3...

 

I tried i3-gnome-flashback a while back and it worked pretty well: github.com/deuill/i3-gnome-flashback.

 

Xfce was the one i got to play best with x-server when trying to make my WSL-launched apps look and act like native Windows apps. Also the one that worked best when I tried running a VirtualBox linux vm in desktop-integrated mode. Probably something to do with how square and shadowless their themes are: Other Desktop Environment themes all had this huge window shadow margin that follows the Linux-rendered UI into Windows' viewport and I found no way to completely turn it off. Some environments couldn't run with VirtualBox's integrated-desktop mode at all. And panel-based window manager DE's was useless when what I wanted was to make linux GUI apps run seamless with Windows desktops. So kfce won that one, twice (virtualbox and WSL).

Unfortunately I have a habit of, when I finally get my Linux setup perfectly, to eventually break the desktop environment and giving up on fixing it again.

 

Re: the big shadow is part of the composite manager. I'm not sure what's the XFCE default, I use picom (a.k.a Compton) which is highly customizable. You can remove the shadow and effects specific by window or window class.

 

TIL. Thanks, I gotta take a look at this the next time I try Linux again.

 

Oh I do it every time. Launch WSL > launch XFCE4 Panel. The rest of the Linux stuff is managed by launching apps from panel. I like XFCE Terminal because it has clickable links and text do not break on resizing the window.

 

haha I would use a backup tool like timeshift though. Maybe you should too!

 

KDE is not resource hungry at all. It uses less than 0.5 GB right after booting.

 

I think this is some leftover stigma from the early KDE 4 days, it's surprising how lightweight it is now.

 

Sorry, I haven't used KDE things in 2019. I've edited that part, thanks for correcting me!

 

I find not just cinnamon but mate and budgie and xfce and lxde all are very Windows friendly. I never understood why cinnamon was always the one people say is for Windows people. Maybe because Windows people are used to crashing. That's the only thing I can think of as to why only cinnamon is usually recomendef

 

we can say this to Gnome also. Windows guys like Zorin's look & feel a lot, that's Gnome !! Cinnamon Looks good out of the box, unlike XFCE/LXDE cinnamon. I think we can't expect new windows refugees to be comfortable in ricing their DE.

 

I think it's just that Cinnamon is the default on Mint and Mint is the common disto recommended for new Linux users who are used to Windows.

 

Is this still true? I haven't seen this recommendation made very often anymore

I've been doing lots of distro searching the last few weeks, just debating on upgrading Ubuntu 18.04 or using something newer (on my daily driver). I have a 2nd laptop I use sometimes that I try different distros on for curiosity sake.

Seemingly every list I see has Mint at or near the top for new users. But I think to your point, no, it's not the default recommendation anymore. I guess we're past the point of having one good beginner distro and there are a few good options.

Ya lot of things have changed actually, & distros are more usable & newbie-friendly than ever. Who thought people will suggest Arch-based distro to newbies! Now I do recommend Manjaro!

 

I love XFCE.

I used to use a fresh installation of Arch without a real DE, just running i3. But I noticed my setup lacked a lot of useful stuff that I wanted to have (specially in laptops). Played with gnome-session, no good and a lot of stuff I didn't want. When I moved out from i3 to EXWM (Emacs X Window Manager) I noticed I really needed the benefits of a desktop environment and that's where I first tried XFCE.

Good thing is all the XFCE cons on this post don't matter to me.

  • Old school design it's pretty much my design of choice (I don't see it because I just run Emacs, but Emacs has an old school design too).
  • Slow development is fine for me since most of the things I do are still done outside the DE configurations, but I have access to the session manager and power management.
  • No Wayland support: EXWM doesn't have Wayland support either.

Good post though, I noticed I also played with every single one of them. Now I'm more stable with my choices.

 

This "KDE" analysis is highly questionable. First of all, KDE is not a desktop environment but a community. The desktop environment produced by KDE is called Plasma. The KDE Software that is mentioned (including KDE Connect) is completely independent from Plasma. In fact, lots of KDE Applications also run on Windows, macOS or Android. Also the claim that the KDE codebase is old and thus hard to maintain is questionable. It's true that some of the code dates back to the early days of KDE 20 years ago, but with very few exceptions maintainability is not a problem. Many parts of the software are very much younger even. GNOME is not much younger than KDE, but here there is no such claim at all. Furthermore, claiming that Plasma is particularly "heavy" is not true at all. In fact it's much more performant than GNOME shell and on par with the other mentioned desktop environments (well, except for i3, which is not really a desktop environment)

 

Originally, KDE was an acronym for K Desktop Environment, but I guess that's gone the way of Kentucky Fried Chicken and International House of Pancakes.

 

i am fan of linux from i was in first year of college. At that time i bought new HP laptop which came with preinstalled windows and i tried to install linux and formatted my whole system 😂😂 and i know it crazy..... i did lots of stuff after that my journey begins with this....... now almost 6 years i'm using linux. i have used many desktop environment with many linux distribution. my personal choice is KDE. 😍😍 i really love it.

 

The question I have is how do you write your own desktop? Give an example, electron for node.js based desktop

 

ya, Unfortunately, I haven't seen too many performant softwares written in electron(except VScode & handful others). May not be a good idea!

 

Depends what you mean by perfomant, I had the idea of writing most of the backend in rust with wasm. If electron is out then thier may be lighter alternatives.

WASM can be multithreaded also if that was a concern, plus FS is exposed from libc if used in node context. In other words I think it might actually now be a realistic premise.

 

I'm not sure a JS based DE is a good idea. Almost all DEs are written in C(++). I have no experience myself but I reckon JS would be too slow.

 

Yeah I didn't plan to write the logic in anything other than web assembly.

 

For me, Gnome is it. I just keep going back to it and it's what I will recommend to friends, family or anyone interested. Gnome has become so mature that I no longer theme it outside of changing to icon set (currently rocking Newaita icons). Gnome is, for the most part, has the right amount of customization options, simplicity and beauty and nothing else really does that for me. Of course there is room for improvement but there is also time for improvement. I'm excited to see where the Gnome team takes this experience.

 

When was the last time you used plasma? It literally uses the same amount of memory as xfce which is around 300-400mb on a cold boot
Most of the desktop plasma components are fully QT5,by old codebase you mean the apps under KDE?

 

Yes, I havent used KDE things in 2019. I've edited that part, thanks for correcting me!

 

Deepin Desktop Environment is worth a mention here. It is the most visually appealing DE like MacOS and is very Windows like functional wise. In my hypothetical Venn diagram, DDE stands in the middle of newbies, beautiful and shocked-by-KDE's-customisations.

 

Thank you it was very interesting !
Do you plan to write an article similar to this one but with Linux distributions please ? :D

 

They are all more identical than people make them out to believe, in my opinion at least. I use Debian on servers because it is solid and reliable and I know it well, and I just put Manjaro on a HP Spectre I was about to throw against the wall; we will see how that goes.

Stick to something mainstream unless you have specific needs. You'll be able to get better support. Most distros allow you to create a Live USB stick so you can boot it up and play around and quickly veto it.

 
 

TLDR: If you're a developer maintaining a sophisticated development stack, better stick to Ubuntu. If you are not, try experimenting with all the top distros in distrowatch until you realize you want to stick with Manjaro ;)

kidding, you can't go wrong with any of the big names actually. keep exploring!

 

Haha yes you're right I will need to try all these distros :D

 

I do recommend Budgie. It is built for desktop users. 🙂

Very light, snappy. Simple yet elegant.

 

It depends on preference and use case. I use Pop!_OS, which is also built specifically for desktop and lets you install your choice of DE (after install), but it had some QoL features that are built directly into GNOME shell as extensions and not available in other DEs

 

You seem to be mistaking an OS for a DE. Pop is an (Ubuntu based) OS. Nearly all Ubuntu based OS's can support various DE's.

 
 
 

my fav is linux lite os [linuxliteos.com/] which is a mashup of LX and XFCE desktop apps

 

you can install cinamon de to ubuntu or its derivatives

 
 

Gives the idea for biginners to which DE should be choosen.

 

I think cinnamon is the best here. I have configured on centos 7

 
 

If i3 deserves a mention then so does openbox!

 

yeah, but I haven't tried Openbox myself. I should put this in honorable mentions

 

I've tried everything on that list for several months each, definitely KDE Plasma (in KDE Neon)

 
 

One type of user that is often ignored in DE analisys are the notebook/laptop users. The only good evaluation on DEs power usage, thermal issues I have ever found are the ones at Phoronix site...

 
 

Just want to add Peppermint OS which is new. I have been testing it for a couple of weeks. I'm very impressed with it for now. Really fast! Seems solid and stable.

 

I'm surprised they didn't mention fluxbox. Sure it's ugly but it's about the only wm that I can get working on my termux install via vnc or xserver. Openbox just displays tofu on me.

 

The time you spend setting up i3 isn't a waste trust me, after setting it up you will save a whole lot of time and you will keep your sanity switching between windows

 

"Windows refugees" haha. Getting people to come linux side is quite hard. I drifted to linux 2years ago when I started coding. Ubuntu then debian with gnome. Now on buster feeling quite at home.

 

I drifted to Linux in much the same way. Started coding, discovered how natural linux feels for development. I started on ubuntu, and somehow managed to bump into Arch. Got tired of issues with a regular Arch installation and decided to try Manjaro. Chose the KDE, and honestly its so natural to use. For a time I was dual booting it and Win10, until I realized I spent next to no time on Windows. Wine is fantastic nowadays, much better than my first attempt to get into linux, and gaming on linux is beyond amazing. I have absolutely no plans to go back to Windows, Manjaro KDE feels better than home. The only thing that is slightly inhibiting is the lack of an easy way to manage keybindings and such to extra keyboard/mouse keys. Nothing that cant be solved, though! Slowly learning how to use Linux as efficiently as I knew on Windows, and discovering that its so much more convenient