Void Linux is a Linux distribution that aims to provide a powerful, yet easy-to-approach, operating system. It is designed to be both simple and stable and achieves that through the use of runit and its own lightweight package manager.
Similar to Arch Linux, Void Linux follows a “rolling release” model and a “user-centric” approach to operating system usage. This means Void Linux is constantly updated but is also bare-bones when installed. It makes Void Linux appealing for power users who want to have a flexible operating system that they can fully understand and tinker with.
Why Use Void Linux?
Void Linux aims to keep the operating system simple. Its use of runit as an init system means that all service scripts currently running are just files that can be seen in the “/var/service/” directory, and those can easily be added, modified or removed from “/etc/sv/”.
Further, Void Linux also centralizes all the packages available for the system through the X Binary Package System (XBPS). This ensures that the user does not need to install additional package managers and that an approachable tool chain for user-built packages is also available. All in all, this results in an operating system that is both easy to maintain, flexible and stable.
Downloading Void Linux and Preparing the Installer
You can get a copy of the Void Linux ISO from here and will be able to choose between two flavors: base and xfce. The former provides an installation without any desktop environment, while the latter comes with the XFCE.
Void Linux also comes with two C standard libraries: glibc and musl.
- Glibc (GNU C Library) is widely used among Linux distributions.
- Musl, on the other hand, is a simpler implementation of the same C library, but its recency means that not all programs will work properly with it. For this overview, we will be downloading the Base Live Image with glibc.
Once you have a copy of the Void Linux installer, you will need a couple of things:
- A USB stick that is at least 4GB or more
- A means to write the installer to the USB
Writing the installer to the USB is a simple process. You can use balenaEtcher, regardless of the platform you are using. For more details on how to create a bootable USB with Void Linux, follow the instructions here.
Installing Void Linux
With the bootable USB, you can now boot into the Void Linux Installer through your BIOS’s boot menu. Insert the USB into your computer and boot it up. Accessing the boot menu largely depends on your machine. F10 is the most commonly used key for the boot menu. However, there are also some that use F12 or F2. Once on the BIOS, select to boot from the USB drive.
Once it boots, you will be greeted by the Void Linux boot menu. From here, choose the first option. This will then load you into the live installer.
You need to log in as “root” with the password “voidlinux”. This will give you root privileges within the live installer (Don’t worry, you can change the root password later).
Optional: Enabling Wireless
One thing of note, however, is if you are installing Void Linux over Wi-Fi, you will need to type the following command to initialize a wireless connection:
wpa_passphrase "Your access point's name" >> /etc/wpa_supplicant/wpa_supplicant.conf
You can then type your password on the blank line that follows, then restart the dhcp daemon to reinitialize the connection with your access point’s credentials.
sv restart dhcpcd
To make sure that you have initialized the connection successfully, you can use the ping command to ping a website. For example: maketecheasier.com.
ping -c 5 maketecheasier.com
If it works, you can then start the installation process. To do this, type
void-installer in the command line.
The Void Linux Installer
The main menu of the installation wizard highlights all of the steps that you need to do. We are starting with the Keyboard and making our way down.
This is where you will select the layout of your keyboard. If you are using anything other than the standard US keyboard, you will have to specify it here. I happen to be using the standard US keyboard.
After you have selected your keyboard layout, the wizard will select the next step: Network. Enter that and you will be able to choose which Network Adapter you are going to use for the installation.
If you are using a wireless connection, there will be an option named “wlp4s0” or similar. Select that, provide your wireless network’s credentials and press Enter. I am using an Ethernet connection, so I will select “enp0s3” and also enable DHCP.
The next step is to select where the installer will get its packages to install. For you to get the latest packages, select Network.
For this next step, you will need to provide a hostname for your machine. It can be anything that you want. In my case, I will name the machine “maketecheasier.”
The locale is where you will select the character set of your machine. If you are using any other language besides English, you must specify it here. One important thing to take note of: if you want to have special symbols, you must also select a UTF-8 locale. In my case, I will be selecting “en_US.UTF-8”.
For the timezone step, pick the closest location to you, as this will determine your system clock.
For the next step, provide a root password for the machine. Make sure this is a secure password.
Setting Up the User
For the login name, you will need to set up your user account. The first prompt will ask for your username. You will use this to log in.
The wizard will ask you to provide a password for your user account. Make sure this is a good password and different from the root password.
In the next step, select which system groups you want your user account in. The installer has already provided reasonable defaults, which should be enough for daily use. Press Enter to continue to the next step.
Setting Up the Bootloader and Partitions
For the bootloader, you will need to select which disk you want to install the bootloader to. Select your disk by looking at the “size” on the right side of the options and pressing Enter. In my case, it is “/dev/sda”.
For the partitioning step, the wizard will ask which disk you want to partition for the install. Select the same disk you selected for the bootloader. For me, it is “/dev/sda”. The wizard will then ask which tool you would like to use to partition the disk. Select “cfdisk”, as it is simpler and easier to use.
Creating the Partitions
If you are using a blank disk, cfdisk will ask you for a Label Type. Select “gpt”, as it is more flexible and can handle larger drives compared to the other label types.
The partition layout for cfdisk will largely depend on whether you are using a UEFI or a BIOS system. For a UEFI system, you will need to create four partitions.
You can do this by selecting the “Free Space” with the Up and Down cursor keys and using the Left and Right cursors to select “New.” Cfdisk will then ask you for the size of the partition you want to make.
- For the first partition, you will need to create one with a size of 1GB.
- The second partition must have a size of 200MB and a Type of EFI System.
You can do this by selecting the “Type” option with the partition selected. Cfdisk will provide you with a selection of types you can choose for that partition.
- The size of third partition will depend on the size of the RAM that your machine has. If it is less than 5GB, provide twice the amount of RAM that you have. For example, if your machine has 4GB of RAM, then set the size of the third partition to 8GB.
- For anything above 5GB, provide the same size as the amount of RAM in the system. Lastly, the third partition must have a Type of Linux swap.
- For the last partition, allot all of the space left in the disk.
Once done, you can now select the “Write” option in cfdisk and type
yes to confirm the partitions. After that, you can now leave cfdisk by selecting
Creating the Filesystems
For the filesystems step, you will be creating the filesystems for the partitions that you made. The wizard will ask you for a “Filesystem Type” when you select a partition, and after that will it will ask you for a “Mountpoint.”
- For the first one, select “ext2” as the type and enter “/boot” for the mountpoint.
- The second one will be a “vfat” type with a mountpoint of “/boot/efi.”
- The third one will be a “swap” type with no mountpoints.
- The last one will have “ext4” as type and “/” as its mountpoint.
Starting the Installation
With all of that done, you can now select the “Install” option in the main menu. The installer will ask you to confirm the configuration that you have made. Select “Yes.” After that, the installer will download all of the files necessary to install Void Linux.
Once the download is done, it will show an “OK” prompt. Press Enter and the wizard will continue with the installation process.
The installation should not take long. Once done, the wizard will display an “Installation Success” screen. Select Yes to reboot the machine to Void Linux.
Congratulations! You now have a basic Void Linux installation. From here, you can install anything you want. You can start with some desktop environments or window managers.
Frequently Asked Questions
1. I am not sure when my machine was made. Is there any other way to check whether my system is UEFI?
Yes! Once you have the Void Linux installer booted, you can check for the “/sys/firmware/efi/” directory. This directory does not exist in non-UEFI systems, so if the Void Linux installer loaded that, then your machine must be a UEFI system.
2. I just finished the installation, and when I rebooted and logged in, I am not online. Is my wireless broken?
You will need to redo the
wpa_passphrase command that we discussed above. When we first did it, we were doing it in the Void Linux installer. Now that we have our own installation, we would need to do it again so that the system knows where to connect.
3. My installation failed! It said: “ERROR: failed to install GRUB to /dev/sdX! Check /dev/tty8 for errors.” What should I do?
This happened because GRUB was not properly installed in the system. It could happen for a number of reasons. The most common ones are:
- You adopted a UEFI partition scheme even though your machine is a BIOS one and vice versa.
- When you were making the UEFI partition scheme, you created the first partition to be an “EFI System” instead of the second one.
Our latest tutorials delivered straight to your inbox