Void Linux salah satu dari sedikit distro yang masih terasa seperti kanvas kosong. Nggak ada systemd, nggak ada desktop default, dan nggak ada asumsi soal bagaimana mesin kamu harus ditata. Yang kamu dapat cuma base system rolling release, package manager xbps, dan runit buat service. Sisanya keputusan kamu.

Itu juga alasan install pertama bisa terasa menakutkan. Live image-nya langsung masuk ke lingkungan teks, dan installer-nya nanya hal-hal yang biasanya disembunyiin distro lain: layout partisi, mount point, bootloader, locale, service.

Panduan ini ngebahas proses lengkapnya di x86_64. Jalur utama pakai void-installer, installer TUI resmi Void. Setelah itu ada cara install manual via chroot buat kamu yang mau tahu apa yang sebenarnya dilakukan installer. Dua-duanya berakhir sama: sistem Void yang bisa boot dan siap dibangun.

Sebelum mulai: backup data kamu. Partisi itu destruktif, dan satu salah ketik nama device cukup buat menghapus disk yang salah.

Kenapa Void Linux

Ada beberapa hal yang bikin Void beda dari distro mainstream:

Buat install pertama, pakai edisi glibc. Kalau penasaran sama musl, coba dulu di VM.

Yang kamu butuh

Download dari mirror resmi:

https://repo-default.voidlinux.org/live/current/

Pilih image base kalau kamu mau bangun sistemnya sendiri. Image xfce sudah termasuk desktop dan cocok kalau kamu cuma mau sistem grafis yang langsung jalan. Panduan ini pakai image base.

Verifikasi image

Jangan skip langkah ini. Di direktori yang sama ada sha256sum.txt dan sha256sum.sig. Signature membuktikan file checksum-nya asli; checksum membuktikan ISO-nya nggak korup.

Di sistem Void yang sudah ada, key rilis ada di paket void-release-keys:

sudo xbps-install -S void-release-keys minisign
minisign -V -p /usr/share/void-release-keys/void-release-YYYYMMDD.pub \
  -x sha256sum.sig -m sha256sum.txt
sha256sum -c sha256sum.txt --ignore-missing

Ganti YYYYMMDD sesuai tanggal di nama file image, misalnya 20250202. Kalau kamu di distro lain, download dulu public key yang cocok dari repo void-packages, baru jalankan perintah yang sama.

Kalau salah satu langkah gagal, download ulang image-nya. Jangan install dari image yang nggak lolos verifikasi.

Tulis ISO ke flashdisk

Di Linux, cari device-nya pakai lsblk lalu tulis image langsung. Pastikan of= nunjuk ke disk utuh, bukan partisi:

lsblk
sudo dd if=void-live-x86_64-YYYYMMDD-base.iso of=/dev/sdX bs=4M status=progress oflag=sync

Di Windows, pakai Rufus mode DD, atau Ventoy lalu copy ISO-nya ke partisi Ventoy. Di macOS, pakai dd dengan raw device:

sudo dd if=void-live-x86_64-YYYYMMDD-base.iso of=/dev/rdiskN bs=4m

Peringatan: dd nulis tanpa nanya konfirmasi. Cek ulang nama device-nya. /dev/sda dan /dev/sdb bedanya cuma satu huruf.

Boot live image

Boot dari flashdisk. Kalau mesin nolak boot, matikan Secure Boot di setting firmware. Void nggak menyertakan signed shim secara default, jadi Secure Boot bakal ngeblok live image di kebanyakan mesin.

Di boot prompt, pilih entry default. Setelah live environment jalan, login sebagai:

login: root
password: voidlinux

Cek UEFI atau BIOS

Jalankan:

ls /sys/firmware/efi

Kalau direktori-nya ada, kamu boot di mode UEFI. Kalau nggak ada, kamu di mode BIOS/legacy. Ini nentuin tabel partisi dan setup bootloader, jadi cek dulu sebelum nyentuh disk.

Sekalian konfirmasi nama disk:

lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS

