this post was submitted on 25 Apr 2025
1 points (100.0% liked)

Linux

9880 readers
437 users here now

A community for everything relating to the GNU/Linux operating system (except the memes!)

Also, check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 2 years ago
MODERATORS
 

It is not easy to recommend a distro, even though many people are quick to recommend one.

This is because they may not think of all the things that make up a Linux experience.

expand

â„šī¸ A Linux Distribution (short Distro) is a bundle of Linux together with many different components that make an operating system. These components include a package manager and a desktop environment. The package manager is important to guarantee that your system will work and be secure in many years. The desktop environment (short DE) is what you interact with daily. They are very different, and most DE's work on most distros.

There are many factors, and balancing between them is the only way to get the right distro for you.

After having tried a lot of them, these are the main factors I would think of, when looking for the right one for you.

🌌 Do not hesitate to try Linux! Many Distributions can be tested on a LiveUSB without installing. Depending on the amount of switching and work want to risk in the future, your decision is more or less important. Many people will try a bunch of different distros and like the experience. But if you install one for other people or a company, a good decision may be more important.

1. Desktop Environment

expandMost common distributions will ship software that you commonly use.

But the desktop environments that you use to interact with the PC are less or more supported, some distros may not offer some of them at all.

Generally, KDE Plasma and GNOME are the best, most modern, biggest communities, quickest maintenance, most features etc.

Here is how GNOME looks like:

laptop with gnome desktop

And here is KDE Plasma:

laptop with KDE Plasma

Some distros have specific support for an environment. GNOME had the reputation of being more stable than KDE Plasma, but this improved a lot. Due to this reason (and because GNOME is simpler) many distros have GNOME as "main variant"

  • Ubuntu, Debian
  • Fedora, RedHat Enterprise Linux, CentOS Stream, AlmaLinux

There are distros with KDE Plasma as main too

  • Manjaro (Arch based)
  • OpenSUSE
  • TuxedoOS (Ubuntu based)
  • SteamOS (Arch based)
  • Bazzite, Nobara (Fedora based)

KDE and GNOME are generally well supported on all bigger distros. Other desktops might differ. Fedora has a Cinnamon variant, but Linux Mint likely has better integration, presets etc.

So as a beginner, decide between GNOME and KDE, they are both nice but different.

2. Release cadence

expandThis is a big difference. On Windows you have each software release on it's own, and the desktop and OS being extremely stable, barely releasing any changes.

On Linux, traditionally you install your software from the same repositories as your main system (including kernel, core tools and desktop environment).

Though, with things like Flatpak it is possible to get all the recent apps, independently from your system).

Quick Updates

If you want up-to-date software, you often need to choose a distro with fast or rolling releases. These typically have a shorter support span, so version upgrades every 6 months or year are common.

Downsides are potentially more bugs, as the software you use is newer and less tested. But if bugs are fixed, you get those fixes faster too! You get way quicker features and many security updates not arriving in "stable/stale" distros.

Examples:

  • Arch
  • NixOS unstable
  • OpenSUSE Tumbleweed
  • Debian testing

Semi-fast:

  • Ubuntu
  • Fedora
  • OpenSUSE Slowroll

Slow, "Stable" Updates

If you prefer stability and reliable software (so that you dont need to update often, or change scripts or tools if software changes features), you should use something with long support and slow upgrades.

Note that stability is not natural to most software. Most is "released when it is ready".

  • Only very few projects release on tight schedules (like GNOME, Firefox, Thunderbird).
  • Way fewer developers "backport" all security fixes to old versions. This means they apply only the security changes to older versions, while leaving out feature changes (which could break compatibility).
  • The issue is that most developers dont have the time to adapt to adapt their software to all the different release cycles of different distributions
  • So you have potentially broken or insecure software until there is a distro upgrade

Examples:

  • Debian stable
  • Ubuntu LTS
  • OpenSUSE Leap
  • RHEL, AlmaLinux, CentOS Stream

