Swaying

Installing Arch Linux with Sway is not complicated, but it is repetitive. Every time I set up a new machine I found myself going through the same steps: partition, install the base system, configure bootloader, install Sway and a pile of supporting packages, copy over dotfiles. Swaying automates that.

It's a shell script with a small TUI that walks through the installation in stages: partitioning, base system, general packages, and Sway-specific components. Each stage can be run independently, so you can use the parts you want without running the whole thing from scratch.

What gets installed

The default setup lands a complete Wayland desktop: Sway as the compositor, Waybar for the status bar, Rofi for launching apps, and Foot as the terminal. Audio is handled by Pipewire. For editing there's Neovim with LazyVim; the default shell is Fish.

The TUI exposes choices for the things that vary between machines: CPU microcode (AMD by default, Intel available), whether to install a Rust toolchain, Paru as an AUR helper, Mpd for music, and a few other optional extras.

Disk encryption

Full disk encryption is supported via LUKS. Plymouth handles the boot-time password prompt so you get a clean UI instead of a raw kernel message.

Custom ISO

There's also a target for building a custom Arch ISO with the installer baked in. Useful for having a ready-to-go installation medium without needing to pull the script down manually on a fresh system.

The code is on Codeberg.