Arch Linux turns 20: Small, simple, great documentation
DIY distro might not be the best place to start, but you'll learn buckets using it
Arch Linux, arguably the most widely known rolling-release distribution, just celebrated its 20th anniversary. The project has commemorated its first public release, 0.1, with a snapshot of its original homepage.
A few years back, The Reg looked at "the last refuge of the DIY Linux user" and liked it. Arch has several virtues that have helped it to survive and quietly thrive, largely out of the limelight.
The first thing that strikes a new Arch user is that there's no installation program: the installation disk just boots to a command prompt. There is in fact an installer, but it's not the default method. The best way is just to follow the documentation, which walks you through the process of creating partitions, installing the OS, installing a bootloader, and configuring it.
The documentation is exceptionally good. Even speaking as someone who spent years writing Linux documentation for a living, the Arch wiki is some of the best, most thorough, and comprehensive documentation in the industry. The professionals writing the docs for various enterprise Linux distros often end up looking things up on the Arch wiki. (Don't ask me how I know, I just know, OK?)
The installation process, and the documentation behind it, lead to the third virtue: a complete installation tends to be very small and simple, because you only install the bits you need. If you don't know what bits you need, the documentation will help you to work it out, and the result is something that is both fairly minimal and that, with luck, you understand. You know what's in there because you installed it.
Which means that, no, this is not an OS for your grandma – unless your grandma is already a techie, which does happen – but it's a great learning tool. I would hesitate to recommend Arch as someone's first ever contact with Linux, but if you are a Reg reader, you probably have a clue, and as such, you can work this out… and you will understand the result better than an Ubuntu installation, or a remix of Ubuntu. Start with Ubuntu or Mint, try a few desktops in VMs, find some combination that you like, and then rebuild it in Arch.
Unlike Gentoo, you don't need to compile everything, so it doesn't take a long time. Unlike Linux from Scratch, the result is a fully functional OS with a package manager, so you can keep it up to date with little effort. (Although as your skills develop, LFS is an excellent next step.)
Being a rolling-release distro, you always get pretty much the latest versions of everything. The distro's maintainers don't modify its components substantially, so you get plain vanilla versions, which makes troubleshooting easier.
The only downside I personally have experienced with Arch is that if it isn't your primary OS and you don't use it very often, it can be tricky to update a very old installation, because so much has changed.
Arch wasn't the first rolling-release distro – that was arguably Gentoo, founded in 2000 – but arguably, all the very early distros were to some extent. It's not a completely from-scratch project – it was inspired by Crux Linux, which is still around. There are newer rolling-release distros – notably openSUSE Tumbleweed, first released in 2014.
Arch has survived and prospered, and what marks it out and makes it worth your time is the combination of simplicity, small size, great documentation, and the understanding that results from building your own OS. It isn't an ideal server OS, although some people do run it in production.
Yes, sure, if you just have a job to do and don't want to take the time, pick a distro that's more stable and slower-moving. If you want an installation program and sensible defaults, plus a little more integration, then the Arch derivatives can help. If you want that plus integrated snapshots and rollback, and a handy system-wide admin tool, openSUSE Tumbleweed delivers that.
The thing that distinguishes Linux from other free Unix-related OSes such as FreeBSD is that Linux isn't a single piece of software from a single team. It's many hundreds of separate pieces of software, flying in very close formation – and all of them are developed on their own separate schedules. Bringing these together into a unified whole is what distributions do.
- OpenZFS 2.1.3 bugfix brings compatibility with Linux 5.16
- 12-year-old revives Unity desktop, develops software repo client, builds gaming environment for Ubuntu...
- Progress report: Asahi Linux brings forth a usable basic desktop on Apple's M1
- Snakes on a wane: Python 2 development is finally frozen in time, version 3 slithers on
It is also what DevOps teams do, and this is the nature of running a modern production system on open-source software. I would not tell my DevOps people to run production servers on Arch, but I certainly would expect each of them to be able to install an Arch system and get it up and running inside an hour. If you're not there yet but want to be, Arch is a great way to build those skills. If you want to understand what your team's doing, Arch is a great way to learn. If you want to get to know newer versions of components, Arch is quite good for that, too.
What keeps paid-for enterprise distros making money is mostly large teams of developers back-porting security fixes to old versions of all their various components, so you don't have to handle the integration work of keeping different versions of unrelated products working together. But somebody does, and they have to learn somewhere. That is where Arch scores.
Eric Raymond said of the Lisp programming language:
LISP is worth learning for a different reason – the profound enlightenment experience you will have when you finally get it. That experience will make you a better programmer for the rest of your days, even if you never actually use LISP itself a lot.
Arch Linux is a little like that. That's why it has survived for two decades, and long may it continue. ®