Why Arch Linux
I moved to Arch Linux in 2020. This was after trying various Linux distros. Starting with Gentoo, and into Fedora, CentOS, Ubuntu, and Debian. These distros are all generally good for different reasons.
Gentoo
Gentoo was my first Linux distro. Known as a more difficult distribution. You will need to compile every software when using the Portage system. There seems to be some binary distributions available, but this is not the main way of installing software. This can mean installing can take many hours of heavy CPU work to get many things installed and running.
The benefit of compiling from source is that you will get a build that optimizes itself for your specific arrangement of hardware. All possible optimizations are extracted.
Fedora/CentOS
I did not spent enough time with Fedora or CentOS to really lay down any true opinions. CentOS was used in various servers I was using and Fedora aligns with a desktop level OS. Seemingly fine and good.
Debian
Debian is known for being stable. Stable in ways that it can be a long time before packages will be updated. This makes it good for servers where your supported software needs to work for a long time, with security and other necessary updates backported to older versions.
Because of this slow moving, stability focus, it can make it frustrating if you are utilizing more updated software. Compromises will be necessary.
Ubuntu
Ubuntu is generally based on Debian but has more updated packages with some security backporting. Also has support for PPA (personal package archive) which allows you to create packages and distribute them utilizing the built in package systems. This allows you to utilize much more updated packages with possibly vendor ran updates and security patches for LTS releases.
Ubuntu felt good to use. Sticking to LTS releases of the distro means you will be able to get updates for the packages for a good amount of time into the future.
Arch Linux
Arch Linux was introduced to me through memes and jokes. I did not grasp why one would want to use it, and there were a lot of distributions. Why use Arch Linux over any other distribution? Plus I enjoyed playing video games, enjoy up to date software, and trying new things the second they are released. These reasons made it difficult to use any Linux distribution in the past without requiring a lot of complicating compiling steps through READMEs and figuring out how different build processes worked.
Arch Linux was the distribution that I needed. I didn’t realize it until I ran
through the process of installing through a process on the Arch Wiki. You are
dropped in to a bare bones Linux OS. Arch Linux comes with systemd
(alternatively Artix is a more bare bones without systemd), the Linux Kernel and
the Arch package manager pacman
.
You are left in the frame buffer without much to utilize. The suggestions in the Arch Wiki get you far enough to setup the networking, display drivers, and through that show you how to install packages. These packages are on a rolling release so they will be as up to date as possible.
With this landing point, you need to make decisions on what packages you will require. This decision process allows you to make a very custom setup with the software you want to use. This can make it difficult to get into as you need to decide on what software would even allow you to do what you want to do. You need some of the terminology to discover these things. This is where having some knowledge or others with knowledge to bounce your goals off of.
With these choices we can then make deliberate choices of how we want it to work, with these choices reinforced by having to manually configure these one at a time and not given a lot of different things to learn at once. If patient, we can effectively grasp the knowledge to control these software choices. The Arch Wiki helps in the discovery process for these software choices, with giving various idea’s on how to configure common processes and debugging issues we may find.
Once setup you will now be in the rolling release phase of Arch Linux where you will be getting rolling updated packages. This is a foot gun in some ways because it can prevent you from things working the same way all the time. Packages might get updated to huge version changes that may require configuration or usage changes. These can break functionality in how things work. This can be difficult to work around.
With a rolling release you get access to the most updated packages and forced to
keep things updated. This may work OK. If you need a certain version of software
to run your code or software, suggested to use containers or other software
version managers like pyenv
, nvm
, rvm
and others.
Arch Linux also supports a user repository of packages that are made to support
software not officially released by Arch Linux pacman
. This generally means
you will be able to get a wide range of software that can be updated
programmatically and through similar interfaces for software releases.
Conclusion
I have enjoyed all the parts of Arch Linux. The rolling release is generally a positive, with workarounds generally a good excuse to learn how to properly encapsulate software that I use for work and play.
Making choices on the software I want to use, and be given the guidance through the wiki has been enough to understand how to weld the power. I can chose to drop any software to try another without having to compromise. This flexibility for me means I am able to try new things very quickly. Allows me to stay on the cutting-edge while giving me enough support to remain effective.
Arch Linux is both easy to use and easy to master. But it requires some determination, a desire to make your own choices. Some patience when the these dependencies break the software due to updates. But with these you get control over your operating system. You make the choices that matter to you.