Skip to content

Instantly share code, notes, and snippets.

@x86-39
Last active June 30, 2021 02:59
Show Gist options
  • Save x86-39/9d00ebb4e3dae997448f940158cc18b5 to your computer and use it in GitHub Desktop.
Save x86-39/9d00ebb4e3dae997448f940158cc18b5 to your computer and use it in GitHub Desktop.
Linux Distro Recommendations & Notes

Linux Distros

Desktop

Ubuntu
= GNOME desktop installed by default
(+) Is almost always supported, very widespread
(+) Pretty easy to get started with
(+) Feels polished and stable
(-) Pretty bloated with stuff you probably won't use
(-) Snaps are slow and forced on you
(-) Outdated packages (LTS, don't go with the in between releases, they don't have any of the 3 pros i mentioned)

KDE Neon
= KDE Plasma desktop installed by default
(+) Uses Ubuntu LTS base, meaning it is stable and has great support
(+) KDE apps operate on a rolling release
(+) Lightweight install, but has the essentials
(-) Differs from Ubuntu configuration, can cause issues when tinkering with more advanced features

Fedora
= GNOME desktop installed by default, KDE Plasma option available
(+) Great for developers
(+) Pretty good support because of the last point
(+) Frequent new stable releases, software is never too out of date
(+) Often one of the first distros to get new nifty features
(-) The package manager DNF is not easy for beginners, and it won't always be mentioned in guides since it is fairly new
(-) Pretty cool defaults, but they differ from the norm so this could be disadvantageous to newcomers

OpenSUSE (There's Leap, the LTS and Tumbleweed, the Rolling Release)
= Prompts for desktop at install, options are GNOME, KDE and XFCE, but you can skip it and install any if you wish
(+) Leap is a stable release and is low maintenance
(+) Tumbleweed is rolling release like Arch, but easy to install. Very frequent updates
(+) YaST is a great config & logging utility
(+) Zypper is one of the best package managers I've used
(+) Very flexible and easy to configure
(-) Often times not supported. The repository mostly only has open source programs. It uses the same package format as Fedora (RPM), but does not have the same package names. It is possible to force a Fedora package to work, but not recommended and will be manual.
(-) Very bulky install. Comes with a lot of programs installed by default. This also means that if you go with tumbleweed, you'll have a lot of updates.

Arch
= Arch is very customisable and basically every desktop is available for it
(+) Very customisable, you can choose what to install and configure it for yourself
(+) Package manager is very quick
(+) The repositories are vast and include a lot of packages
(+) The Arch User Repository includes many 3rd party apps, while Arch support might not always be official, it is almost always available in some form
(-) Not suited for beginners, the install process is manual and Arch is not graphical by default
(-) Upgrades sometimes require manual intervention, you will need to read the site frequently
(-) Frequent dependency resolution problems which require manual intervention

Gentoo
= By far the most customisable Linux distro not counting LFS. Everything is customisable, desktop is just the tip of the iceberg. Gentoo is a source based distro and rarely provides binary packages
(+) Incredibly customisable, everything is at your control, from the init system to the desktop
(+) USE flags allow you to cut down unneeded parts of a program, this potentially makes them noticably faster
(+) Kernel can easily be configured manually, if done properly this can speed up the boot process and other programs dramatically
(+) Testing versions of programs are usually updated quickly
(-) By far the hardest Linux distro to use, everything is manual, this is not for novices
(-) The repository is fairly limited, and you will likely need to add your own overlays or write custom ebuilds for packages
(-) Depedency resolution can be difficult. USE flags make this much more complicated, and will often require manual intervention which is hard to learn
(-) Installing packages can take an incredibly long time because they need to be compiled. On older hardware installing a desktop can take as much as 24 hours, or more
(-) Updates for 3rd party apps are frequently very outdated, requiring you to add more overlays or write your own ebuilds

Server

Ubuntu Server 20.04
(+) Easy future upgrades
(+) Large selection of server software
(+) Incredibly easy to get started with, intuitive interfaces
(+) Free
(-) Snaps feel like they're forced on you

Debian
(+) Easy to use
(+) Low maintenance
(+) Free
(+) Great 3rd party support
(+) Pretty stable, quick to get security patches
(-) Software is often very out of date, moreso than other LTS distributions
(-) Often requires 3rd party repositories

RedHat Enterprise
(+) The biggest player in the game, great support for everything
(+) Very stable, it is made for enterprise use after all
(+) RedHat portal provides access to a feed of updates & security notices (Which are received quickly)
(+) Great recommended defaults
(-) Only free for up to 16 devices (This is new, since CentOS got killed they replaced it with this free plan)
(-) Not easy to use, requires prior knowledge

OpenSUSE Leap
(+) YaST is a great configuration utility for servers too, not just desktops
(+) Free (In contrast to SUSE Enterprise)
(+) YaST also helps with troubleshooting
(-) You will often need to add additional repositories, if they even exist. OpenSUSE is by far the worst supported by 3rd party apps

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment