Skip to content

Confine Quattro overwrite to ownership bootstrap - #9072

Draft
ryanrhughes wants to merge 2 commits into
masterfrom
fix/quattro-ownership-bootstrap
Draft

Confine Quattro overwrite to ownership bootstrap#9072
ryanrhughes wants to merge 2 commits into
masterfrom
fix/quattro-ownership-bootstrap

Conversation

@ryanrhughes

@ryanrhughes ryanrhughes commented Aug 30, 2026

Copy link
Copy Markdown
Collaborator

Release gate: do not merge yet

This 3.x stable bootstrap must not merge until the fixes in #9070 and omacom/omarchy-pkgs#239 have shipped together as v4.0.2. Merging it earlier could send a 3.x user through the ownership transition with the older 4.0.1 package payload.

What changed

  • The 3.x to Quattro upgrader uses --overwrite='*' exactly once, only while installing omarchy-settings to adopt the known legacy configuration paths.
  • The core package install, audio transition, and final package sync use normal Pacman semantics with no overwrite.
  • Stable, rc, and edge upgrades select their matching package repositories; rc uses the production release-candidate pair and dev packages are edge-only.
  • A focused regression test prevents wildcard overwrite from spreading back into steady-state installs.

This is only the legacy launcher side of the transition. #9070 supplies the Quattro-side fail-closed updater and exact legacy cleanup, while omacom/omarchy-pkgs#239 supplies the package-owned static system state.

Proof

bash test/upgrade-to-quattro-ownership-test.sh

Rollout

After v4.0.2 is published, merge this PR. Existing 3.x stable users should run omarchy update before selecting the Quattro upgrade so their branch-local launcher contains this constrained ownership bridge. The official https://omarchy.org/upgrade-to-quattro endpoint already fetches the Quattro implementation directly.

Companion 3.x channel PRs: rc #9073 and dev #9071.

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