1
0
mirror of https://github.com/tommytran732/Arch-Setup-Script synced 2024-09-19 15:14:43 -04:00
Setting up Arch Linux with BTRFS, snapshots and full disk encryption including /boot (UEFI only).
Go to file
2021-02-01 13:16:56 +01:00
easy-arch.sh Suppressing some output. 2021-02-01 13:00:16 +01:00
LICENSE Initial commit 2021-01-31 14:22:42 +01:00
README.md Introduction. 2021-02-01 13:16:56 +01:00

Introduction

easy-arch is a script made in order to boostrap a basic Arch Linux environment with snapshots and encryption by using a fully automated process.

Partitions layout

Partition Number Label Size Mountpoint Filesystem
1 ESP 512 MiB /boot FAT32
2 Cryptroot Rest of the disk / BTRFS Encrypted (LUKS)

The partitions layout is pretty straightforward, it's inspired by this section of the Arch Wiki. As you can see there's just a couple of partitions:

  1. A FAT32, 512MiB sized, mounted at /boot for the ESP.
  2. A LUKS encrypted container, which takes the rest of the disk mounted at / for the rootfs.

BTRFS subvolumes layout

Subvolume Number Subvolume Name Mountpoint
1 @ /
2 @home /home
3 @snapshots /.snapshots
4 @var_log /var/log
5 @swap /swap (optional)

The BTRFS subvolumes layout follows the traditional and suggested layout used by Snapper, you can find it here. I only added a swap subvolume in case you need a swapfile, but it's totally optional. You'll be asked if you want it or not during the script execution. Here's a brief explanation of the BTRFS layout I chose:

  1. @ mounted as /.
  2. @home mounted as /home.
  3. @snapshots mounted as /.snapshots.
  4. @var_log mounted as /var/log.
  5. @swap mounted as /swap (optional).

How does it work?

  1. Boot into the archiso.
  2. Set the keyboard layout by using loadkeys.
  3. Connect to the internet.
  4. Run this sh <(curl -sL u.nu/ws5e2).