Void Linux installer implemented in GNU Prolog.
void-pi is a Void Linux installer similar to void-installer.
It extends void-installer in several ways:
void-pi works on Void with Intel or AMD x86 CPU. It wasn't tested with ARM CPUs.
ip a
to get an IP address.ssh anon@ip_address
sudo bash
sudo xbps-install -Suy xbps wget
wget https://github.com/sdbtools/void-pi/releases/latest/download/void-pi.x86_64.tgz
tar -xzf void-pi.x86_64.tgz
./void-pi
sudo xbps-install gprolog git
git clone https://github.com/sdbtools/void-pi.git
cd void-pi
./void-pi.pl
# or
gprolog --consult-file void-pi.pl
sudo xbps-install gprolog gcc git
git clone https://github.com/sdbtools/void-pi.git
cd void-pi
gplc --min-size void-pi.pl
./void-pi
sudo btrbk run
grub-mkconfig -o /boot/grub/grub.cfg
This option is to build a custom Void Linux image from the official void-mklive repository.
$ git clone --depth=1 https://github.com/void-linux/void-mklive.git
$ cd void-mklive
$ make
$ sudo ./build-x86-images.sh -- -p zfs
Download a pre-built hrmpf image.
This option is to build a custom Void Linux image from the official void-mklive repository.
$ git clone --depth=1 https://github.com/void-linux/void-mklive.git
$ cd void-mklive
$ make
$ sudo ./build-x86-images.sh -- -v linux6.7
void-installer
./mnt
for chroot by default.--rootdir
command line argument.--config
command line argument./boot
on LVM or LUKS./boot
partition.Boot manager | Supported /boot filesystems |
---|---|
GRUB | fat, btrfs, ext2, ext3, ext4, xfs, nilfs2, and zfs (zfs has limited support) |
Gummiboot | fat, ext2, ext3, ext4, xfs, nilfs2, and f2fs (btrfs is not supported at this time) |
rEFInd | fat, btrfs, ext2, ext3, and ext4 |
Limine | fat, (Support of ext2, ext3, and ext4 was disabled in Limine version 6.20231210.0) |
Syslinux | fat, ext2, ext3, and ext4, and xfs (btrfs is not supported at this time) |
EFISTUB | fat, ext2, ext3, ext4, f2fs, and xfs (btrfs is not supported at this time) |
ZFSBootMenu | zfs |
/boot
on LUKS./boot
. LUKS1 is used because GRUB2 doesn't support LUKS2./boot
partition. LUKS2 is used./boot
on LVM.Last tested | ISO | Result |
---|---|---|
2024-06-08 | void-live-x86_64-20240229-base.iso | PASS |
2023-06-29 | void-live-x86_64-musl-20221001-base.iso | PASS |
2023-10-21 | void-live-i686-20230628-base.iso | PASS |
2023-06-29 | void-live-i686-20221001-base.iso | N/A |
2023-06-29 | void-live-i686-20210930.iso | PASS |
2023-10-14 | hrmpf-x86_64-6.1.3_1-20230105.iso | PASS |
2023-11-19 | hrmpf-x86_64-6.5.9_1-20231102.iso | PASS |
2023-08-22 | void-live-lxqt-unofficial-x86_64-6.3.13_1-20230821.iso | PASS |
2023-12-17 | void-live-kde-unofficial-x86_64-6.5.13_1-20231217.iso | PASS |
void-pi creates the following Btrfs subvolumes with a flat layout:
Subvolume name | Mounting point | Mount options |
---|---|---|
@ |
/ |
|
@snapshots |
/.snapshots |
nodev,noexec,nosuid + nodatacow |
Subvolume name | Mounting point | Mount options |
---|---|---|
@ |
/ |
|
@home |
/home |
nodev,nosuid |
@snapshots |
/.snapshots |
nodev,noexec,nosuid + nodatacow |
Subvolume name | Mounting point | Mount options |
---|---|---|
@ |
/ |
|
@home |
/home |
nodev,nosuid |
@opt |
/opt |
nodev |
@srv |
/srv |
nodev,noexec,nosuid + nodatacow |
@var |
/var |
nodev,noexec,nosuid |
@var-cache-xbps |
/var/cache/xbps |
nodev,noexec,nosuid |
@var-lib-ex |
/var/lib/ex |
nodev,noexec,nosuid + nodatacow |
@var-log |
/var/log |
nodev,noexec,nosuid + nodatacow |
@var-opt |
/var/opt |
nodev,noexec,nosuid |
@var-spool |
/var/spool |
nodev,noexec,nosuid + nodatacow |
@var-tmp |
/var/tmp |
nodev,noexec,nosuid + nodatacow |
@snapshots |
/.snapshots |
nodev,noexec,nosuid + nodatacow |
Dataset name | Mounting point | Options |
---|---|---|
/ROOT/void |
/ |
canmount=noauto, atime=off |
Dataset name | Mounting point | Options |
---|---|---|
/ROOT/void |
/ |
canmount=noauto, atime=off |
/home |
/home |
atime=off |
Dataset name | Mounting point | Options |
---|---|---|
/ROOT/void |
/ |
canmount=noauto, atime=off |
/home |
/home |
atime=off |
/opt |
/opt |
atime=off |
/srv |
/srv |
atime=off |
/tmp |
/tmp |
com.sun:auto-snapshot=false, atime=off |
/var |
/var |
canmount=off, atime=off |
/var-lib |
/var/lib |
canmount=off, atime=off |
/var-cache-xbps |
/var/cache/xbps |
com.sun:auto-snapshot=false, atime=off |
/var-lib-ex |
/var/lib/ex |
atime=off |
/var-log |
/var/log |
atime=off |
/var-opt |
/var/opt |
atime=off |
/var-spool |
/var/spool |
atime=off |
/var-tmp |
/var/tmp |
com.sun:auto-snapshot=false, atime=off |
/
(size: whole device)/
(size: 20GB)/home
(size: remainder)All default settings can be changed via Common Attrs
sub-menu.
/mnt/btr_pool
/dev/sdX1
is the root filesystem (size: whole device)/dev/sdX1
is the BIOS boot sector (size: 1M)/dev/sdX2
is the root filesystem (size: remainder)/dev/sdX1
is the EFI system partition (size: 550M)/dev/sdX2
is the root filesystem (size: remainder)extra_attr,inode_checksum,sb_checksum,compression,encrypt
Name | Provides | Included in Void ISO? |
---|---|---|
dialog | ncurses user input menu | Y |
gptfdisk | GPT disk partitioning with sgdisk | N |
lz4 | Extremely Fast Compression algorithm | N |
snooze | cron replacement | N |
btrbk | Tool for creating snapshots | N |
grub-btrfs | Add a btrfs snapshots sub-menu to GRUB | N |
zfs | ZFS filesystem | N |
This software is released under the GNU GPLv2 license.