Di panduan ini aku pakai /dev/nvme0n1 buat disk NVMe dan /dev/sda buat SATA. Ganti dengan device kamu yang sebenarnya.

Nyalakan network

Installer punya langkah network sendiri, tapi lebih gampang nyiapin koneksi sebelum mulai. Buat Ethernet, DHCP biasanya cukup:

ip link
dhcpcd
ping -c 3 repo-default.voidlinux.org

Buat Wi-Fi, pakai wpa_supplicant interaktif:

ip link
wpa_supplicant -B -i wlan0 -c <(wpa_passphrase "SSID" "password")
dhcpcd wlan0

Ganti wlan0 dan SSID sesuai punya kamu. Kalau ping nggak ada, mungkin iputils belum terpasang di image; curl atau installer-nya sendiri tetap bisa jadi patokan koneksi.

Rencanakan layout disk

Void nggak maksa skema partisi tertentu. Buat install UEFI normal, dua partisi udah cukup:

PartisiUkuranTipeMount point
/dev/nvme0n1p1512 MBEFI System/boot/efi
/dev/nvme0n1p2Sisa diskLinux filesystem/

Kalau mau swap, tambah partisi ketiga. Pilihan umum 2–8 GB, atau sebesar RAM kalau kamu berencana hibernasi:

PartisiUkuranTipeMount point
/dev/nvme0n1p32–8 GBLinux swapswap

Buat BIOS, layout-nya lebih simpel: satu partisi Linux bootable buat /, plus swap opsional. Kalau kamu pakai GPT di mesin BIOS, GRUB juga butuh partisi kecil 1 MB bertipe "BIOS boot".

Beberapa catatan praktis:

Install pakai void-installer

Jalankan installer sebagai root:

void-installer

Interface-nya berbasis keyboard. Pakai arrow key buat navigasi, Enter buat memilih, dan Tab buat pindah antar tombol.

Keyboard

Pilih keymap. Buat keyboard US standar, us sudah benar. Buat layout Indonesia, us biasanya tetap jadi pilihan umum kecuali kamu memang pakai varian regional tertentu.

Network

Pilih interface dan aktifkan DHCP. Buat Wi-Fi, isi SSID, tipe enkripsi (wpa), dan password.

Kalau langkah ini gagal, keluar dari installer, perbaiki koneksi pakai wpa_supplicant dan dhcpcd seperti di atas, lalu jalankan void-installer lagi.

Source

Pilih Network buat install paket terbaru dari repository. Ini pilihan yang tepat buat hampir semua orang, dan menghindari sistem yang sudah ketinggalan beberapa bulan.

Pilih Local cuma kalau nggak ada network, atau kalau kamu install desktop environment dari image Xfce. Dokumentasi Void secara eksplisit mengingatkan bahwa image Xfce harus pakai Local.

Hostname

Pakai nama pendek, huruf kecil, tanpa spasi. Misalnya voidbox atau thinkpad.

Locale

Layar ini cuma muncul di glibc. Pilih en_US.UTF-8 kalau mau sistem Inggris yang predictable, atau locale Indonesia seperti id_ID.UTF-8 kalau lebih suka pesan yang dilokalisasi. Kamu bisa ubah nanti di /etc/locale.conf.

Timezone

Pilih region kamu. Buat Indonesia biasanya:

Root password

Set password root. Ini akun recovery, jadi simpan di tempat aman.

User account

Bikin user harian kamu. Installer otomatis nambahin ke grup wheel dan mengatur akses sudo. Pilih login name tanpa spasi atau huruf besar, lalu set password.

Bootloader

Pilih disk, bukan partisi. Misalnya /dev/nvme0n1, bukan /dev/nvme0n1p1. GRUB dipasang ke boot record disk atau partisi EFI tergantung mode firmware.

Kamu juga bisa pilih none lalu install bootloader manual nanti, tapi buat install normal itu nggak perlu.

Partition

