- About
- Installation
- Base system requirements
- Downloading installation media
- Verifying images
- Verifying image integrity
- Verifying digital signature
- Linux distribution based void
- The Void (Linux) distribution
- Not a fork!
- Stable rolling release
- runit
- C library diversity
- XBPS
- xbps-src
- void-packages changes
- xbps changes
- Recent news
- July 09, 2023
- New Images! (July 2023 Edition)
- May 30, 2023
- Breaking changes: Pipewire session manager switch, Pipewire and PulseAudio system service removal
- Pipewire session manager switch
- Pipewire and PulseAudio system service removal
About
Welcome to the Void Handbook! Please be sure to read the «About This Handbook» section to learn how to use this documentation effectively. A local copy of this handbook, in several formats, can be installed via the void-docs package and accessed with the void-docs(1) utility.
Void is an independent, rolling release Linux distribution, developed from scratch rather than as a fork, with a focus on stability over bleeding-edge. In addition, there are several features that make Void unique:
- The XBPS package manager, which is extremely fast, developed in-house, and performs checks when installing updates to ensure that libraries are not changed to incompatible versions which can break dependencies.
- The musl libc, which focuses on standards compliance and correctness, has first class support. This allows us to build certain components for musl systems statically, which would not be practical on glibc systems.
- runit is used for init(8) and service supervision. This allows Void to support musl as a second libc choice, which would not be possible with systemd. A side effect of this decision is a core system with clean and efficient operation, and a small code base.
Void is developed in the spare time of a handful of developers, and is generally considered stable enough for daily use. We do this for fun and hope that our work will be useful to others.
The name «Void» comes from the C literal void . It was chosen rather randomly, and is void of any meaning.
Installation
This section includes general information about the process of installing Void. For specific guides, see the «Advanced Installation» section.
Base system requirements
Void can be installed on very minimalist hardware, though we recommend the following minimums for most installations:
Architecture | CPU | RAM | Storage |
---|---|---|---|
x86_64-glibc | x86_64 | 96MB | 700MB |
x86_64-musl | x86_64 | 96MB | 600MB |
i686-glibc | Pentium 4 (SSE2) | 96MB | 700MB |
Note that xfce image installations require more resources.
Void is not available for the i386, i486, or i586 architectures.
Before installing musl Void, please read the «musl» section of this Handbook, so that you are aware of software incompatibilities.
It is highly recommended to have a network connection available during install to download updates, but this is not required. ISO images contain installation data on-disk and can be installed without network connectivity.
Downloading installation media
The most recent live images and rootfs tarballs can be downloaded from https://repo-default.voidlinux.org/live/current/. They can also be downloaded from other mirrors. Previous releases can be found under https://repo-default.voidlinux.org/live/, organized by date.
Verifying images
Each image release’s directory contains two files used to verify the image(s) you download. First, there is a sha256sum.txt file containing image checksums to verify the integrity of the downloaded images. Second is the sha256sum.sig file, used to verify the authenticity of the checksums.
It is necessary to verify both the image’s integrity and authenticity. It is, therefore, recommended that you download both files.
Verifying image integrity
You can verify the integrity of a downloaded file using sha256sum(1) with the sha256sum.txt file downloaded above. The following command will check the integrity of only the image(s) you have downloaded:
$ sha256sum -c --ignore-missing sha256sum.txt void-live-x86_64-musl-20170220.iso: OK
This verifies that the image is not corrupt.
Verifying digital signature
Prior to using any image you’re strongly encouraged to validate the signatures on the image to ensure they haven’t been tampered with.
Current images are signed using a minisign key that is specific to the release. If you’re on Void already, you can obtain the keys from the void-release-keys package, which will be downloaded using your existing XBPS trust relationship with your mirror and package signatures. You will also need a copy of minisign(1); on Void, this is provided by the minisign package.
The minisign executable is usually provided by a package of the same name, and can also be installed on Windows, even without WSL or MinGW.
If you are not currently using Void Linux, it will also be necessary to obtain the appropriate signing key from our Git repository here.
Once you’ve obtained the key, you can verify your image with the sha256sum.sig and sha256sum.txt files. First, you need to verify the authenticity of the sha256sum.txt file.
The following example demonstrates the verification of the sha256sum.txt file for the 20230628 images with minisign :
$ minisign -V -p /usr/share/void-release-keys/void-release-20230628.pub -x sha256sum.sig -m sha256sum.txt Signature and comment signature verified Trusted comment: This key is only valid for images with date 20230628.
Finally, you need to verify that the checksum for your image matches the one in the sha256sum.txt file. This can be done with the sha256(1) utility from the outils package, as demonstrated below for the 20230628 x86_64 base image:
$ sha256 -C sha256sum.txt void-live-x86_64-20230628-base.iso (SHA256) void-live-x86_64-20230628-base.iso: OK
Alternatively, if the sha256 utility isn’t available to you, you can use sha256sum(1):
$ sha256sum -c sha256sum.txt --ignore-missing void-live-x86_64-20230628-base.iso: OK
If neither program is available to you, you can compute the SHA256 hash of the file and compare it to the value contained in sha256sum.txt .
If the verification process does not produce the expected «OK» status, do not use it! Please alert the Void Linux team of where you got the image and how you verified it, and we will follow up on it.
Linux distribution based void
The Void (Linux) distribution
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.
It is available for a variety of platforms. Software packages can be built natively or cross compiled through the XBPS source packages collection.
Follow us on Twitter, visit the #voidlinux IRC channel on libera.chat, and join the Void Linux subreddit.
Visit the Void build server console for package build status updates.
Contribute to the Void Linux project by adding and updating packages and extending the documentation. More information can be found in the Handbook.
Not a fork!
Void Linux is an independent distribution, developed entirely by volunteers.
Unlike trillions of other existing distros, Void is not a modification of an existing distribution. Void’s package manager and build system have been written from scratch.
Stable rolling release
Void focuses on stability, rather than on being bleeding-edge. Install once, update routinely and safely.
Thanks to our continuous build system, new software is built into binary packages as soon as the changes are pushed to the void-packages repository.
runit
We use runit as the init system and service supervisor.
runit is a simple and effective approach to initialize the system with reliable service supervision. Refer to the Void Handbook for an introduction.
C library diversity
Void Linux supports both the musl and GNU libc implementations, patching incompatible software when necessary and working with upstream developers to improve the correctness and portability of their projects.
XBPS
xbps is the native system package manager, written from scratch with a 2-clause BSD license.
XBPS allows you to quickly install/update/remove software in your system and features detection of incompatible shared libraries and dependencies while updating or removing packages (among others). Refer to the Handbook for an overview.
xbps-src
xbps-src is the xbps package builder, written from scratch with a 2-clause BSD license.
This builds the software in containers through the use of Linux namespaces, providing isolation of processes and bind mounts (among others). No root required!
Additionally, xbps-src can build natively or cross compile for the target machine, and supports multiple C libraries (glibc and musl currently).
void-packages changes
xbps changes
Recent news
July 09, 2023
New Images! (July 2023 Edition)
We’re pleased to announce that the 20230628 image set has been promoted to current and is now generally available.
You can find the new images on our downloads page and on our many mirrors.
Some highlights of this release:
- Installing using the network source no longer fails to create the non-root user (@classabbyamp in #319)
- The xbps mirror can now be selected in the installer using xmirror (@classabbyamp in #318)
- The xfce live ISO now uses LightDM (@paper42 in #324)
- GRUB will no longer fail to be installed in some partition layouts/orders (@classabbyamp in #328)
- Various improvements to the installer (@dateiexplorer in #334)
- Xfce live ISOs now use pipewire for audio, and base ISOs now include ALSA (@classabbyamp in #348)
- Live ISOs now include several new boot options, including screenreader-enabled, memtest86+, reboot, shutdown, and EFI firmware setup (@classabbyamp in #295 and #348)
The console screenreader espeakup , the braille TTY driver brltty , and the GUI screenreader orca are now included in all live ISOs for x86_64 and i686. To learn more about this, read the documentation in the Void Linux Handbook.
You may verify the authenticity of the images by following the instructions on the downloads page, and using the following minisign key information:
untrusted comment: minisign public key 5D7153E025EC26B6 RWS2Juwl4FNxXe0NtAdYushNLM3GtJ6poGkZ0Up1P/9YLcCK4xlSWAfs
May 30, 2023
Breaking changes: Pipewire session manager switch, Pipewire and PulseAudio system service removal
Pipewire session manager switch
Void has now dropped the long-deprecated pipewire-media-session session manager from its pipewire package, bringing it inline with the upstream default configuration. If you are currently using pipewire , you must migrate to wireplumber or pipewire will cease to function properly. Refer to Void documentation if you need guidance when making this change.
Pipewire and PulseAudio system service removal
The oft-confusing services for pipewire , pipewire-pulse , wireplumber , and pulseaudio have been removed from the pipewire , wireplumber , and pulseaudio packages because they were experimental and should not have been used for almost all use-cases.
If you are currently using those services and still wish to do so, replacements for the pipewire and pulseaudio services can be found in /usr/share/examples/$pkgname/sv/ . Otherwise, it is recommended to migrate to another method of launching pipewire . Refer to Void documentation if you need guidance.
Copyright 2008-2018 Juan RP and contributors
Linux® is a registered trademark of Linus Torvalds (info)