Void Linux: A Review of a Fast and Lightweight Distro

Void Linux is a distro like none other. It is independently developed, meaning the entire operating system has been coded from scratch. 

Since Void Linux is not based on another pre-existing Linux operating system, it doesn’t belong within a larger family of Linux distros. While this might seem like a disadvantage at first blush, Void Linux has grown to become one of the most popular Linux distros available online.

So, why are so many Linux enthusiasts and developers alike flocking to this unusual distro? 

Let’s explore what makes Void Linux so unique in this brief review.

The 8 Features That Make Void Linux So Popular

Though Void Linux might seem like a simplistic distro, it packs a wide array of features that make it a one-of-a-kind distro.

Rolling Release Model

One of the biggest pluses of installing Void Linux is that it follows a rolling release model. So, when you use Void Linux, the packages on your machine are updated as soon as a new update is available. 

You do not have to wait for updates to arrive according to a schedule as a versioned update.

Independently-developed Distro

Void Linux is an open-source project that has been developed by volunteers from scratch. In simple words, the distro doesn’t borrow or derive parts of itself from another open-source project. 

The first public release of this distro was in 2008, and to this day, Void Linux continues to receive community-driven updates.

No Systemd

Void is one of the few mainstream distros that does not use systemd as its init system. Instead, the distro uses runit as its init system, making it much faster than most Linux distros you can find online.

Excellent Package Manager

The XBPS package manager was designed and developed specifically for Void Linux. 

XBPS is a collection of structurally similar programs that serve different purposes. Some of the tools included in XBPS include xbps-install, xbps-query, and xbps-src.

Linux distros typically feature one of the two following types of package management:

  • Binary-based management: In this type of package management, pre-built software is uploaded to online repositories in the form of binary blobs. This allows you to avoid building large packages such as chromium that take hours to build.
  • Source-based management: This type of package management also involves online repositories. However, the repo only supplies templates for building the software on the local machine. Source-based management gives you the flexibility of customizing all the compilation parameters. Additionally, you can version bump by changing a single line.

What makes Void Linux unique is that it supports both source- and binary-based package management. You can find packages in the template format on the package section of the distro’s official GitHub page

The biggest advantage of Void Linux’s build system is that the builds never interfere with the host system. The distro builds the packages under the isolated chroot, before packaging the final build into a *.xbps binary file stored in the hostdir/binpkgs directory.  

After the package is ready, you can build it by running the sudo xbps-install -R hostdir/binpkgs dwm command. 

Highly Customizable

Void Linux is like Arch Linux in that it does not come out of the box with a desktop environment. In fact, it provides you with a high degree of customizability, not imposing any defaults or preset configurations. 

You have full control over the look and feel of your desktop from the moment you install Void Linux.

Musl Libc Support

The Musl libc library is a fast and secure alternative to the GNU C library. Void Linux comes with Musl libc instead of GNU, giving it the flexibility for smaller and more efficient binaries.

Strict Package Standards 

If you’ve used Arch Linux before, you will know that the Arch User Repository stores packages by splitting it between several repositories according to how the owner wants to distribute their package. 

Void Linux doesn’t work this way. It uses a single repository for every package and does not accept any package until it meets all the criteria and is tested on all platforms.

This ensures that the rolling release remains completely stable. What’s more, the distro tracks the common/shlibs and maps libraries to packages. This way, it can make a partial upgrade without breaking anything.