Pilih disk, lalu installer akan membuka cfdisk. Bikin layout yang sudah kamu rencanakan:

  1. Buat UEFI, pakai tabel partisi GPT.
  2. Bikin partisi 512 MB dan set tipenya ke EFI System.
  3. Bikin partisi kedua dengan sisa ruang dan set tipenya ke Linux filesystem.
  4. Kalau mau swap, bikin partisi ketiga dan set tipenya ke Linux swap.
  5. Pilih Write, konfirmasi, lalu Quit.

Peringatan: Installer nggak bisa menangani LVM, LUKS, atau ZFS. Kalau kamu butuh enkripsi full disk atau ZFS, pakai jalur chroot manual dan ikuti panduan resmi Full Disk Encryption atau Root on ZFS.

Filesystems

Buat tiap partisi, pilih filesystem dan mount point:

Pastikan partisi root di-mount di / dan ESP di /boot/efi. Kalau semua sudah, pilih Done.

Review dan install

Pakai layar review. Cek disk, mount point, target bootloader, dan akun user. Setelah itu pilih Install.

Installer bakal bikin filesystem, install base system, generate initramfs, dan install GRUB. Setelah selesai, cabut flashdisk dan reboot.

Cara manual: install via chroot

Installer memang praktis, tapi dia nyembunyiin bagian yang menarik. Install via chroot ngasih kontrol penuh dan jadi jalur yang tepat buat LUKS, LVM, ZFS, atau layout yang nggak biasa.

Bagian ini mengasumsikan kamu mulai dari disk kosong dan live image yang sudah boot. Langkahnya mengikuti panduan chroot resmi, dengan repository glibc x86_64.

1. Partisi dan format

Bikin layout yang sama pakai cfdisk:

cfdisk /dev/nvme0n1

Lalu format dan mount:

mkfs.vfat -F32 /dev/nvme0n1p1
mkfs.ext4 -L voidroot /dev/nvme0n1p2
mkswap /dev/nvme0n1p3
swapon /dev/nvme0n1p3

mount /dev/nvme0n1p2 /mnt
mkdir -p /mnt/boot/efi
mount /dev/nvme0n1p1 /mnt/boot/efi

Kalau nggak pakai swap, lewati baris mkswap dan swapon.

2. Bootstrap base system

Set repository dan arsitektur, copy key signing XBPS dari live image, lalu install base-system ke /mnt:

REPO=https://repo-default.voidlinux.org/current
ARCH=x86_64

