easy arch mirror
Find a file
2022-07-02 09:04:30 +02:00
.github Update shellcheck.yml 2022-05-08 11:12:57 +02:00
_config.yml Set theme jekyll-theme-cayman 2021-02-01 13:12:01 +01:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2021-12-31 14:29:00 +01:00
easy-arch.sh Update easy-arch.sh 2022-07-02 09:04:30 +02:00
LICENSE Create LICENSE 2021-11-04 18:58:16 +01:00
README.md Clarity. 2022-05-29 15:01:01 +02:00

Introduction

easy-arch is a bash script that boostraps Arch Linux and configures it:

  1. BTRFS bootable snapshots from GRUB
  2. LUKS2 encryption
  3. ZRAM as swap
  4. systemd-oomd
  5. Autodetect VMs and provide guest tools (if available)

How does it work?

  1. Download an Arch Linux ISO from here
  2. Flash the ISO onto an USB Flash Drive
  3. Boot the live environment
  4. Set the keyboard layout by using loadkeys <kblayout>
  5. Connect to the internet
  6. Run either one of these (always check twice before piping internet downloaded scripts into bash):
Short version:
bash <(curl -sL bit.ly/easy-arch)
Long version:
bash <(curl -s https://raw.githubusercontent.com/classy-giraffe/easy-arch/main/easy-arch.sh)

Partitions layout

The partitions layout is simple and it consists of only two partitions:

  1. A FAT32 partition (512MiB), mounted at /boot/ as ESP.
  2. A LUKS2 encrypted container, which takes the rest of the disk space, mounted at / as root.
Partition Number Label Size Mountpoint Filesystem
1 ESP 512 MiB /boot/ FAT32
2 Cryptroot Rest of the disk / BTRFS Encrypted (LUKS2)

BTRFS subvolumes layout

The BTRFS subvolumes layout follows the traditional and suggested layout used by Snapper, you can find it here.

Subvolume Number Subvolume Name Mountpoint
1 @ /
2 @home /home
3 @root /root
4 @srv /srv
5 @snapshots /.snapshots
6 @var_log /var/log
7 @var_pkgs /var/cache/pacman/pkg