Some of the great GNU/Linux distributions

Published on 2020-02-09. Modified on 2022-11-01.

In my previous article titled Why you should migrate everything from Linux to BSD I stated that "BSD is the place to be". However, this doesn't mean that there aren't any good Linux distributions! On the contrary, there exist some really good Linux distributions out there where the developers and maintainers have removed all systemd dependencies, and where people are also aware of the status of the kernel development and Red Hat's and Microsoft's corporate influences in todays development of Linux - taking the control away from the community. Let's take a look at some of these great Linux distributions.

Table of contents

Artix Linux

If you love everything about Arch Linux, but don't want systemd, then Artix Linux is the right GNU/Linux distribution for you.

Artix Linux currently supports 3 different init systems OpenRC, runit and s6.

Artix Linux has a very active, welcoming, friendly and helpful community and they are looking for help.

The developers of Artix know and understand the Unix philosophy well and they try to incorporate it into the design and structure of the distribution.

I am running Artix Linux with runit and besides from the lack of systemd components you cannot notice any difference between Artix Linux and Arch Linux.

If you're not afraid of the command line, which you cannot be if you love Arch Linux, then you can even find a guide on the Artix Linux wiki about how to get Artix running on ZFS root.

Artix Linux is kinda what Arch Linux was before systemd.

Void Linux

I have previously written about Void Linux. Void Linux is a general purpose operating system and an independent Linux distribution, developed entirely by volunteers cooperating on GitHub. Void Linux is not a modification of an existing distribution.

Void's package manager xbps is the native system package manager, written from scratch with a 2-clause BSD license. It allows you to quickly install, update and remove software in your system and features detection of incompatible shared libraries and dependencies while updating or removing packages. xbps is very fast!

Void Linux has a ports like system called xbps-src. xbps-src is the xbps package builder, also written from scratch with a 2-clause BSD license. It builds software in containers through the use of Linux namespaces, providing isolation of processes and bind mounts (among others). So no root is required. xbps-src can also build natively or cross compile for the target machine, and supports multiple C libraries (glibc and musl currently).

The Void Linux project is described as a controlled anarchy.

Void Linux is a controlled anarchy. This is working as intended, and we like it this way. We've decided that it's better to have flexible workflows that can adapt to new situations as they arise rather than needing to consult detailed documentation or request authorization in advance.

Rather than determining processes for every action, we instead choose to trust our members to think on their feet and come up with reasonable solutions.

Pull requests are reviewed by different project members on GitHub. The process on how these developers became a part of the group has been documented on the website in the article The Life of a Pull Request & Where Commit Bits Come From. Information about Void's internal operations and how the project works both on a technical and human level is available on InfraDocs.

From a technical perspective, Void Linux is another great Linux distribution, but if you seek out Void Linux because you want a Linux distribution without systemd, you need to know that the Void Linux project is not hostile towards systemd. They actually used to have systemd, but removed it only because systemd doesn't support Musl. However, from what I understand, there are no future plans of going back to systemd.

Void Linux uses the runit init system.

Alpine Linux

I stumbled upon Alpine Linux back in 2014 when version 3.0 was released. I was setting up a Minecraft server for my son and a couple of his friends and decided to look for an alternative solution to FreeBSD as there where a lack of support for some of the hardware I had available.

I wanted the OS to be safer than what Debian GNU/Linux could provide and the thing that caught my attention with Alpine Linux was the fact that this great distribution was designed for security, simplicity, and efficiency.

Alpine Linux uses a hardened Linux kernel and compiles all user-space binaries as position-independent executables with stack-smashing protection.

Alpine Linux "feels" much like the BSDs because of the philosophy of simplicity that it implements. It uses the simple and lightweight, yet powerful, OpenRC as the init system and it has its own package management system called apk.

Even though Alpine Linux is designed to run from RAM it can still be installed on a physical disk and the installation procedure resembles that of OpenBSD.

Alpine Linux starts the process by booting an install or running medium from an external device, such as a CD/DVD, USB Drive, etc. Once booted Alpine Linux supports three different modes:

One of the things that I noticed right away was that Alpine Linux required less resources to run than a typical GNU/Linux distribution. We were running our headless Minecraft server on an old HP thin client with an Intel Atom processor where we had to physically cut the plastic casing in order to get a hard drive installed and working. Eventually I had to upgrade the hardware as the requirements for Minecraft modding grew :), but we ran a really nice Minecraft Cauldron server with support for both mods and plugins, and the box kept chugging along for quite some time without any problems with about 5-7 users online at the same time. This wouldn't have been possible without Alpine Linux.

