Void is a general purpose operating system, based on the monolithic Linux kernel. Its package system allows you to quickly install, update and remove software; software is provided in binary packages or can be built directly from sources with the help of the XBPS source packages collection.
Void Linux is one of my favourite distributions, but since it employs a rolling release model, I never really get the opportunity to highlight it. So, I’m picking this random day to talk about it.
If you’re fairly proficient in “install and go” Linux distributions like Ubuntu, Fedora, Manjaro, etc., and want to get a better insight into a Linux system without going overboard, Void is a great choice. It’s easy to install, easy to grasp and manage manually because it eschews systemd in favour of runit, it has an excellent community, and the package repository is far, far larger than you’d expect. Void also offers both GNU libc and musl versions.
Void is a bit more hands-on than e.g. Ubuntu, but not over the top like some other distributions. Setting up a Void Linux system will teach you quite a bit about how a Linux system works, but the no-nonsense, logical layout of it all means you’re not going to be overwhelmed. It also happens to be one of the few distributions that take ppc64le seriously thanks to a dedicated community, so it’s my system of choice there.
It’s not for everyone, and if you just want a no-nonsense desktop experience with minimal fuss, you’re better off with Linux Mint or Manjaro or similar systems, but if you want to get your hands a little bit dirty, you can do a lot worse than Void.
Void is the perfect middle ground between “everyday user” oriented distros like Ubuntu and Manjaro, and elitist distros like Arch and KISS Linux. You can start with one of their live DE/WM images and get a nicely configured desktop out of the box, or you can eschew that for the base installer where you can build up from a minimal but fully functional base. My DE of choice on Linux is KDE Plasma (after avoiding KDE 4.x and older over the years; Plasma is nearly perfect), so when I install Void I choose the latter and build my system exactly how I want it from the ground up.
One of the first things I do when I install a new Void system is install the base-devel, xtools, and fuzzypkg packages to get a nice CLI package management UI. There’s OctoXBPS for those who want a full GUI manager along the lines of Debian’s Synaptic, but XBPS itself is so fast and easy to use, no front-end is even necessary.
The ARM images are a nice boon too, you can choose between a ready-to-run image or a ROOTFS package for most devices.
Overall, Void is about as close as you’ll get to “classic” Linux apart from Slackware, but where Slackware gives you everything and the kitchen sink on a normal install, Void only gives you the bare minimum to get a functional and powerful system you can then tailor to your needs.
And of course, no systemd for those looking for a great distro to get away from it.
Rolling. Why’d it have to be rolling?
It’s not as bleeding edge nor cavalier as other rolling release distros like Arch. Updates to packages are vetted before release and it’s nearly impossible to break a properly configured system simply by updating via XBPS, plus it’s easy to hold back packages if you expect any issues. In that sense it’s similar to running Debian Sid which is technically “unstable” but in practice actually very stable.
I ran Arch as my main distro for a long time in the early 2010s and it broke all the time with even minor package updates. The big switch to systemd pushed me off of it entirely; even with the recommended mitigations it was too much breakage.
After this article was released, i tried voidlinux out. WOW, it is blazingly fast on my system. I went online via weechat-ncurses and asked some questions. The people in their chat #voidlinux is about the most helpful and friendly people i have ever had the pleasure to interact with. I asked about non-repo packages and got all the info i needed. Minutes later, the packages i had requested (all CLI ones) appeared in the repo.
God damn legends in that chat.
fuzzypkg author here – it’s nice to see that people are using it in the wild!
Thank you so much for creating it! It’s such a simple but powerful tool, just like Void itself.
Thom Holwerda,
Sometimes simple is better. I really like that runit stays out of the way and keeps things simple!
Yeah, there are a lot of people who want linux to be more like windows and some distros try to cater to that crowd, but not everyone appreciates that direction. Some people don’t want to get under the hood, whereas others prefer to understand how things go together so that it can be customized and improved. Personally I feel making things easy to work with under the hood is just as important as, if not more important than, the way it looks on the surface. I like the unix tradition of being built on simple yet adaptable tools. That gives us a great degree of self-sufficiency and flexibility compared to systems with more hard coded behavior. A saying comes to mind: give a man a fish, he’ll eat for a day, teach a man to fish, he’ll eat for a lifetime.
Modern linux systems like systemd are loosing this tradition to a degree. Simple tools that are easy to adapt can be more valuable in proficient hands than pretty yet convoluted tools that do their work in a ridged fashion. To be honest I haven’t found the ideal operating system yet, It’s often the mainstream distros that are driving us towards complexity., you have to look towards the fringes to find distros pushing for cleaner & simpler designs.
I’m always torn on the In-Between middle ground type desktop systems. They often suit me down to the ground, but when it’s time to deploy a solution they rarely get a run. Subject to the end use application or the end user it is either back to a bare bones server or straight to a point and click Mate Windows emulation.
But then I suppose shouldn’t expect anything else, because that is what Linux is all about, variety and lots of it!
A few years ago I finally settled on Opensuse Tumbleweed with KDE as the daily driver on my laptop. It just works after being heavily modified to suit my workflow. Btrfs for snapshots and rolling release schedule for constantly having the latest-ish stable versions of every package, thus never needing to install a new OS every couple of years.
I’ve been using and developing on various UNIX and clones since 1991 and I’m too old for faffing around with the underpinnings anymore lol
Tumbleweed should be more popular than it is. I love it
One of my hats is teaching Linux System Administration.
I’m always asked what my daily driver is and have converted a few people to Tumbleweed over the years.
Most people I recommend it to fall in love with it. 🙂