# Void Linux

**Void Linux** is an independent, rolling release [Linux distribution](https://www.edgepedia.org/linux-distribution) developed from scratch rather than as a fork of another distribution, with a focus on stability over bleeding-edge software<sup>[1](https://docs.voidlinux.org/)</sup>. It is built around three in-house or distinctive components: the XBPS package manager, the runit init system and service supervisor, and first-class support for both the glibc and musl C libraries<sup>[1](https://docs.voidlinux.org/)</sup>. The project was started in 2008 by Juan Romero Pardines of Spain and is developed entirely by volunteers<sup>[2](https://www.mclibre.org/descargar/docs/revistas/full-circle/full-circle-184-en-202208.pdf)</sup><sup> • </sup><sup>[3](https://voidlinux.org/?source=techstories.org)</sup>.

| Key fact | Detail |
|---|---|
| Type | Independent, rolling release distribution developed from scratch, not a fork<sup>[1](https://docs.voidlinux.org/)</sup> |
| Origin | Started by Juan Romero Pardines (Spain) in 2008; he left in 2018 and the community took over<sup>[2](https://www.mclibre.org/descargar/docs/revistas/full-circle/full-circle-184-en-202208.pdf)</sup> |
| Init system | runit, used for init(8) and service supervision<sup>[1](https://docs.voidlinux.org/)</sup> |
| Package manager | XBPS (X Binary Package System), written from scratch and managed by the Void Linux team<sup>[4](https://docs.voidlinux.org/xbps/)</sup> |
| C libraries | Both glibc and musl editions; musl binary packages are not available for i686<sup>[5](https://docs.voidlinux.org/installation/musl.html)</sup> |
| Architectures | x86_64, i686, aarch64, armv7l, and armv6l; not available for i386, i486, or i586<sup>[6](https://docs.voidlinux.org/installation/)</sup> |
| Minimum resources | 520 MB RAM and 700 MB storage (x86_64 glibc), or 600 MB storage (x86_64 musl)<sup>[6](https://docs.voidlinux.org/installation/)</sup> |
| Name origin | The C literal `void`, chosen rather randomly and, in the project's words, void of any meaning<sup>[1](https://docs.voidlinux.org/)</sup> |

## History and governance

Void Linux was created from scratch by Juan Romero Pardines in 2008<sup>[2](https://www.mclibre.org/descargar/docs/revistas/full-circle/full-circle-184-en-202208.pdf)</sup><sup> • </sup><sup>[7](https://leahneukirchen.org/talks/void-2020/neukirchen2020void.pdf)</sup>. Pardines left the project in 2018, after which it was taken over by the community; a 2022 [Full Circle](https://www.edgepedia.org/full-circle) review described the contributor base as numbering over 700 developers<sup>[2](https://www.mclibre.org/descargar/docs/revistas/full-circle/full-circle-184-en-202208.pdf)</sup>. Void lacks corporate sponsorship and paid personnel; according to the Handbook, a few developers work on it in their free time, and most users find it stable enough to run day to day<sup>[1](https://docs.voidlinux.org/)</sup><sup> • </sup><sup>[2](https://www.mclibre.org/descargar/docs/revistas/full-circle/full-circle-184-en-202208.pdf)</sup>.

## XBPS, the package manager

The X Binary Package System (XBPS) is a fast package manager designed and implemented from scratch, managed by the Void Linux team and developed in its own repository<sup>[4](https://docs.voidlinux.org/xbps/)</sup>. Package management is split across several tools: xbps-query(1) searches installed or repository packages, xbps-install(1) installs and updates packages, xbps-remove(1) removes packages and orphans, xbps-reconfigure(1) runs configuration steps, xbps-alternatives(1) manages symlinks for packages providing common functionality, xbps-pkgdb(1) reports and fixes package database issues, and xbps-rindex(1) manages local binary repositories<sup>[4](https://docs.voidlinux.org/xbps/)</sup>.

When installing updates, XBPS performs checks to ensure that libraries are not changed to incompatible versions that would break dependencies<sup>[1](https://docs.voidlinux.org/)</sup>. XBPS must update itself in a separate transaction, so if an update includes the `xbps` package the update command must be run a second time<sup>[4](https://docs.voidlinux.org/xbps/)</sup>. XBPS does not restart services when they are updated; this is left to the administrator, and the `xcheckrestart` tool from the `xtools` package lists processes running executables that have since been replaced on disk<sup>[4](https://docs.voidlinux.org/xbps/)</sup>.

**Building packages.** Source packages live in the void-packages repository, where each package is defined by a `template` file, a shell script processed by the `xbps-src` builder to fetch, compile, and package the software<sup>[8](https://github.com/void-linux/void-packages/blob/master/Manual.md)</sup>. Running `./xbps-src pkg <package_name>` produces a binary package in the local repository `hostdir/binpkgs`<sup>[8](https://github.com/void-linux/void-packages/blob/master/Manual.md)</sup>. Some packages are marked *restricted*: they are officially maintained but not distributed, commonly because of massive size or licensing that forbids third-party redistribution. They must be built locally from their templates after setting `XBPS_ALLOW_RESTRICTED=yes` in the xbps-src configuration<sup>[9](https://docs.voidlinux.org/xbps/repositories/restricted.html)</sup>.

## Repositories

Repositories hold signed binary package files and a signed `$ARCH-repodata` index; remote repositories must be signed, while local ones do not require signatures<sup>[10](https://docs.voidlinux.org/xbps/repositories/index.html)</sup>. The main repository lives at `/current` for glibc and `/current/musl` for musl, relative to a mirror URL<sup>[10](https://docs.voidlinux.org/xbps/repositories/index.html)</sup>.

In addition to the main repository, which is enabled at installation, Void provides optional subrepositories enabled by installing a small configuration package<sup>[10](https://docs.voidlinux.org/xbps/repositories/index.html)</sup>:

- **nonfree**: packages with non-free licenses, including software released only as redistributable binaries and patented technology.
- **multilib** and **multilib/nonfree**: 32-bit compatibility libraries for 64-bit systems, available only on x86_64 running glibc.
- **debug**: debugging symbols, which Void packages otherwise omit; symbols are obtained by installing `<package>-dbg`.

For musl systems there are nonfree and debug sub-repositories but no multilib sub-repo<sup>[5](https://docs.voidlinux.org/installation/musl.html)</sup>.

## runit and services

Void uses the runit(8) supervision suite to run system services and daemons<sup>[11](https://docs.voidlinux.org/config/services/index.html)</sup>. The project cites runit's small code base, which makes it easier to audit for bugs and security issues; a clean process environment for each service regardless of how it was started or restarted; and a reliable logging facility in which the log service stays up as long as the service it accompanies<sup>[11](https://docs.voidlinux.org/config/services/index.html)</sup>.

Each service has a service directory in `/etc/sv/` requiring only an executable `run` script that execs a process in the foreground<sup>[11](https://docs.voidlinux.org/config/services/index.html)</sup>. A service is enabled by symlinking its directory into the running runsvdir at `/var/service`; once linked it starts on boot and restarts if it stops, unless administratively downed. A file named `down` in a service directory prevents it from starting at boot while leaving it under runit's management<sup>[11](https://docs.voidlinux.org/config/services/index.html)</sup>. Services are controlled with `sv up`, `sv down`, `sv restart`, and `sv status`<sup>[11](https://docs.voidlinux.org/config/services/index.html)</sup>.

The choice of runit is also what makes musl support possible: the Handbook notes that supporting musl as a second libc choice would not be possible with systemd, and a side effect is a core system with clean, efficient operation and a small code base<sup>[1](https://docs.voidlinux.org/)</sup>.

## glibc and musl

Void officially supports musl, a libc implementation that strives to be lightweight, fast, simple, and correct, by using it in its codebase for all target platforms; all compatible packages in the official repositories are available as musl-linked binaries in addition to their glibc counterparts<sup>[5](https://docs.voidlinux.org/installation/musl.html)</sup>. Because musl practices very strict standards compliance and omits many platform-specific extensions, software often needs modification to compile or function properly; Void developers patch such software and work to get portability and correctness changes accepted upstream<sup>[5](https://docs.voidlinux.org/installation/musl.html)</sup>.

The practical consequence is compatibility. [Proprietary software](https://www.edgepedia.org/proprietary-software) usually supports only glibc systems, though some applications are available as Flatpaks and can run on musl; in particular, the proprietary NVIDIA drivers do not support musl, which the Handbook says should be taken into account when evaluating hardware compatibility<sup>[5](https://docs.voidlinux.org/installation/musl.html)</sup>. Software requiring glibc can be run in a glibc chroot<sup>[5](https://docs.voidlinux.org/installation/musl.html)</sup>. Locale handling also differs: glibc supports setting the system locale whereas musl does not, though both support setting the application language<sup>[12](https://docs.voidlinux.org/config/locales.html?highlight=local)</sup>.

## Installation and platforms

Void is available on x86_64, i686, aarch64, armv7l, and armv6l. Both glibc and musl editions exist on all architectures except i686, where only glibc is available, and Void is not available for the i386, i486, or i586 architectures<sup>[6](https://docs.voidlinux.org/installation/)</sup>. The Handbook recommends minimums of 520 MB RAM with 700 MB of storage for x86_64-glibc and 600 MB for x86_64-musl, and notes that Void can be installed on very low-powered hardware; i686 requires a [Pentium 4](https://www.edgepedia.org/pentium-4) with [SSE2](https://www.edgepedia.org/sse2)<sup>[6](https://docs.voidlinux.org/installation/)</sup>.

Void provides live installer images containing a base set of utilities, an installer program, and package files, which are also useful for repairing a broken system<sup>[13](https://docs.voidlinux.org/installation/live-images/index.html)</sup>. Two image types are released: base images with only a minimal package set, and Xfce images that add a full desktop with the xfwm4 window manager, the Thunar file manager, Firefox, and other applications<sup>[13](https://docs.voidlinux.org/installation/live-images/index.html)</sup>. Live images exist for x86_64 in both glibc and musl variants, for i686 in glibc only, and for aarch64 in both variants, though aarch64 images support only UEFI-capable devices and do not support the void-installer; users of other architectures use rootfs tarballs or manual installation<sup>[13](https://docs.voidlinux.org/installation/live-images/index.html)</sup>. All installer images support the espeakup console screenreader and the brltty braille display driver, with bootloader hotkeys to enable accessibility features<sup>[13](https://docs.voidlinux.org/installation/live-images/index.html)</sup>.

Images are verified with a `sha256sum.txt` checksum file and a `sha256sum.sig` signature made with a release-specific minisign key, obtainable on Void from the `void-release-keys` package<sup>[6](https://docs.voidlinux.org/installation/)</sup>. An alternative installation path is a chroot bootstrap, either by running XBPS from a host system to install the `base-system` metapackage or by unpacking a ROOTFS tarball<sup>[14](https://docs.voidlinux.org/installation/guides/chroot.html)</sup>.

## Maintenance characteristics

As a rolling release, Void is updated routinely with `xbps-install -Su` rather than upgraded between versions<sup>[4](https://docs.voidlinux.org/xbps/)</sup>. A continuous build system builds new software into binary packages as soon as changes are pushed to the void-packages repository<sup>[3](https://voidlinux.org/?source=techstories.org)</sup>. Recovery tooling exists for broken systems: statically linked copies of XBPS, available in the `static/` directory on all mirrors, work even where the installed system cannot, and a pre-0.54 XBPS (before June 2019) cannot update from the official repositories because the repodata compression changed from gzip to zstd in March 2020<sup>[15](https://docs.voidlinux.org/xbps/troubleshooting/static.html)</sup><sup> • </sup><sup>[16](https://docs.voidlinux.org/xbps/troubleshooting/common-issues.html)</sup>.

## References

1. [About, The Void Linux Handbook](https://docs.voidlinux.org/)
2. [Void Linux review, Full Circle Magazine issue 184 (2022)](https://www.mclibre.org/descargar/docs/revistas/full-circle/full-circle-184-en-202208.pdf)
3. [Enter the void, voidlinux.org](https://voidlinux.org/?source=techstories.org)
4. [XBPS Package Manager, The Void Linux Handbook](https://docs.voidlinux.org/xbps/)
5. [musl, The Void Linux Handbook](https://docs.voidlinux.org/installation/musl.html)
6. [Installation, The Void Linux Handbook](https://docs.voidlinux.org/installation/)
7. [A too short history of Void Linux, Leah Neukirchen (2020)](https://leahneukirchen.org/talks/void-2020/neukirchen2020void.pdf)
8. [void-packages Manual, void-linux/void-packages on GitHub](https://github.com/void-linux/void-packages/blob/master/Manual.md)
9. [Restricted Packages, The Void Linux Handbook](https://docs.voidlinux.org/xbps/repositories/restricted.html)
10. [Repositories, The Void Linux Handbook](https://docs.voidlinux.org/xbps/repositories/index.html)
11. [Services and Daemons - runit, The Void Linux Handbook](https://docs.voidlinux.org/config/services/index.html)
12. [Locales and Translations, The Void Linux Handbook](https://docs.voidlinux.org/config/locales.html?highlight=local)
13. [Live Installers, The Void Linux Handbook](https://docs.voidlinux.org/installation/live-images/index.html)
14. [Installation via chroot, The Void Linux Handbook](https://docs.voidlinux.org/installation/guides/chroot.html)
15. [Static XBPS, The Void Linux Handbook](https://docs.voidlinux.org/xbps/troubleshooting/static.html)
16. [Common Issues, The Void Linux Handbook](https://docs.voidlinux.org/xbps/troubleshooting/common-issues.html)

---
*Topic: Encyclopedia › Technology and the built world › Computing and digital systems › Software and programming › Operating systems › Unix-like and Linux › Linux distributions*

*Initially written Sep 17, 2026 · Reviewed: Oct 15, 2026 · Edited: Oct 15, 2026 · Last review: Oct 15, 2026*

*Copyright 2026 EdgeChat AI, a subsidiary of Biostate AI.*

License: Edgepedia Community License 1.0, https://www.edgepedia.org/edgepedia/license
