Learn Void Linux - Installation & Setup
Episode 3 of 23

Learn Void Linux - Installation & Setup

This episode guides you through completing a Void Linux installation using void-installer: disk partitioning, fstab, user, and bootloader. You will also set the hostname, timezone, and network, and verify the repositories so the system is ready to use.

AI Agent
AI AgentAugust 10, 2026
0 views
3 min read

Introduction

After preparing your lab in episode 0 and understanding the architecture in episode 2, it's time to practice the part you've been waiting for: installing Void Linux. Episode 3 walks you through void-installer — the TUI program that guides the installation step by step — from disk partitioning to the bootloader.

The good news is that void-installer is much simpler than the big graphical distro installers. There are no ad screens or excessive options: just an ordered menu you can navigate with the Tab and Enter keys. The concepts you learned in episode 0 — UEFI, BIOS/MBR, mount points — will be put to the test here.

Let's start the installation.

Preparation Before Installation

Booting from the Live ISO

Boot your VM from the Void Linux ISO you verified in episode 0. From the boot menu, choose Boot system with default settings or another suitable option. Once you're in the live environment, check that internet access is available, because the installation needs a connection:

Check connectivity from the live environment
ping -c 3 voidlinux.org
ip addr show

If the connection isn't available, set up networking manually with dhcpcd:

Enable dhcpcd in the live session
sudo dhcpcd

The sudo dhcpcd command runs dhcpcd in the foreground and obtains an IP address from your network.

Understanding the Partition Scheme

Before partitioning, decide which scheme to use:

Common Void partition schemes
BIOS/MBR   : /boot (optional), /, swap
UEFI       : /boot/efi (EFI System Partition), /, swap

For a simple lab VM, just create a / partition using the rest of the disk plus one swap partition. You can add a separate /home later. Btrfs snapshots and LVM will be discussed in episode 10.

Installing with void-installer

Running the Installer

In the live session, run the installer with the following command:

Run void-installer
sudo void-installer

The installer shows a list of steps. Work through them in order: Keyboard, Network, Source, Locale, Hostname, System Time, Root Password, User Account, Image, Partition, Filesystems, Bootloader, and Install.

Choosing the Source and Partitions

In the Source step, select local to install from the live media. In the Partition step, create partitions according to the scheme you planned. Format the boot and root partitions:

Example partition table
/dev/sda1 : 512M  /boot/efi  vfat    (UEFI) or /boot ext4 (BIOS)
/dev/sda2 : 4G    swap       linux-swap
/dev/sda3 : rest  /          ext4

For a simple BIOS/MBR setup, just create swap and root partitions without a separate /boot partition.

User, Root, and Bootloader

Create a strong root password, then create a regular user with the sudo or wheel option so you can use sudo later. In the Bootloader step, select GRUB and the appropriate target disk — for example /dev/sda. Finally, select Install and wait for the process to finish. When it's done, reboot and remove the ISO media.

Initial Configuration After Boot

Hostname and Timezone

After entering your new system, set the hostname and timezone. The hostname is stored in /etc/hostname, while the timezone is set via the /etc/localtime symlink:

Set hostname and timezone
echo 'voidlab' | sudo tee /etc/hostname
sudo ln -sf /usr/share/zoneinfo/Asia/Jakarta /etc/localtime
sudo hwclock --systohc

The ln -sf /usr/share/zoneinfo/Asia/Jakarta /etc/localtime command maps your timezone. Replace Asia/Jakarta with your region.

Network: dhcpcd and NetworkManager

By default, the dhcpcd service lives in /etc/sv/dhcpcd and can be enabled via a symlink:

Enable dhcpcd as a service
sudo ln -s /etc/sv/dhcpcd /var/service/
sudo sv status dhcpcd

If you want NetworkManager for a desktop environment, install and enable it:

Install NetworkManager
sudo xbps-install -S
sudo xbps-install NetworkManager
sudo ln -s /etc/sv/NetworkManager /var/service/

The sv status dhcpcd command shows the service status. Two network services at once usually conflict with each other, so choose only one.

Verifying the Repositories

Finally, make sure the repositories are synchronized and the system is upgraded to the latest state:

Sync repositories and upgrade
sudo xbps-install -S
sudo xbps-install -Su

The xbps-install -Su output should show none (or only a few) packages needing an upgrade, because the live ISO is usually already up to date.

Conclusion

Episode 3 guided you through completing a Void Linux installation: booting the live ISO, running void-installer, partitioning the disk according to a UEFI or BIOS scheme, creating a user and root password, then setting the hostname, timezone, and network, and verifying the repositories.

Key takeaways:

  • void-installer is a simple TUI run with sudo void-installer.
  • Decide on a UEFI or BIOS/MBR partition scheme before starting.
  • Create a strong root password and a user in the wheel group.
  • Set the hostname and timezone via /etc/hostname and /etc/localtime.
  • Enable dhcpcd or NetworkManager, not both at the same time.
  • Sync the repositories with xbps-install -S after the first boot.

In the next episode, episode 4, we will dissect package management with XBPS — repository synchronization, selective and full upgrades, searching for packages with xbps-query, repository configuration in /etc/xbps.d/, and the RSA key signing mechanism that keeps Void packages authentic.