3. Project Size And Structure

expand

Size

  1. Bigger projects (like Ubuntu, Debian, Fedora, Arch, OpenSUSE, Gentoo, NixOS) have the most software support. This becomes less relevant through technologies like Flatpak (a unified packaging format for all distros)
  2. Smaller projects (while nearly always being based on bigger ones) will often add more quality-of-life changes, customizations and features. Take Nobara, CachyOS, Garuda, Pop!_OS or Bazzite, which contain many improvements for gaming (more or less at the cost of stability).

Bigger projects are often more conservative, with a focus on stability and not changing software a lot. Depending on the distribution, you may also be able to do many changes yourself, while using a bigger one as the base.

Structure

Most Linux Distros come from a "community". This is fundamentally different from Windows, MacOS, ChromeOS or Android, which are sold products without much or any community involvement.

The projects differ in how you interact with developers, contributors and how people in the community help each other.

The "communty" is mostly never equally distributed, as most users will not contribute to the project.

Often the developers communicate on Matrix, IRC or even mailing lists, users might interact with them through bug reports.

Forums are mostly used for users to help each other, with mostly little interaction with developers due to their time being scarce.

Many free "community" distros are backed by companies, as making a distro costs a lot of money and benefits from a stable base of employed people

  • RedHat does their stable distro RHEL.
  • The "upstream" (the newer stuff that is not as tested and arrives later in RHEL) is CentOS Stream, which technically is already a community project, together with Oracle, AlmaLinux and RockyLinux contributors.
  • The upstream of that is Fedora, which is a known, free and up-to-date "community" distro. But also Fedora is built and maintained in part by RedHat employees, so this is a mix.

Other examples

  • Canonical - Ubuntu
  • SUSE - OpenSUSE, SUSE enterprise Linux
  • System76 - Pop!_OS
  • ZorinOS, EndlessOS: payment models
  • TuxedoOS - Tuxedo
  • SteamOS - Valve

Many distributions are entirely community based, like Debian, Arch or Gentoo.

Some have slight company involvement, like NixOS.

4. Software Modifications and Additions

expandDistros differ in how the projects modify the software they ship.

Some may focus on fast updates and little modifications, like Fedora, Arch or others.

Others like Ubuntu might add a completely custom theme, font, iconset and other extensions (they do that to the main Ubuntu variant, but Kubuntu, Xubuntu, Lubuntu are also all customized).

Some distros might change software, like Fedora or Debian who only ship free software (software that respects users freedoms).

â„šī¸ Example: Debian modified Firefox in the past, to remove antifeatures, which resulted in a ban to use the name. They used "Icecat" instead, but nowadays they ship regular Firefox again.

