Skip to content

My personal Arch Linux install script using LUKS2 encryption, LVM and btrfs with optional RAID1.

License

Notifications You must be signed in to change notification settings

leomeinel/arch-install

Repository files navigation

arch-install

My personal Arch Linux install script using LUKS2 encryption, LVM and btrfs. With optional RAID1.

Meant for general purpose systems with a GUI.

Info

⚠️ | All data on selected disks will be wiped!

ℹ️ | Expect errors or warnings to occur during the installation. They only matter if any of the scripts don't finish successfully.

ℹ️ | I recommend disks with at least 512GiB. change DISK_ALLOCATION in install.conf otherwise.

ℹ️ | I recommend at least 16GiB of RAM. By specifying TMPDIR manually before running post.sh to force nix to not use the tmpfs, you might be able to circumvent this. Also see these issues: (1) and (2).

❗ | Follow these instructions for installing to virt-manager.

❗ | Follow these instructions for installing via ssh.

Pre-installation

Follow the Pre-installation section of this guide until (including) the Connect to the internet section.

Installation

ℹ️ | <...>.sh |& tee <logfile>.log will create a log file automatically.

pacman -Sy git
# Instead of main, you can also use a tag
git clone -b main https://github.com/leomeinel/arch-install.git
chmod +x /root/arch-install/prepare.sh
# Modify install.conf before executing prepare.sh
vim /root/arch-install/install.conf
/root/arch-install/prepare.sh |& tee ./prepare.sh.log && mv ./prepare.sh.log /mnt
arch-chroot /mnt
/git/arch-install/setup.sh |& tee ./setup.sh.log
exit
umount -AR /mnt
reboot

Post-installation

ℹ️ | If installing to virt-manager skip ¹.

¹Enable Secure Boot Setup Mode in UEFI Firmware Settings.

¹Set your UEFI password(s) and reboot.

Log into SYSUSER account and run:

~/post.sh |& tee ./post.sh.log
doas reboot

¹Enable Secure Boot in UEFI Firmware Settings.