As both a programmer and system administrator I really like Alpine Linux and I have been using it since then for different tasks. Alpine Linux isn't only suitable for servers or smaller devices, but can run equally well as a desktop solution.

Devuan

With the release and adoption of systemd by Red Hat, and the political maneuvering to get systemd integrated into the main GNU/Linux distributions, a great controversial arose in the Debian community in late 2014 which eventually resulted in a group of people, calling themselves "Veteran Unix Admins", announced their plans to release a systemd-free fork of Debian GNU/Linux. The result was Devuan GNU+Linux.

The purpose of the Devuan project was to "protect the freedom of its community of users and developers" by removing systemd from Debian. Furthermore the project intended to improve the existing Debian build infrastructure, reusing what worked well and removing some of the things that they considered unnecessary bloat.

Since the fork Devuan has gained a lot of attention and the project has managed to reach their goals with the release of Devuan 2.1 ASCII.

Because of the controversial nature of systemd the Devuan project has committed themselves to Init Freedom.

Init Freedom is about restoring a sane approach to PID1, one that respects diversity and freedom of choice.

Devuan with OpenRC is like the good old Debian, but with a great new init system that doesn't drag a long list of controversial feature bloat and security concerns with it, such as systemd does.

Devuan has become the Debian that Debian used to be.

MX Linux

Personally I prefer distributions that only installs a very basic system, or at least gives you the option to do so, and then you have to put the system together yourself. However, many people prefer something pre-build for the desktop and as a really good alternative to something like Ubuntu or Linux Mint is MX Linux.

MX Linux is a desktop-oriented Linux distribution based on Debian's "stable" branch, but without systemd. It is a cooperative venture between the antiX and former MEPIS Linux communities. Because MX Linux is using Xfce as it's desktop it is not only very fast, but it is also customized to look really nice.

In my tests of MX Linux the system was stable and it performed very well. It had really good hardware recognition with automatic configuration suitable for most desktop users. The MX Tools gets regular updates as do third party applications. MX Linux also comes with a build-in user manual that is also available online.

MX Linux is famous for providing great support on their very friendly forum.

I would recommend MX Linux to anyone who is looking for an alternative solution to something like Ubuntu, Fedora, or OpenSUSE.

Gentoo

Gentoo has the ability to support systemd as an option, instead of it being the single available init system implementation.

Gentoo has provided the Open Source community with many great tools, such as eudev and OpenRC. OpenRC was created by the NetBSD developer who started the Gentoo/FreeBSD project.

Gentoo is a unique GNU/Linux distribution. Because of the Portage system, which is similar to the ports system on FreeBSD, OpenBSD and NetBSD, Gentoo has near-unlimited adaptability, which is why it is also called "a metadistribution". Gentoo has about 250 active developers and many thousands of users, many which are very knowledgeable in their fields.

Gentoo has great documentation, a solid infrastructure, great release engineering, good software portability, quality assurance, security, hardening, and more.

Gentoo also has a solid project foundation in which a 7-member council is elected on a yearly basis. The council decides on global issues, policies, and advancements in the Gentoo project.

However, it is worth noting that Gentoo isn't for anyone as it isn't a binary software distribution. The source code is compiled locally according to the user's preferences and is often optimized for the specific type of computer, which can be quite time consuming. But Gentoo do provide precompiled binaries for some of the larger packages.

In the past I have used Gentoo for some very specific use cases and the distribution has never failed me.

Final comments

There are several other independent Linux distributions without systemd.

You will find that from a "day-to-day user experience point of view", once you have everything set up as you like, there is little difference and most of these distributions will solve your problems equally well. This is because we actually rarely deal with the operating system itself, we mostly deal with applications. Whether you use mpv to watch a movie on Linux or BSD makes no difference as long as you get great hardware support, the movie will play fine on both. The same goes for all other normal usages.

The most important part about using either BSD or Linux is that you get freedom, open source software and community driven development. You need to get rid of any proprietary spyware and corporate influenced agendas.

One of the major advantages of using BSD or Linux is the ability to fully understand and control what's going on on your computer and how to optimize it. If you use a "Microsoft Windows-like" distribution, such as Ubuntu, Linux Mint or Fedora, a distribution that holds your hands with everything, you wont understand anything about your system, and if some part of it fail, then you haven't got a clue on how to solve the problem. Unless you have really messed up, you should never need to do a re-install when something breaks, it is not Microsoft Windows :)

In any case, I do not recommend distributions such as Ubuntu, not even to beginners. They generally make the Linux experience miserable because they try to be everything at once, but without doing anything particularly well. The result is a bad user experience.