dotfiles/distros/void.md

57 lines
1.9 KiB
Markdown

# Facilitating the installation of Void Linux
Running `void.sh install_most` installs the stuff that's the bare minimum for my
setup.
Inside `void.d` configuration files for dracut and the kernel tasks in Void can
also be found, as well as a file for setting up all the necessary system
services.
## Installation steps
### Partitioning and creating filesystems
Partitioning was manual. A UEFI setup can have only an ESP partition and the
main user one. Partitioning can be done with either `gdisk` (more CLI-y) or
`cfdisk` (more TUI-y). The ESP partition should be formatted as FAT32, and the
user one should be made into a LUKS2 volume via
````````
cryptsetup --type luks2 luksFormat /path/to/device
````````
This will ask you for the desired password and encryption scheme.
To open the LUKS volume, run
````````
cryptsetup open /path/to/device mappername
````````
This will create a device in `/dev/mapper` named `mappername`. This device can
then de formatted with your filesystem of choice. I tend to go either with
Brtfs, ext4 or F2FS. The last two support per folder encryption if you want to
have another layer of protection (can be specially relevant in a multi-user
setup). Formatting is done by
````````
mkfs.filesystem /path/to/device [-O encrypt]
````````
The filesystem should now be ready to be used!
### Installing the root filesystem
The current installation setup was made by downloading a ROOTFS image from the
[Void Linux download page](https://a-hel-fi.m.voidlinux.org/live/current/) and
untarring it into the root of the desired filesystem.
````````
tar xvf void-x86_64-ROOTFS-20191109.tar.xz
````````
TODO: chroot into, DNS, install basic stuff (iwd and neovim, mostly), install
Linux, create initramfs, reboot, log into root, allow wheel to access stuff,
create user with certain groups, init fscrypt (copy rules from Arch Wiki), git
clone package, stow stuff, run startsway.