The Linux Desktop is only somewhat standardized through organizations like Freedesktop.org, who host

  • (flatpak](https://flatpak.org/), a technology to ship apps to all distros, while also using an Android-like sandboxing system.
  • portals that allow applications to access system components while asking users
  • Wayland, a display and input/output technology that all modern desktops and toolkits use

Examples of differences

  • Fedora and Ubuntu use different tools for power management.
  • Most distros use systemd, a useful system management tool. Some criticise it for being too big and doing too much. Very few distros do not use it, at the cost of missing features and requiring more experienced users.
  • Ubuntu uses Snap for their packages, most other distros use Flatpak.
  • All distros have their own native packages, but there are a ton of different package formats and rules.

5. Deployment Model

expand

This describes how a distribution is installed and updates.

Installation

Distros are mostly installed the same way: you flash an .iso to a pendrive, run a graphical installer, select between more or less options, and get the thing.

Some may not have a graphical (GUI) installer but a terminal based one.

Many advanced distros like Arch, Gentoo or NixOS direct you to a wiki, where you learn the steps you need to setup the system you want. This is a great learning opportunity, but may require some time.

If you want to install a more complex distro, maybe you find someone to help you with the setup!

Software installs and updates.

Keywords:

  • learning curve
  • stability over time

Unlike Windows, software shoulf always be done through package managers.

âš ī¸ Do not go in the browser and get random installers. These might exist, and there are "Appimages" which allow developers to package their software that way. But the install method is insecure!

While it may seem similar to Windows, MacOS or Android, those operating systems include verification checks, antivirus and permission systems that can stop a lot of malware. Linux does not have this, as repositories are the intended way to install things (where those checks exist).

There is a difference how the software is placed and managed on the system. Most distros are "chaotic" and imperative: You write...

sudo apt install libreoffice

...and the package manager searches the repositories, gets the files and places them somewhere.

Over time, "state" builds up. This is the amount of changes on your system compared with how it was at the beginning.

The graph from this master thesis describes this process, called "Divergent".

You enter that command, and the package manager not only installs Libreoffice but also many dependencies.

Convergent

There are many tools that try to tackle the resulting "chaos".

They try to make the setup of your system faster and more reliable.

What happens if your PC breaks down, or you needed to configure your exact setup on 10 different laptops?

The most common tool is Ansible, which is described as "Convergent" on the graph. The system is a chaos, but the more you configure and "fixate" through Ansible, the easier it gets to reproduce.

Image-based

There is a wave of new "immutable" distros, that try to solve this issue:

Oh when you open the app XYZ it crashes? Well, it works on my machine...

They do that by either preventing you to change the core system at all, or always keeping track of the default setup, where your changes are just an overlay on top of it.

This model works for many use cases, as with Flatpak, Homebrew and other ways you can install your softwate pretty normally.

You will not need to worry about the base system not being able to upgrade, or break in other ways.

Deterministic

Systems like NixOS are deterministic instead of imperative.

To install software, you write down what you want into a file, and the management tool reads it, checks it for errors and builds the system that way.

The graph describes this as "congruent". At the beginning your system is very simple. The more you configure, the more complex it gets.

These distros are perfect for more experienced users who want a stable and reproducible system (i.e. when it breaks they know where the error is and how to revert it).

Coming from regular chaotic distros and then an "immutable" distro, this is honestly pretty great.

While the learning curve might be a little bigger, you can easily check what you changed on the system, allowing you to fix breakages insteaf of reinstalling every year.

Everything is configured in a single – or a few – files. You can take these and recreate your system anywhere

If your PC breaks, and you have your data, it takes a few minutes and you have your system back!

You can find a lot of configs on the internet, here is mine, where I try to visualize the different levels of complexity, starting with a very simple system.

Conclusions

expandDone! So these are the points you need to keep in mind when choosing a distro. Yes it is a lot, but depending on your goal, it might be an important decision.

Do not just go to distrowatch or other random places and install what is hyped the most.

Examples for logical fallacies of "this distro is the best for beginners"

  • Ubuntu has a big community, good software support and is easy to install. But personally I had maany issues with it over time and upgrading it. They also have a lot of biased choices and modifications. Their snap store is not what any other distro uses (but they have flatpak support), they theme the desktop and break some functionality, ...
  • Fedora also has a big community (and a nice one!), an easy installation and stays with standards more. Their model of "immutable" (i.e. managed) systems is among the best. Meanwhile the traditional variants usinf the dnf package manager are a total mess. I had many extremely complicated and undocumented issues when upgrading and having issues. Also, if you want a congruent, long-time-stable system, it is kinda annoying.
  • "Linux Mint is userfriendly" is not completely true. They do good work, but the project is very small compared to it's userbase, they build their own desktop environment that struggles to be up-to-date. They dont use modern design choices like well working automatic upgrades, leading many people to never update their systems. While many users may use it for very simple tasks, it's package based nature doesn't make it very suited for simple "install and forget" installs.

The "most beginner friendly distro" is not always the one that is quickest to install and easiest to use.


There are some points missing which I plan to include

  • differentiation between desktop environments
  • security
  • update behavior
no comments (yet)
sorted by: hot top controversial new old
there doesn't seem to be anything here