makepkg runs check() inside the build container and meson writes each
test's output to the build tree, not to stdout. A failing test therefore
leaves only a summary line in the job log. Diagnosing it means reading
the package source and inferring the cause.
bin/build bind-mounts $SRC_DIR at /src, so the logs outlive the
container at src/**/meson-logs/ on the runner. Upload them when the
build step fails.
owe 0.2.7 showed the cost: owe:transition failed on aarch64 and passed
on x86_64, and CI carried no record of which assertion tripped.
Co-authored-by: Bjarne Oeverli <1419214+bjarneo@users.noreply.github.com>
strata: the example actions' image test needs ImageMagick with WebP
(checkdepends), the checksum example dies printing a non-UTF-8 name
under the builder's en_US.UTF-8 locale (upstream bug, skipped), and on
aarch64 a search refresh test loses a race to the index worker.
flea: on aarch64 the 1900-deep dirsize walk hits its 2 s deadline, and a
process-group cancel test loses its 5 s race under emulation.
owe: on aarch64 the transition test cannot render enough blended frames
under emulation; run every other test there.
Versions and checksums as in sync PR #660.
Three things kept the upstream sync PR (#589) from ever finishing a build:
Scoped dispatches wiped the shared PR. A workflow_dispatch with `packages`
regenerates only those packages from master, and pushing that to
auto/sync-upstream replaced 38 pending updates with one. Scoped runs now
push to their own auto/sync-{upstream,rebuilds}-<packages> branch and PR;
scheduled runs keep the shared branch.
build-approved stopped working after the first bot push. A GITHUB_TOKEN
push creates pull_request runs held for approval but no pull_request_target
run, so approve-pr.yml never saw it: its last run on the branch was the
label itself (2026-09-25T19:26), and each of the next four syncs sat at
action_required. The sync workflows now release the held runs for the
commit they just pushed, from a separate job holding actions: write, and
only for their own bot-authored, same-repo PR while build-approved is on
it.
Each approved push cancelled the in-flight build. Approving the 21:43
sync's build cancelled the label-triggered one still queued on strata and
schist-bin. On auto/sync-* branches a new build now waits for the running
one instead, then reuses its artifacts. The approval script no longer
waits for a lone approved build to start before releasing tests, which a
queued build would have turned into a timeout.
TMOG 1.0.0 moved the site under /rtm/ and publishes each Linux tarball
under a versioned name with a .sha256 sidecar. The versionless
/downloads/TMOG-Task-Manager-Linux-x86_64.tar.gz path the hook fetched
now returns 404, so every upstream sync since 1.0.0 has failed.
Point source=() at the versioned tarball and have the hook read the
version from /rtm/version.txt and the checksum from the sidecar, which
drops the 8 MB download and the directory-name check the mutable URL
needed.
set_pkgbuild_array ended its skip over the old array at the first line
holding a ")", comments included. voxtype-bin annotates its arrays with
"# Quickshell OSD launcher + audio-bridge sidecar (new in v0.7.5)", so
the rewrite stopped there and left the rest of the old array behind a
stray ")". Every scheduled sync since voxtype 1.1.0 failed with
"Rewritten PKGBUILD is not valid shell".
Strip comments before looking for the closing paren, add a self-test
fixture that fails on the old awk, and take the update it was blocking:
voxtype-bin 1.0.1 -> 1.1.0.
The deb's /etc/cron.daily/microsoft-edge runs a script that writes an
apt keyring to /usr/share/keyrings every day. pacman doesn't track that
file, so it stays behind after Edge is removed. Remove the cron job and
its script the way the Chrome recipe already does, and skip the empty
/etc left behind. pkgrel 2 so this build replaces AUR-installed copies.
Found in a Codex review.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
omarchy-install-browser still reaches for yay to install Chrome, Edge,
Brave, Brave Origin and Zen. These were the only packages anywhere in
Omarchy's installers and menus that aren't available from core, extra,
multilib or OPR. Serving them from OPR means installing any Omarchy
browser no longer depends on the AUR being up.
Imported once from the AUR with bin/add-package, on the fast ring so
browser security releases reach stable promptly, each with a direct
vendor watch:
- google-chrome: Google's stable apt index
- microsoft-edge-stable-bin: Microsoft's stable apt index
- brave-bin, brave-origin-bin: Brave's stable apt index. Brave's
GitHub releases can't be used because nightlies aren't marked as
prereleases there.
- zen-browser-bin: GitHub releases (the twilight tag doesn't match)
Package names match what Omarchy's scripts already check for, so the
existing omarchy-pkg-aur-add calls resolve to the repo package without
any change on the Omarchy side.
Validation: upstream-watch check reports all five as current. A sync
of downgraded copies of zen-browser-bin and brave-origin-bin reproduces
the checked-in pkgver and both architectures' checksums. All five build
with makepkg on x86_64, and the launchers, desktop IDs and /opt paths
match what omarchy-default-browser and omarchy-theme-set-browser use.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
ttfx releases are now published on GitHub only, so sync-upstream picks up new
versions through a github watch instead of ttfx's release script editing this
recipe. The recipe also points at the repository's current home, and x86_64
builds pull in NASM, which the new assembly engine needs (without it the
build silently falls back to the Rust engine).
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MxJcVYpBxFDam6czK4bGjp
Refresh the #16343 backport to carry the upstream follow-up that
matches llvmpipe/softpipe/Software Rasterizer with ASCII
case-insensitive, string_view-based matching.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Hype now publishes a GitHub release for every version, so declare its
v{pkgver} tags as the upstream feed. The scheduled sync picks up new
releases and hashes the tag archive, instead of a hand-written PR each
time. This first sync brings Hype to 0.4.2.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Carry a v0.56.2 backport of hyprwm/Hyprland#16343 so display-only KMS
drivers paired with llvmpipe are classified as software rendering.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The snapshot restore hooks under /etc/boot/hooks are symlinks, which the
backup list leaves out. omarchy-drive-password needs luks-slots only for the
system disk.
omarchy-lifecycle-dispatch requires reset-* (#552) and luks-slots (#553) on
Apple Silicon, so a runtime carrying them before this package blocks factory
reset, owner setup and omarchy-drive-password on Macs.
The boot check and, from #560, the snapshot restore check read the kernel out
of the Limine UKI with objcopy. mkinitcpio pulls binutils in today, but the
package calls it directly.
Moves the pin from f7ea7ecc to the head of quattro-upstream, which adds
#552's reset-prepare, reset-verify, reset-commit and reset-rollback
entrypoints, #553's luks-slots entrypoint and recovery key handling,
#556's encrypt unit output to kmsg at notice, and #560's snapshot restore
check with its limine-snapper-sync pre and post hooks. The pin's UTC date is
still 20260925, so pkgrel goes to 4. #544 is not in it, so the Plymouth
fragment still ships and no HOOKS baseline dependency applies.
Moves the pin from the boot-set integration commit to quattro-upstream,
which now has #541 with its review fixes (first boot hands off only for a
failed step, and the retry waits for NetworkManager), #543's update-verify
entrypoint, #545's provision entrypoints and #549's keyslot-only LUKS check.
#544 is not in it, so the Plymouth fragment still ships and no HOOKS baseline
dependency applies.
A pin with omacom/omarchy-mac#544 needs the settings HOOKS baseline (#542)
published first; a pin with #543's update-verify entrypoint must publish
before any runtime carrying #543. pkgrel 3 so this rebuild does not reuse the
published 20260925-2 filename.
From omacom/omarchy-mac#544 the Apple drop-ins no longer add Plymouth
themselves and build on omarchy-settings' 00-omarchy-hooks.conf (#536). A
settings version cannot express that (quattro candidates sort below stock
releases and omarchy pins its settings exactly), so a build whose payload has
no 93-omarchy-mac-plymouth.conf depends on the name
omarchy-mkinitcpio-hooks-baseline, which settings packages that ship the
baseline must provide.
Arch has no sudo group, so dbus-broker rejects that policy block by name on
every bus reload: "Invalid group-name in org.supergfxctl.Daemon.conf +9:
group=\"sudo\"". The block grants nothing here; the wheel policy in the same
file is what authorises an unprivileged user.
Remove the dead block with a checked-in patch and bump pkgrel.
Pin a09ee0ca, the head of omacom/omarchy-mac integ/boot-set-1 (#547): quattro-upstream with #527, #540, #545 and #541 merged. The package then carries the Apple provisioning entrypoints from #545 and can publish before those PRs merge.
groups=('omarchy-platform-apple-silicon') is the platform tag the pacman
platform guard reads (omacom/omarchy-mac#539); the package is not published
yet, so it carries the tag from its first build. The pin moves to 3a58abb5,
omacom/omarchy-mac#541 with #527's current head merged in.
CI builds a changed recipe and needs a new package; 4.0.4-1 is already
published. The pinned upstream source has no guard files, so 4.0.4-2 has the
same contents.
DRM.cpp needs more than 8 MiB of compiler stack. GCC raises its own limit
natively, but the aarch64 builder runs under QEMU user-mode emulation, which
fixes the guest stack at exec and ignores setrlimit, so cc1plus segfaulted.
Unpatched 0.15.1 fails the same way. QEMU_STACK_SIZE sizes it at exec; native
builds ignore it and the object code is identical.
Moves the pin to 602266c8, where first boot of a fresh image refuses to finish
without the build manifest that defers its hardware setup. asahi-scripts is
the one Apple-only dependency; the README no longer calls them all generic.