Order the Omarchy repository above Arch's - #7583
Draft
omarchybot wants to merge 1 commit into
Draft
Conversation
pacman stops at the first repository carrying a name and never compares versions across the rest, so with [omarchy] listed last, an Omarchy build of anything Arch also ships is unreachable: -S installs Arch's and -Syu reports nothing to do. Packaging something Arch is slow with -- yt-dlp, where a six week old build means downloads that simply fail -- only reaches users if the repository outranks extra. [core] deliberately stays first. Arch keeps the base system, and Omarchy takes precedence only over extra and multilib. The migration moves the section in an existing /etc/pacman.conf rather than copying the template over it, because that is what omarchy-refresh-pacman does and it also resets the channel and discards anything the user added. It reorders only when the section trails [extra], and it compares the file against itself afterwards, since a reorder moves lines and changes nothing else -- a result that differs by more than order means the parse misread the config, and it is left alone. The cost of this ordering is that a package Omarchy publishes has to stay ahead of Arch's. An older build no longer just sits there unused: -Syu stops offering the newer official package and the -Syyuu here downgrades to it. omarchy-pkgs grows a check for exactly that. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
pacman stops at the first repository carrying a name and never compares versions across the rest. With
[omarchy]listed last, an Omarchy build of anything Arch also ships is unreachable —pacman -Sinstalls Arch's andpacman -Syureports nothing to do.That is why packaging something Arch is slow with cannot work today. yt-dlp is the case in hand:
extrais six weeks behind upstream, and six weeks of missing extractor fixes means downloads that simply fail. omacom/omarchy-pkgs#178 packages it, but nothing installs it until the repository outranksextra.[core]deliberately stays first. Arch keeps the base system; Omarchy takes precedence only overextraandmultilib.The migration
Existing installs have
/etc/pacman.confwritten once at install time, so the templates alone change nothing for anyone who already runs Omarchy. The migration moves the section in place rather than copying the template over the file — that is whatomarchy-refresh-pacmandoes, and it also resets the channel and discards whatever the user added.It reorders only when the section trails
[extra], and it verifies its own result: a reorder moves lines and changes nothing else, so the file is compared against itself afterwards and left untouched if anything but the order changed. Tested against this machine's live config, the shipped edge/stable/rc templates, a config with no[omarchy]section, one with an extraUsage = Alldirective, and one with a trailing comment — content preserved in every case, byte-identical where there was nothing to do, and stable across repeated runs.What this costs, and the sequencing that matters
Ordering above Arch means a package Omarchy publishes must stay ahead of Arch's. An older build no longer sits unused:
pacman -S <pkg>pacman -Syupacman -Syyuuomarchy-refresh-pacmanrunsFour packages are in that state right now:
gpu-screen-recorder(5.12.3 vs extra's 6.0.0),intel-lpmd,pintaandumu-launcher(1.1.3 vs multilib's 1.4.4). They are harmless only because the current ordering hides them.So this must not merge until both are done:
bin/repo remove-packageon the repository host, for edge and stable both — includinggpu-screen-recorder, whose PKGBUILD is already gone but whose package is still in the repository database. Deleting the PKGBUILD stops rebuilds; it does not unpublish what is already there.Marked draft for that reason.