Commit Graph
19 Commits
Author SHA1 Message Date
Ryan Hughes dbb5e72051 Build fast-ring for rc as rc, instead of copying stable's artifacts
The rc channel's Arch base can sit anywhere between stable's snapshot and
edge's, so a package built against stable's libraries is not necessarily
correct for rc. Copying stable's fast-ring artifacts into rc therefore shipped
possibly-mislinked packages to RC testers. Fast-ring packages now build
natively for all three channels, each in its own image against its own base
mirror, and the stable release's replication step is gone.

That required separating 'may be built here' from 'whose version wins'. The
release pair is now marked "pinned": its version is set per release on the rc
branch, so it builds for rc only from that branch's worktree
(OMARCHY_RC_PINS=1, set by omarchy-release rc) — master's shipped pins can
never overwrite an in-flight RC, even though check-versions now discovers rc
work like it does for edge and stable.
2026-08-27 12:39:29 -04:00
Ryan Hughes 26bde8fae3 Add channels metadata: membership and build-channel rules for edge/rc/stable
A package's .omarchy/package.json may now pin where it lives with
"channels": [...]. With the key present the package builds in each listed
channel except stable (stable is only fed by promotion); without it, today's
defaults hold (build for edge; fast-ring also builds stable directly).

package_moves_to_channel() is the advance/promote eligibility rule: a member
of the destination channel that is not built there natively.

The release pair (omarchy, omarchy-settings) is edge+rc+stable — edge stays
during the client-migration overlap window and drops later. The dev pair is
pinned to edge only.
2026-08-27 01:10:33 -04:00
David Heinemeier Hansson 044e81c636 Release omarchy 4.0.1 2026-08-25 13:04:07 +02:00
David Heinemeier Hansson 4db463cf3c Release omarchy 4.0.1rc5 2026-08-25 12:17:41 +02:00
David Heinemeier Hansson bf1f3e0d8e Release omarchy 4.0.1rc4 2026-08-25 09:28:21 +02:00
David Heinemeier Hansson 405576f4e9 Release omarchy 4.0.1rc3 2026-08-24 22:00:51 +02:00
David Heinemeier Hansson cc2413f0f3 Release omarchy 4.0.1rc2 2026-08-24 20:12:38 +02:00
Ryan Hughes e5fb86e53d Release omarchy 4.0.1rc1 2026-08-23 20:14:52 -04:00
David Heinemeier Hansson bb66b9dafc Release omarchy 4.0.0 2026-08-14 08:23:21 -07:00
David Heinemeier Hansson 85551de4f0 Release omarchy 4.0.0rc6 2026-08-14 08:13:27 -07:00
David Heinemeier Hansson c24302e65e Release omarchy 4.0.0rc5 2026-08-14 00:31:33 -07:00
David Heinemeier Hansson e4e7b9abf9 Release omarchy 4.0.0rc4 2026-08-13 13:53:24 -07:00
David Heinemeier Hansson 84b86195cd Release omarchy 4.0.0rc3 2026-08-13 06:54:43 -07:00
David Heinemeier Hansson aa53101b3e Release omarchy 4.0.0rc2 2026-08-12 14:32:02 -07:00
David Heinemeier HanssonandClaude Opus 5 2aa5c50e65 Install omarchy-crash-watch.service into /usr/lib/systemd/user
#6746 added the unit, the binary, the enable-user-units.sh entry, and a
migration, but not the install line here -- so omarchy-settings shipped
omarchy-crash-watch.service only into the default/ template tree and never
into the search path systemd actually reads.

install/user/first-run/enable-user-units.sh enables its six units in a single
`systemctl --user enable --now` call, so the missing unit failed the whole
call. omarchy-provision-first-run only marks first-run-user when every step
succeeds, which meant first-run never completed and replayed on every login,
re-firing the "Learn Keybindings" and "Update System" notifications. Because
enable is atomic, it also left the other five units disabled -- no bluetooth
agent, sleep lock, monitor recovery, migrate notifier, or fcitx5.

Migration 1786539345 falls back to writing the wants symlink by hand when
there is no live user manager, pointing at the /usr/lib path this omission
left empty, so existing installs got a dangling symlink too.

No new migration is needed: affected installs retry first-run on the next
login and succeed, and the dangling symlinks resolve as soon as the file
exists at that path.

test/shell.d/config-test.sh already asserts this install and fails without it.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Jm1hEGtGRUrfqxMbTi1fWe
2026-08-12 23:08:13 +02:00
David Heinemeier Hansson 058eb6392a Release omarchy 4.0.0rc1 2026-08-12 11:34:32 -07:00
Ryan Hughes f8d8671514 Release omarchy 4.0.0beta3 2026-08-12 00:13:36 -04:00
Ryan Hughes 9323f13db1 Release omarchy 4.0.0rc1 2026-08-11 23:36:37 -04:00
Ryan Hughes 0daad9992a Add commit-pinned release packages omarchy and omarchy-settings
Stable-track counterparts of the -dev packages. Source is pinned to a
single shared upstream commit with a real sha256 (pacman 7 validates
checksums on commit-pinned git sources), versioned per the attached-rcN
convention so vercmp orders rc1 < rc2 < final. Seeded at 4.0.0rc1 from
the quattro tip because no upstream 4.x tag exists yet and the packaging
requires the quattro tree (v3.8.x has no shell/ or etc/).

Both packages stay off the fast ring: RCs publish to edge only; stable
receives finals via bin/repo migrate.
2026-08-11 21:21:10 -04:00