mkdir -p /mnt/var/db/xbps/keys
cp /var/db/xbps/keys/* /mnt/var/db/xbps/keys/

XBPS_ARCH=$ARCH xbps-install -S -r /mnt -R "$REPO" base-system

Buat musl, pakai REPO=https://repo-default.voidlinux.org/current/musl dan ARCH=x86_64-musl.

3. Generate fstab dan masuk chroot

xtools menyediakan xgenfstab dan xchroot, dan biasanya sudah ada di live image:

xgenfstab -U /mnt > /mnt/etc/fstab
cp /etc/resolv.conf /mnt/etc/resolv.conf
xchroot /mnt /bin/bash

Kalau perintah itu nggak ada, mount virtual filesystem dan pakai chroot biasa:

mount --rbind /dev /mnt/dev
mount --rbind /proc /mnt/proc
mount --rbind /sys /mnt/sys
chroot /mnt /bin/bash

Kalau begitu, tulis /etc/fstab manual. Pakai blkid buat dapat UUID-nya:

UUID=xxxx-xxxx      /boot/efi   vfat   defaults   0 2
UUID=xxxxxxxx-xxxx  /           ext4   defaults   0 1
UUID=xxxxxxxx-xxxx  none        swap   sw         0 0

4. Konfigurasi base system

Di dalam chroot, set hostname, password root, kernel, timezone, dan locale:

echo "voidbox" > /etc/hostname
passwd

xbps-install -S linux linux-firmware-network

ln -sf /usr/share/zoneinfo/Asia/Makassar /etc/localtime
echo "LANG=en_US.UTF-8" > /etc/locale.conf

Aktifkan locale yang kamu mau di /etc/default/libc-locales, lalu regenerate:

sed -i 's/^#en_US.UTF-8/en_US.UTF-8/' /etc/default/libc-locales
xbps-reconfigure -f glibc-locales

Bikin user dan install sudo:

xbps-install -S sudo
useradd -m -G wheel -s /bin/bash void
passwd void
visudo

Di visudo, pastikan baris ini nggak dikomentari:

%wheel ALL=(ALL:ALL) ALL

5. Install GRUB

Di UEFI:

xbps-install -S grub-x86_64-efi
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id="Void"

Di BIOS, install paket grub biasa dan targetkan ke disk:

xbps-install -S grub
grub-install /dev/sda

Lalu biarkan Void regenerate initramfs dan konfigurasi GRUB:

xbps-reconfigure -fa

Perintah itu penting. Dia mengonfigurasi semua paket yang terpasang, menjalankan dracut buat bikin initramfs, dan generate grub.cfg.

6. Aktifkan service sebelum boot pertama

Karena sistem baru belum jalan, aktifkan service dengan symlink ke runsvdir default:

ln -s /etc/sv/dhcpcd /etc/runit/runsvdir/default/
ln -s /etc/sv/dbus /etc/runit/runsvdir/default/

Kalau kamu berencana pakai NetworkManager, aktifkan NetworkManager dan skip dhcpcd. Jalanin dua-duanya bakal konflik.

7. Keluar dan reboot

exit
umount -R /mnt
reboot

Cabut flashdisk saat mesin restart.

Boot pertama dan post-install

Kamu bakal mendarat di login prompt teks. Login sebagai root, lalu update sistem:

xbps-install -Syu

Networking

Buat desktop atau laptop, NetworkManager adalah pilihan paling gampang:

xbps-install -S NetworkManager
ln -s /etc/sv/dbus /var/service/
ln -s /etc/sv/NetworkManager /var/service/
sv status NetworkManager
nmtui

nmtui ngasih interface teks buat konek Wi-Fi. Kalau lebih suka jalur minimal, install dan aktifkan dhcpcd:

xbps-install -S dhcpcd
ln -s /etc/sv/dhcpcd /var/service/

Pakai satu backend network saja, jangan dua-duanya.

Repository nonfree dan firmware

Sebagian kartu Wi-Fi, GPU, dan CPU butuh firmware atau microcode dari repository nonfree:

xbps-install -S void-repo-nonfree
xbps-install -S

xbps-install -S linux-firmware-network
xbps-install -S intel-ucode    # CPU Intel
xbps-install -S amd-ucode      # CPU AMD

Tergantung hardware kamu, mungkin kamu juga butuh linux-firmware-amd, linux-firmware-intel, atau linux-firmware-nvidia.

Seat management dan audio

Buat sesi grafis, install dbus dan elogind, lalu aktifkan:

xbps-install -S dbus elogind
ln -s /etc/sv/dbus /var/service/
ln -s /etc/sv/elogind /var/service/

Buat audio, PipeWire adalah default modern. Paket pipewire otomatis menarik WirePlumber sebagai session manager:

xbps-install -S pipewire alsa-pipewire

mkdir -p /etc/pipewire/pipewire.conf.d
ln -s /usr/share/examples/wireplumber/10-wireplumber.conf /etc/pipewire/pipewire.conf.d/
ln -s /usr/share/examples/pipewire/20-pipewire-pulse.conf /etc/pipewire/pipewire.conf.d/

mkdir -p /etc/alsa/conf.d
ln -s /usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/
ln -s /usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/

PipeWire jalan di dalam sesi user kamu. Desktop environment atau window manager kamu harus menjalankannya saat login. Kalau pakai window manager minimal, tambahkan pipewire ke script autostart-nya. Buat ngetes:

pipewire &
wpctl status

Grafis, font, dan desktop

Buat Xorg:

xbps-install -S mesa-dri xorg xorg-input-drivers xorg-video-drivers
xbps-install -S dejavu-fonts-ttf noto-fonts-ttf

Buat Wayland, install mesa-dri dan compositor seperti sway. Seat management datang dari elogind atau seatd. Pengguna NVIDIA butuh paket driver proprietary dan sebaiknya ikuti panduan NVIDIA Void.

Setelah itu install desktop environment atau window manager, plus display manager kalau mau login grafis. Void nggak milih salah satunya buat kamu.

Bluetooth

xbps-install -S bluez
ln -s /etc/sv/bluetoothd /var/service/
usermod -aG bluetooth void

Logout dan login lagi supaya perubahan grup berlaku, lalu pair device pakai bluetoothctl. Buat audio Bluetooth, install juga libspa-bluetooth.

Cheat sheet xbps

TugasPerintah
Sync index repositoryxbps-install -S
Install paketxbps-install -S package
Update semuaxbps-install -Syu
Hapus paket dan orphan-nyaxbps-remove -R package
Hapus dependency orphanxbps-remove -Oo
Cari paketxbps-query -Rs keyword
List paket terpasangxbps-query -l
Lihat detail paketxbps-query -RS package
Reconfigure semua paketxbps-reconfigure -fa
Cek database paketxbps-pkgdb -a

Dua kebiasaan yang worth dibangun dari awal: jalankan xbps-install -S sebelum install apa pun, dan jalankan xbps-install -Syu secara rutin. Void itu rolling release, jadi update-nya sering tapi biasanya kecil.

Troubleshooting

Mesin langsung boot ke firmware atau OS lain

Cek boot order:

efibootmgr

Kalau nggak ada entry Void, boot live image lagi, mount sistem yang sudah diinstall, masuk chroot, lalu jalankan ulang grub-install dan xbps-reconfigure -fa. Di implementasi UEFI yang agak aneh, tambahkan --removable ke grub-install.

Nggak ada network setelah boot

Cek apakah service-nya beneran jalan:

sv status /var/service/*

Kalau kamu mengaktifkan NetworkManager, pastikan dhcpcd nggak ikut aktif. Kalau kamu mengaktifkan dhcpcd, pastikan NetworkManager nggak aktif. Lalu cek interface-nya:

ip link
ip addr

Audio cuma nunjukin dummy output

Kemungkinan WirePlumber nggak jalan, atau user kamu nggak punya akses ke device audio. Cek:

wpctl status

Pastikan pipewire dijalankan di dalam sesi grafis kamu dan XDG_RUNTIME_DIR sudah di-set. Kalau nggak pakai elogind, user kamu juga harus masuk grup audio dan video.

Program nggak mau jalan di musl

Sebagian binary proprietary dan driver dibangun terhadap glibc. Kalau aplikasi gagal dengan missing symbol atau nggak nemu dynamic loader, biasanya itu penyebabnya. Solusi praktisnya pakai edisi glibc, atau jalankan aplikasinya di container.

Jam sistem salah

Set hardware clock dari system clock:

hwclock --systohc

Pastikan symlink timezone-nya benar:

ls -l /etc/localtime

Installer nggak bisa LUKS, LVM, atau ZFS

Itu memang by design. Pakai metode chroot dan panduan advanced resmi. Installer-nya sengaja dibuat kecil dan predictable.

Penutup

Void ngasih imbalan buat orang yang suka memahami sistemnya. Installer adalah titik awal yang bagus, tapi install via chroot adalah tempat distro ini mulai masuk akal: base system, kernel, bootloader, dan beberapa service. Sisanya adalah paket yang kamu pilih sendiri.

Saran buat install pertama: bikin semuanya membosankan. Pakai glibc, ext4, GRUB, dan layout dua partisi yang simpel. Pastikan mesin bisa boot dan update dulu. Baru setelah itu eksperimen dengan musl, ZFS, enkripsi, atau window manager minimal, setelah kamu punya sistem yang bisa dipulihkan.

Catat proses install kamu, terutama nama disk dan service yang diaktifkan. Install kedua selalu lebih cepat.

Sumber