Enter The Void - (of software)

Booglejr | 12/24/2019
Enter The Void - (of software)

So why Void Linux? This is a question I haven't really yet answered for myself. Allow me to explain, you see when it comes to Linux you have: stable distros, bleeding edge distros, developer distros, and niche distros. The interesting thing is, I can't figure out where Void Linux fits. It feels like an almagamation of all and none of them at the same time. But let's get started with my experience and maybe you can decide for yourself. In the mean time, I will try to compare this distro to Arch because it feels the most similiar.


The installer is a bit more intuitive than Arch Linux. Well mostly, because there is an installer (and a live desktop distro). That said, it is a pain. If you incorrectly set mount points in the CLI installer you cannot unset them. There is simply no way, not without deleting the installer preferences or by restarting the entire live image. Either way, the experience is a tad better than the experience with installing Arch.

Using Void:

So, after installing Void, it seems to work well enough. Unless you are on a HiDPI screen, but that is understandable many distros fault here. In general it seems fairly stable. So let's try installing packages. XBPS is the Void Package manager and it is written from scratch. I must give the devs credit it works pretty well. But there is an apalling lack of useful software in the repos. Yes, the stuff that everyone uses is in there, but there is simply no niche software e.g. netbeans or a specialised eclipse (for Rust Devs, for C/C++ devs). And nothing like the AUR (Arch User Repository) exists to enable this ability. This is a major pitfall for Void. I think this issue will resolve itself in time, but for now unless it is popular software you won't be installing it. For example VS Code is in the repos, but for some reason Discord isn't. At this point, a user familiar with Void would say 'Well, if you could get it running we could package it and incorporate it.' And in a sense this is like the AUR except for the fact that almost nobody does this. Take for example the ncurses package, many terminal applications rely on a shared library provided by ncurses called libtinfo. Void Linux's ncurses package does not provide libtinfo and even though the issue has been around for over a half of a year and no one seems to be able to fix this issue. Sure some people want it fixed, but no one knows how to fix it or will fix it. Which brings me to my next point, the documentation.

The Documentation

Believe it or not, somewhere on the Void Linux website there is a wiki. This wiki is not the Arch Wiki, but it does contain valueable information if ever there was a reliable way to get to it. It seems after half an hour of researching a problem I stumble upon this magical wiki which frequently has pages missing and half unreliable information. At the same time it is the only place that will even yield the slightest clue to solving a problem that a user might be facing. A link from the Void Linux website would help. It is currently a pretty terrible experience.

Is There Anything Good about Void Linux?

Actually yes, runit. Runit, is the service manager of Void Linux and it provesto be a replacement for systemd. I am no particularly a fan of systemd and its many, many, bugs. It's not that I hate it, but I'm not really a fan and Void Linux is way to opt-out. The major benefit of runit over systemd is that systemd is very complicated and abnormally integrated into high-level software like Gnome. And runit just isn't like that.

Flatpak, yes I know this isn't Void Linux specific, but it sure is helpful. See, Void Linux is currently a small, generally, well-built system with surprisingly good driver support, and as I listed above an appalling lack of packages. This is where flatpak comes in. Flatpak currently fills in the gaps on some software like discord that the native repos simply don't have yet.

musl libc, this is a c library that is faster and better than glibc and Void Linux is one of the few early adopters. In general, I favor musl libc, but most software is still made for glibc and frequently incompatibilites arise in complicated low-level software. I must give credit to the devs here, because this is quite a task to undertake.

So Again why Void?

Void because you are a truly early adopter who doesn't care about the early adoption of insignificant things like the latest libreoffice, but for the important things like system architecture and security. Void Linux was the first linux to adopt LibreSSL after the heart bleed incident. Void because you don't like where systemd and Arch are headed. Void because the users are a more inspired people and the devs (although a small number) care more. Simply put, I see Void Linux as a younger better version of Arch that seems to have learned from its spiritual predecessor (Both Arch and Void were written independently from scratch.)

So if you hate Systemd or you want to jump on a newer bandwagon with more momentum that no one has ever heard about, and you care about stability and the bleeding edge of Linux itself, much like Arch was years ago. Maybe try out Void Linux, "It's a tiny bit easier to install...". There you go, that's my catchphrase for it. Until next time, folks. Have fun with Void!!

PS (Merry Christmas Everyone!): 

If you don't think the devs care, here is a tweet posted yesterday:

"Currently baking python-3.8 for you. That's our Christmas present. (heart)(heart)(heart)"

The website link to Void Linux is below:


And here is the wiki:


Maybe someone reading this can fix that libtinfo bug, here's the link to the issue: https://github.com/void-linux/void-packages/issues/11718