gliff 0.3.0 compiles natively on aarch64 and its workspace tests pass;
its x86 SIMD paths have scalar fallbacks. openh264 only invokes nasm for
x86 targets, so nasm becomes an x86_64-only makedepend.
A fast, keyboard-driven charting app for Omarchy, built on GTK4 and
libadwaita. It follows the active Omarchy theme, generates an indicator
palette for whichever theme is in force, and ships a plugin for the bar.
Source build from the project's own tagged release, tracked by a GitHub
watch so version bumps come from the release feed. Not in the AUR.
Pins omarchy-mac-pkgs 5b2c815: follows omacom/omarchy#14431's aarch64-apple
platform name and skips the Electron GL wrapping on a runtime without its
helpers.
Omarchy enables omarchy-usb-authorization.service and
omarchy-thunderbolt-authorization.service from first-run, and the
Thunderbolt one from its setup command and a migration. The settings
packages left both only in /usr/share/omarchy/default/systemd/user, where
systemd does not look.
On edge the Thunderbolt migration (1790344599) therefore fails with "Unit
omarchy-thunderbolt-authorization.service does not exist" and every later
migration stays pending. First-run fails as well and enables none of its
units.
Install both in /usr/lib/systemd/user, wherever the source has them: the
4.0.4 release does not, so its package is unchanged.
Buzz (https://github.com/block/buzz, Apache-2.0) is a Tauri desktop app
on a Nostr relay. Upstream ships Linux builds for x86_64 only, so this
builds the desktop-v0.5.28 tag from source for x86_64 and aarch64,
following upstream's release-linux job: the six sidecar binaries from
the root workspace, then the app with --features mesh-llm. The updater
stays compiled out (its key and endpoint are unset), so pacman owns
updates. On the fast ring; the watch follows desktop-v* releases.
On aarch64, -march gains +crypto so sha2-asm can assemble its SHA
instructions; sha2 still detects them at runtime.
Built natively for aarch64 with bin/build and launched with isolated
HOME/XDG dirs: the window opens and renders the bundled frontend.
MediaPipe 1.1.0 links its SQLite memory and vector stores from prebuilt
archives built with Google's internal toolchain. They have no archive symbol
table, and once indexed they still need Google's libc++ (std::__u) and
internal symbols (__alloc_token_*__Znwm, sqlite_helpers, sqlite3_vector_init),
so the link of libmediapipe.so fails. Drop the semantic retriever's C API from
the library; mediapipe and its other tasks import and work as before.
sync-upstream.yml, sync-rebuilds.yml and track-branches.yml each opened one
batch PR, so one package with a failing build held back every other update
in it (#788, #837). All three now group their changes with
package-pr-groups.sh and hand them to package-prs.yml, which opens a PR per
package and arms auto-merge. Packages pinned from the same upstream branch
still share one. Green packages land on their own and only the failures stay
open; a red PR conflicting with master, and each lane's old batch PR, get
closed.
sync-upstream.yml loses its human-merged lane: it now pushes with the PAT
like the other two, so its builds start without an approval hold and its PRs
auto-merge when green. min_release_age still quarantines fresh releases. Its
approve job, approve-sync-push.cjs, and auto-merge-pr.cjs's exception for
auto/sync-upstream go with it.
The branch tracker stalled omarchy-dev and omarchy-settings-dev twice in a
week:
- All ~50 auto_merge packages rode one PR, so omasnap-git's failing smoke
suite kept the quattro pins unmerged from Oct 4 to Oct 8 (#788). Each
package now gets its own PR on auto/track-branches-<package>; packages
pinned from the same branch share one, since they move in lockstep. A run
closes tracker PRs that master has moved past, and the old single PR.
- A branch tip younger than min_release_age held the whole branch, so a
run that landed shortly after a quattro commit pinned nothing. The watch
now falls back along first-parent history to the newest commit that has
cleared the window, measured from clone time so siblings agree.
- The every-2-hours schedule fired every 6 to 9 hours in practice; run it
hourly.
The self-tests, the build-isolation fixture and the three tracker
workflows pulled archlinux:base-devel from Docker Hub without logging
in. On 2026-10-09 that failed two jobs on one pull request: one with
'toomanyrequests', one with a 504 from Docker Hub's token endpoint.
Arch publishes the same image as ghcr.io/archlinux/archlinux, which
GitHub's runners pull without that limit.
The tracker opens its PR and then labels it, so a new tracker PR starts
two build runs at once. The second cancelled the first, whose always-run
`result` job then failed and left a red required check on the PR (#901)
until the surviving run finished. The tracker also force-pushes every two
hours, which would cancel long builds the same way the sync branches did.
Treat auto/track-branches like auto/sync-*: the newer run waits and
reuses the finished build's artifacts.
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* Auto-merge upstream updates for trusted packages
The unattended lane already runs every upstream provider, not only branch
watches, so trusted release feeds can ship without waiting on the reviewed
sync PR. Opt in the browsers, large vendors' apps, Omacom's own projects,
and the vendor binaries that hold fresh releases for 24h: 39 packages,
including rawmakase-bin and gliff.
Drivers, firmware, the bootloader, core desktop components, beta and
nightly channels, and community projects stay on the reviewed lane.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Auto-merge grok-bot, perplexity, disktree-bin, cliamp, openclaw, voxtype-bin and ttfx
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
power-profiles-daemon only drives intel_pstate, amd_pstate and ACPI
platform_profile, so ARM laptops on cppc_cpufreq (NVIDIA N1X, Snapdragon X)
get placeholder profiles that change nothing and no performance profile.
This packages upstream 0.30 with a CPPC driver patch: balanced (EPP 64) and
power-saver (EPP 192) use CPPC autonomous frequency selection, performance
runs the performance governor. The driver only claims policies with the
schedutil and performance governors and writable autonomous selection knobs,
restores probe-time settings if the first activation fails, and reapplies the
profile on resume. The package provides and conflicts with
power-profiles-daemon, and fixes the powerprofilesctl shebang at package time
so Omarchy no longer needs to sed it.
Tested on an NVIDIA N1X laptop: median keystroke-to-frame latency in Chromium
went from ~130ms (schedutil) to ~56ms on balanced at the same idle power, and
~32ms on performance, which Omarchy selects on AC. All 137 upstream tests
pass, including five new CPPC tests.
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* Add ghost: an owner-local AI persona with an Omarchy-native HUD
Ghost (https://github.com/ferdousbhai/ghost, Apache-2.0) is a local AI
persona for Omarchy: a daemon on 127.0.0.1, a Quickshell HUD summoned
with Super+Ctrl+G, a `ghost` CLI, an opt-in Chromium relay, and a
computer-use helper. The package builds from the v0.1.0 GitHub release's
sanitized source archive plus its prebuilt Bun runtime archive; the
`.omarchy/package.json` upstream block follows later releases the same
way. check() runs the project's own test suite against the payload.
Built locally with `makepkg --cleanbuild` from these exact inputs on
Omarchy 4.0.0.alpha: ghost-0.1.0-1-x86_64.pkg.tar.zst.
* ghost 0.1.1: arch=('any'), one runtime archive for every architecture
The payload is Bun-target JavaScript with no native modules; verified
on aarch64 under emulation (ferdousbhai/ghost#52). The runtime archive
is now named linux-any and listed with the source tarball under
sources.any.
* ghost: 0.1.2
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017TQbyws7icrhj7H7V7yi6v
* ghost: 0.2.0
* ghost: 0.2.1
* ghost: 0.2.2
* ghost: 0.2.3
* ghost: 0.3.0
* ghost: 0.4.0 with independently installable runtime
* ghost: 0.4.1
* ghost: 0.4.2
* ghost: 0.4.3
* ghost: 0.5.0
* ghost: 0.5.1
* ghost: 0.5.2
* ghost: 0.6.0
* ghost: 0.6.0-2, declare ripgrep for package checks
check() in the 0.6.0 source runs packaging tests that need rg, and the
clean build container does not have it, so every build since 0.5.0 stopped
with "ripgrep is required by package checks but is not installed".
Same version, so pkgrel goes to 2 (ghost e97eb09 carries the same
checkdepend for the next release's render).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
Recreate pacman's local signing key before upgrading packages so keyring install scripts can sign trusted keys. Keep the key out of the builder image and exercise keyring population with a keyless test image.
* Add linux-aarch64-pkgbase-shim
Arch Linux ARM's kernel packages install the kernel as /boot/Image and ship
no usr/lib/modules/<ver>/{pkgbase,vmlinuz}, which is how mkinitcpio and
limine-entry-tool find kernels. One pacman hook, ordered 85- so it runs
before 90-mkinitcpio-install, writes both files into every package-owned
modules directory that lacks pkgbase; the usual hook then builds the UKI and
writes the Limine entry. It also covers kernels already present when the
shim itself is installed, cleans up the leftover directories of removed
kernels, and never touches a directory that has pkgbase, so it retires by
removal once archlinuxarm/PKGBUILDs#2215 (or its successor) lands.
Added to the aarch64 workflow's ISO package set.
* linux-aarch64-pkgbase-shim: leave the rebuild to limine-update when the 90 hook is masked
omarchy-iso's installer points 90-mkinitcpio-install.hook at /dev/null in
the target during the chroot phase and runs limine-update itself afterwards.
When the shim is installed in that phase it writes pkgbase and vmlinuz and
would otherwise start a UKI build that finalize_limine_boot throws away.
* linux-aarch64-pkgbase-shim: pkgrel 2
The aarch64 repo build only rebuilds packages whose version moved, so the
previous script fix never reached the repository.
* Trim aarch64 kernel shim comments
* Refresh shim kernel images safely on reinstall
* Run package regression suites in existing CI
* Cover shim ownership and failed-copy handling
* Handle shared kernel-directory ownership in the ARM boot shim
* Limit the CI change to the package test scripts
* Warn when a kernel directory's pkgbase names another package
---------
Co-authored-by: Jimmy Van Veen <jimmy.van.veen@gmail.com>
Co-authored-by: Jim Martin <jimmartin@gmail.com>