This section introduces features of Linux distros one should know, with security and privacy in mind. Here, you will learn what tells distros apart, desktop environments and packages. Installing a new OS can be a big change and you can skip this chapter if you prefer to use the tools mentioned in this guide for Windows or Mac. Even if you do not want to switch entirely, we recommend you at least try Linux out. That can be done by using a live OS CD/DVD or flash drive, which does not make any changes to your machine.
Since Linux is open-source, anyone can create a new distribution or distro for short. The Linux kernel is a blueprint that lets you create your own OS. You do not have to deal with low-level (machine code) issues as much, because those are all managed by the kernel. Developers can focus on customising their distro and designing its interface and features, e.g. security and privacy options.
All in all, Linux is just a very well designed system. All functions you can imagine are in the monolithic kernel of Linux, in the form of modules. This modular design is one of the reasons we call Linux UNIX-like, although it does not comply to UNIX standards.
Linux’ countless security modules are especially interesting for our guide. There are also some feature of the kernel that are not security-related, but cool, e.g. Linux does not save your hardware configuration to the HDD, so you can change GPU, CPU, RAM, soundcard and just turn the PC on normally. On WIndows 10, this would probably deactivate your Windows licence key or prevent the OS from starting. This is especially useful for servers, where you constantly upgrade, replace and expand hardware. After this “fun fact”, let us get right back to the distributions for desktop Linux.
Here is a family tree of all Linux distros (from “Linux distribution” on Wikipedia) that are currently on the market and also discontinued derivatives. It illustrates how diverse Linux is, but also that the hundreds of individual OSs are confusing to beginners.
The distros were not created equal. They differ vastly in their look, pre-installed software, software package management, design goals, user-friendliness and stability. Despite that, they all share the masterpiece of software that is called the Linux kernel.
A package is a “bundle” of software and resources that are used to add new programs to your distro, comparable to an EXE or MSI installer on Windows. The two biggest families of distros are Debian-Linux and RedHat/Fedora. Those are groups that many distros are built upon and share code with. They also use different software packages to install programs. DEB files are used for Debian and RPM files for RedHat Linux.
The derivatives of Debian and RedHat share the format with their parent distro, so Ubuntu or Deepin use DEB too, while CentOS, Fedora and the Slackware successor SUSE use RPM. Most popular distros are built on these 2 basic distros, which makes software development easier, but you should know that RPM and DEB are completely incompatible.
We will focus on distros that use DEB and RPM, since they are the most common, but there are many more package formats. Other examples are APK (Android, Alpine Linux), PUP/PET (Puppy Linux), Snaps (Ubuntu, Arch, Debian, many more), Flatpacks (various distros) and ebuild (Gentoo) or even TAR archives/tarballs (Slackware, Arch, others). In some distros you have to build open-source software from the source code. That is possible in all distros, using the command-line, but only in Arch, Gentoo and other “hardcore” distros, this is frequently done.
A full list of which packages each distro uses is here.
All Linux distros have the Linux kernel in common and share this fundamental part of the OS for hardware integration, drivers and so on. Despite that, they look and feel vastly different.
What you see on the screen is a GUI or desktop environment (DE). They come with their own window style, buttons, pre-installed software packages and feel. On Windows and macOS there are also desktop environments, from Windows you will know Aero (Vista/7) and Metro (8/10). The desktop environment of macOS is Aqua.
Very popular DEs on Linux are GNOME 3/GNOME Shell and KDE.
GNOME is optimized for ease of use and intuitiveness. It is one of the best desktop environments for touchscreens. KDE looks similar to Windows 7/8/10, but is the most resource-heavy of the common desktop environments. That said, KDE is one of the most customisable DEs, customisation options like themes widgets extensions wallpapers or icon packs are downloadable directly from the KDE store. In GNOME, you have to download them from websites and then manually install them, which makes customisation a bit more complicated.
On the KDE website, you can see what distros use KDE. Something we love about GNOME 3 is that it brought back the “GNOME Classic Mode” in version 3.8, which has a more traditional desktop. It is, for example, used on Tails OS, but you can get it on any distro with GNOME. A guide on the Classic Mode is here.
Officially pronounced “guh-NOME”, since GNU is pronounced “guh-NEW”, but some people prefer to call it “NOME”.
KDE and GNOME are not only DEs, they are large community projects that bring their own software universe, as well as development tools, learning resources and frameworks. You can find more on that in the official lists of KDE applications and GNOME apps.
There is even The CyGNOME project that tries to port the GNOME desktop to Windows, some GNOME apps are already available for Windows, as well as many Windows KDE applications. There are also KDE applications for macOS.
Some well-known KDE programs include KDevelop, Krita, digiKam, KColorChooser, Gwenview, Showfoto, Choqok/Kopete/Konversations (chat), KMail, Konqueror/Falkon Web Browser, KGet Download Manager, KTorrent, Ca**lligra (office suite), KAddressBook, **Kontact, KDE Partition Manager, Dolphin File Manager, Muon Package Manager and the Discover software centre.
Popular GNOME apps are Sound Juicer, Brasero, Rhythmbox, GNOME Twitch, Empathy/Fractal/Geary/Polary/Smuxi (chat), Vinaigre (remote-desktop), epiphany/Eolie (browsers), Contacts, Evince (document viewer), Calendar, Evolution (mail), Planner, GNOME LaTeX, Dictionary, GNOME Video Arcade (emulator), 2048 (game), Dia, Photos, Shotwell, Glade (UI designer), Builder/Anjuta (IDE), Publisher, GNOME Disks, Files (nautilus), Gedit, Tweaks (gnome-tweak-tool) to customise GNOME and GNOME Software (software centre).
Some distros modify their DE, like Ubuntu did with GNOME, so it looks quite different from “vanilla” GNOME. Ubuntu used its very own desktop environment Unity in the past, but the community was not very fond of it, so Canonical went back to GNOME. Unity is still available, but not maintained anymore. For Ubuntu Kylin, the Ubuntu Kylin User Interface (UKUI) was created, it is based on MATE, but looks much more modern and similar to Deepin.
There are, of course, many other DEs than KDE and GNOME. Linux Mint popularised the Cinnamon desktop, which has a Windows XP look and feel. Budgy is the default desktop of Ubuntu Budgie and has a macOS-style with a dock, while the elementaryOS DE Patheon is a complete macOS clone.
MATE is a desktop environment that was created, because many users did not like the changes made to GNOME to make it touchscreen friendly. MATE is based on GNOME 2 and a classic DE, but has support for modern Linux technologies like GTK 3. Xfce from Xubuntu, LXDE from Lubuntu before version 18.10 and LXQt, which is the current Lubuntu DE, are lightweight desktop environments. That means that they do not need many resources and run well on older hardware.
In general, distros use the GTK+ toolkit, which is known from GNOME and MATE. The modern Qt toolkit is quite rare and currently only used in KDE, Deepin and LXQt.
You may ask yourself if the choice of the DE actually matters if they are based on the same kernel. Well, it does indeed. Desktop environments have been an important component of OSs, since OSs went from text-based user interfaces to GUIs. One of the first OSs to focus on a GUI for all tasks of the OS was the 1984 original Mac OS, which popularised the GUI for things like the file manager and text editor.
Here you can see how the DEs developed and how they are related. For a detailed overview, have a look at this thread. It explains the advantages and disadvantages of the DEs and shows images of the desktops.
We will now talk about the elements that make a desktop environment what it is. A DE often contains the following components.
→ Finally, it definitely needs a GUI app to configure all these components, like a control panel or settings menu.
Something that is becoming more and more important for Linux distros is HiDPI support. High dots per inch (DPI) or high pixel density support means that it looks good on screens with a moderate size, but a very high resolution. The HiDPI support comes down to the desktop environment. On our 15’’ 4K display, most distros have tiny buttons, so that you have to come very close to the screen to see anything.
Some distros support scaling, so you can double the size of everything on the screen, while keeping the resolution. Notable DEs with good HiDPI support are Cinnamon, Unity (discontinued), Deepin, KDE Plasma and Pantheon. GNOME is good too, but only offers 100%, 200% and 300% scaling, not a customised option. KDE Plasma is definitely the best one. It lets you scale the display by a factor of 1 to 3, in steps of 0.1, which makes it simple to find the perfect configuration.
DEs that do not look good on HiDPI screens are MATE, XFCE and LXDE. The latter 2 are lightweight DEs and an old PC will probably not have a high resolution screen. LXQt from Lubuntu is actually a fantastic desktop environment for HiDPI displays, since you have countless options to change the size of menus, icons, fonts, spacing and the taskbar, without actually scaling the screen.
To get to know what some of the most used distros, programs, DEs, Linux browsers, email clients and Windows emulation methods are, go to this survey.
Unfortunately, the above survey is from 2007 and we could not find many recent ones, besides this one from FossBytes. It is a survey on Linux laptop users, so it is not representative of the entire Linux user population, but the questions the survey asked were very interesting. The survey was carried out in 2018 by Phoronix, a website that focuses on the Linux kernel, open-source software and publishes reviews.
Phoronix asked the participants questions about things like common issues, pre-installed Linux on laptops, what people usually do on their device, what they find important in a laptop, if they use a dual-boot machine, what hardware they use and of course what distro they have installed. Something that you will see from the survey on FossBytes.com is that Linux distros besides Ubuntu, Debian, Mint, Gentoo and Solus are almost irrelevant. The original survey is here.
A poll purely based on the looks of the distro can be found on Slant.co.
Read more in the second post on this topic, you can go to our page “What tells distros apart? 2 - Linux LTS Releases, Servers, Kernel“.