The starch mark: two open strokes forming a mountain

starch

Start Arch

A configured Arch + Hyprland desktop, installed from one image — without replacing how Arch manages packages or how Hyprland is configured.

Download the ISO

2026.10x86_64UEFI~4 GB

The idea

Arch gives you a great deal: a current system, an honest package manager and the best documentation in Linux. What it does not give you is a desktop. You are handed a console and the job of assembling one.

Hyprland is the same trade one level up. It is an excellent compositor and it ships almost no opinions — a bar, a launcher, notifications, a lock screen, idle handling, screenshots, clipboard history and audio are all separate programs you choose, install and wire together yourself. That assembly is the work, and it is much the same every time.

starch does the assembly. It installs Arch the way the install guide does, then puts a desktop on top that is already wired together, and leaves the system working the way Arch and Hyprland normally do.

starch is a starting point, not a layer. It sets the desktop up; it does not stand between you and the system afterwards.

starch does not take over

starch stays on the machine — the desktop it configured is yours to keep, change or throw away. What it does not do is replace how Arch and Hyprland already work:

No custom repository

Every package comes from the official Arch repositories. The one exception is Broadcom bluetooth firmware, from the AUR, and only on a Mac.

No hooks or agents

Nothing runs that you did not put there. No self-updates.

No framework to learn

Updates are pacman -Syu, the same as any Arch install, and the Arch wiki is the documentation.

The desktop it leaves is a set of plain files in ~/.config, where Hyprland and everything else already look for them. You can read, edit or delete any of it, and the comments in those files explain what each choice does and why — a starting point you can learn from rather than a black box you maintain around.

Packages are still pacman's. Configuration is still Hyprland's own files. Nothing was wrapped, and nothing needs starch to keep running.

An install is native Arch

What starch installs is the system you would get by following the Arch install guide by hand and then running the desktop's own setup script: the same packages, the same enabled services, the same files in /etc. The installer runs what the guide runs — pacstrap, genfstab, a locale, a user, systemd-boot — rather than copying itself onto your disk.

The image carries every package the install can ask for, so it needs no network. They are checked against Arch's own signatures, exactly as a mirror's would be.

It adds five things a hand install would not, each on purpose: a boot splash, a shell in emergency mode (root is locked), a larger console font on high-density panels, Broadcom bluetooth firmware on Macs, and its own install log in /var/log. Nothing else of it stays behind.

What you get

A Wayland desktop that is configured rather than assembled — 137 packages from the official repositories, wired together and commented.

Compositorhyprland, launched through uwsm
LoginSDDM, themed to match the lock screen
Barwaybar
Launcherwofi
Notificationsmako
Terminalfoot
Browserfirefox
Editorsneovim, vim
Filesthunar + gvfs + udiskie
Lock, idle, wallpaperhyprlock, hypridle, swaybg
AudioPipeWire + WirePlumber
GraphicsMesa, plus the driver for your detected card
Screenshotsgrim + slurp + swappy
Clipboardwl-clipboard + cliphist
On-screen displayswayosd, for volume and brightness
Settingslucent-config — scale, idle, input, theme
Themes15, switched live with SUPER+SHIFT+T

Old hardware, and new

The image carries every graphics vendor's driver and the Broadcom wireless one, because it cannot know what it will be installed onto. Once the hardware is known, what it rules out is removed — an AMD laptop does not keep 900 MB of NVIDIA userspace.

Intel MacBooks, pre-T2

The Broadcom wireless in a 2011–2015 MacBook Pro is the usual reason Linux comes up with no network. The card is identified by its PCI id and given the driver that actually drives it, with the other one kept out of the way. BCM20702 bluetooth firmware ships too.

NVIDIA

nvidia-open-dkms with the pieces Wayland needs — egl-wayland and libva-nvidia-driver — not just the kernel module.

AMD and Intel

Mesa with vulkan-radeon or vulkan-intel, and intel-media-driver for hardware video decode on Broadwell and later.

Hyprland is a compositor, a bar and a launcher rather than a desktop environment, so there is not much running that you did not ask for. The same image is the right one for a 2013 laptop and for a current workstation.

T2 Macs are not supported. Models from 2018 on need kernel patches for their keyboard, trackpad and audio that this image does not carry, and no amount of driver detection substitutes for them.

Use the app, or edit the files

Hyprland is configured in files, and starch does not hide that. It also ships lucent-config, a settings app on SUPER + I, covering the settings that are genuinely awkward to hand-edit: display scale, resolution and refresh rate, idle and lock timeouts, what the lid does, keyboard and touchpad behaviour, and the theme, wallpaper, cursor and font.

Both routes are first-class, because they are the same files. The app writes ordinary Hyprland configuration you can open, read and change by hand afterwards — and if you would rather never open it, nothing needs it.

It owns three files

monitors.lua, hypridle.conf and settings.lua — generated, rewritten whole, previous version kept as .bak.

It never touches yours

input.lua, theme.lua, keybinds.lua and the rest are hand-written and stay that way. Edit them freely.

Deleting it reverts

settings.lua loads last, so it overrides the defaults. Remove it and you are back to the shipped configuration.

One setting is worth the app on its own. A display scale is legal only if it divides the resolution into whole pixels; Hyprland accepts any number and then quietly snaps to one that does, so a config can say 1.5 while the session runs at 1.6. The scale menu lists only the values that are actually legal for your mode.

Write it to a USB stick

Replace /dev/sdX with your stick, and check it is a block device before you write to it — the guard below is not decoration, it is the difference between writing to a disk and writing to a file.

# confirm which device is the stick
lsblk -o NAME,SIZE,TYPE,RM,MODEL

DEV=/dev/sdX
# refuse to continue unless that really is a block device
[ -b "$DEV" ] || { echo "REFUSING: $DEV is not a block device"; exit 1; }

sudo dd if=starch-2026.10-x86_64.iso of="$DEV" bs=4M status=progress oflag=direct conv=fsync
sync

Boot it and the installer starts. It asks four things — keyboard, disk, account and a final review — and writes nothing until you confirm. The disk can be erased or the install put in free space beside another system, and encrypted with LUKS2 if you choose.

Get it

One file. Write it to a stick, boot it and answer four questions. After a restart the machine is running Arch, with the desktop configured.

Download the ISO

2026.10x86_64UEFI~4 GB

sha256 checksum