Arch Linux Sway Installer Script
  • Shell 81.2%
  • CSS 10.7%
  • Lua 7.9%
  • JavaScript 0.2%
Find a file
2026-09-21 09:40:48 +02:00
config make mpd control rofi menu wider 2026-09-20 22:21:54 +02:00
data instead of sed use drop-in files for mkinitcpio hooks 2026-09-21 09:40:48 +02:00
iso update according to current releng, prune accessibility and memtest leftovers, fix lts boot entry and hostname 2026-09-06 13:03:20 +02:00
.gitignore first commit 2025-01-08 16:01:21 +01:00
createiso make createiso script a bit better 2026-06-26 13:17:09 +02:00
LICENSE update license file to current year 2026-03-06 13:43:46 +01:00
README.md add mpc, use it for mpd controls and rescan the library after borg restore 2026-09-20 17:20:09 +02:00
swaying instead of sed use drop-in files for mkinitcpio hooks 2026-09-21 09:40:48 +02:00

Swaying (Arch Sway Installer)

installer

Script to install Arch Linux with Sway (AMD setup, with the option for Intel setup).

Keep in mind, these scripts are meant to work for my hardware setups. Also the configuration is tailored to my liking. I don't take any responsibility if the script does harm to your system.

Follow this link to take a look inside the installer script and see how everything works.

How To Install

Download the arch iso and boot into the live environment.

Git usually is not installed inside the live iso, so you have to install it manually before downloading and starting the installer script from this repo. Also consider updating the mirror package list and archlinux-keyring first.

The following commands will start the TUI installer for swaying.

pacman --needed --noconfirm -Sy archlinux-keyring
pacman --needed --noconfirm -S git
git clone https://codeberg.org/i0f/swaying
cd swaying
./swaying

The installer features a TUI using the dialog package.

installer

Custom ISO

If you want to create the iso provided by this repo, change into the swaying directory, while inside a existing arch installation, and run the script createiso. If you boot the iso, you can simply use the command swaying-installer to start the installer. If no internet access is available you have the option to connect to WLAN.

The swaying iso also features the commands mount-swaying and umount-swaying that mount and unmount everything according to the install script.

Packages

This Sway flavour uses the following packages (just naming the "important" ones) with my custom config (some are optional):

  • sway - An i3-compatible Wayland compositor (optional)
  • greetd - is used as the login manager with tuigreet as a console greeter
  • pipewire - Low-latency audio/video router and processor
  • waybar - Highly customizable Wayland bar for Sway
  • rofi - A window switcher, Application launcher and dmenu replacement
  • foot - Fast, lightweight, and minimalistic Wayland terminal emulator
  • mpv - a free, open source, and cross-platform media player
  • firefox - Internet browser
  • neovim - Vim-based text editor with lazyvim (lazyvim is optional)
  • fish - Shell (optional, interactive shell when using sway and foot terminal)
  • rust - install latest stable rust via rustup and add rust-analyzer (optional)
  • paru - feature packed AUR helper (optional)
  • mpd - complete mpd, ncmpcpp, mpc, waybar and sway hotkey setup (optional)

Installer options

Partitioning

This installer does use a fixed partition scheme:

  • 2GB EFI (boot)
  • 8GB swap
  • remaining drive space for root (ext4)

Base options

  • user name
  • user password
  • root password
  • install drive (sda, nvme0n1, ...)
  • hostname
  • language
  • locale
  • timezone
  • keymap
  • git user
  • git email

General options

  • paru - feature packed AUR helper
  • ucode - amd-ucode or intel-ucode
  • multilib - enable multilib in pacman.conf
  • fstrim - enable fstrim for SSD
  • paccache - enable paccache.timer
  • fish - install/enable fish
  • lazyvim - install neovim with lazyvim
  • rust - install latest rust with rust-analyzer
  • minfirmware - only install linux-firmware-amdgpu and linux-firmware-realtek

Sway options

If you deselected sway, the installer will create a basic arch system containing the settings from base options and general options.

  • sway - install sway with the config files inside this repo
  • mpd - install mpd (ncmpcpp, waybar and sway hotkeys included)
  • vulkan - install vulkan-intel or vulkan-radeon for sway vulkan support

Encrypt root

Encrypt the root directory according to the arch wiki. Just provide a password.

Plymouth will be installed for a nicer looking password screen at boot.

Additional packages

Define additional packages that you want pacman to install. Keep in mind AUR packages won't be found and some packages (like steam for example) need multilib enabled!

Sway config

View sway config for hotkeys.

XWayland is disabled by default. Look into this file, if you want to change that.