Skip to content

Offer and install the server edition - #175

Open
bartex wants to merge 7 commits into
omacom:quattrofrom
bartex:server-edition
Open

Offer and install the server edition#175
bartex wants to merge 7 commits into
omacom:quattrofrom
bartex:server-edition

Conversation

@bartex

@bartex bartex commented Sep 11, 2026

Copy link
Copy Markdown

Installer and ISO side of the server edition — companion to omacom/omarchy#11289 (which should land first: this branch installs the edition that PR ships).

What's in here

Configurator. An edition screen — desktop or server — asked once during configuration. Both revise paths re-ask it, so picking the wrong edition no longer means restarting the installer. One ISO carries both editions; --label tags build filenames so two builds of the same channel stay distinguishable.

Install dashboard. A server install announces itself: "Installing Omarchy Server".

SSH on from first boot. configure_ssh_access used to no-op entirely when no authorized keys were supplied, leaving sshd disabled and port 22 closed on a machine whose only door is SSH. On the server edition the door now opens regardless — sshd enabled, ufw limit rule written — while key installation stays conditional on keys being given.

Autologin behind LUKS. Encrypted server installs get an agetty --autologin drop-in on tty1, mirroring the desktop's SDDM rule: the LUKS passphrase is the auth boundary, so login lands straight on the BBS splash. Unencrypted installs keep the getty prompt as their auth screen.

Offline mirror. lazyjournal added for the server menu's logs door (packaged in the companion omarchy-pkgs PR).

Testing

  • ./test/all passes — 66 unit tests, including new coverage for the no-keys SSH path and both server login cases.
  • Full QEMU install loops from a locally built ISO: edition revise flow, server banner, first-boot SSH reachability, and LUKS-to-splash autologin all verified.

bartex and others added 7 commits September 10, 2026 17:07
The edition is a package list, a marker, and three steps the installer
skips. It rides in omarchy_install so an autoinstall drive answers the same
question in the same file, and it defaults to desktop, so a configuration
written before this existed installs what it always did.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Every local build shares the same channel and the same date, so the
filenames collide in release/ and there is no way to tell which checkout
produced which.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The server list names a package the published mirror has never carried, so
pacman went looking for it online and failed the build. Build it beside the
omarchy packages instead, and keep one list of what was built locally so the
download and the prune agree on what to skip.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Both revise paths in the user step jumped back past the edition
screen, so a caller who picked the wrong edition had no way to change
it without restarting the installer.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
A server install now says "Installing Omarchy Server" instead of the
generic banner.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
With no authorized keys the whole phase returned early, leaving sshd
disabled and port 22 closed on a machine whose only door is SSH. The
key installation stays conditional; enabling sshd and the ufw rule no
longer is.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The desktop's encrypted installs autologin through SDDM because the
LUKS prompt is the auth boundary. The server edition now gets the same
treatment with an agetty drop-in on tty1; unencrypted installs keep
the getty prompt as their auth screen.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant