Commit Graph
1795 Commits
Author SHA1 Message Date
Spencer BullandCodex XHigh a2c3571672 Rebase the Cua Hyprland plugin on Driver 0.32.0 for Hyprland 0.56.2-4 (#772)
* Rebase the Cua Hyprland plugin on Driver 0.32.0 source

Driver 0.31.0 took the independent agent keymaps and Num Lock handling from #473 upstream, so independent-keymaps.patch goes. Upstream also added an up-front check that every key the KEY command can press types the US keysym, modifier keys included, which refuses all foreground typing under ctrl:swapcaps, compose:ralt, altwin:swap_alt_win or compose:102. foreground-remaps.patch makes that check run the per-chord check every key already passes over exactly the chords Driver types text with, with Num Lock off and on, so a string is still admitted or refused before its first key and other remaps are left to the per-chord check.

0.32.0 also gives agent keyboards a real repeat rate, which stops single-seat clients like imv crashing on an agent seat (trycua/cua#4257).

cua-driver-bin stays at 0.28.2, which speaks the same input protocol v3: Driver 0.28.3 through 0.32.0 refuse desktop capture on Hyprland with more than one output or with one away from the origin (trycua/cua#4161).

Co-Authored-By: Codex XHigh <noreply@openai.com>

* Keep restarting fcitx5 from crashing Hyprland under the Cua plugin

With plugin input enabled, fcitx5 requests an input method for each of the three seats, and when it exits Hyprland 0.56.2 can still hold an input-method popup that is mapped although its wl_surface is gone: the popup's surface-destroy handler emits unmap but never clears m_mapped. Tearing down the input method then updates every popup, CInputPopup::updateBox dereferences the missing surface and Hyprland restarts in safe mode. Omarchy's omarchy-restart-xcompose reaches this in normal use.

The plugin now hooks CInputPopup::updateBox and CInputPopup::shouldBeRendered so a popup whose getSurface() is empty is neither placed nor rendered, reports the guard in cua:status, and removes the hooks on unload. The guard is compiled into the module only, so the mock-based tests are unchanged. foreground-remaps.patch becomes downstream.patch now that it carries both changes.

* Pin the Cua Hyprland plugin to Arch's hyprland 0.56.2-4 rebuild

Arch rebuilt Hyprland 0.56.2 against vulkan-sdk 1.4.363 and glslang. The executable and two headers change, so the plugin's exact compositor pin and hashes would block hyprland upgrades for anyone with it installed, and Cua's kit has no profile for it (trycua/cua#4216). The release, compiler and runtime are unchanged, so the derivation now also takes the re-measured compositor executable and header inventory; the build's verifier checks both against the installed package.

* Qualify the Cua plugin README on its input-method guard

The guard is installed best effort, so the README promises the fix only while it is active, and the activation checklist now asks for ime_popup_guard: true. 'No hooks' meant package-manager hooks, which the plugin's new function hooks made ambiguous.

Co-Authored-By: Codex XHigh <noreply@openai.com>

---------

Co-authored-by: Codex XHigh <noreply@openai.com>
2026-10-03 22:37:44 -05:00
Emir Beganović 03b472525f Merge pull request #706 from omacom/auto/sync-upstream
chore: sync upstream releases
2026-10-04 03:32:48 +02:00
emirb 285d290199 chore: sync upstream releases 2026-10-04 01:23:03 +00:00
Emir Beganović aa99d2c147 Merge pull request #785 from omacom/rustdesk-1.5.0
rustdesk: update to 1.5.0 and drop pam from its dependencies
2026-10-04 03:14:13 +02:00
Emir Beganovic 2f9d1a0b31 rustdesk: pre-seed the vcpkg sources rustdesk 1.5.0 builds
rustdesk 1.5.0 and its newer vcpkg pin moved five of the ports the recipe
pre-seeds into vcpkg's downloads:

  aom            3.12.1 -> 3.14.1  (rustdesk's overlay port)
  ffmpeg         7.1    -> 7.1.1   (rustdesk's overlay port)
  libjpeg-turbo  3.1.1  -> 3.2.0
  meson          1.8.2  -> 1.9.0
  pkgconf        2.5.1  -> 3.0.3

vcpkg found none of the old archives useful and fetched all five itself
mid-build, aom from googlesource. Each new tarball matches the SHA512 in
its vcpkg port.
2026-10-04 02:55:47 +02:00
Emir Beganovic fd2fbe3821 rustdesk: retire the bindgen patch, upstream carries it in 1.5.0
0004-bindgen raised libs/scrap's bindgen to 0.72.1 for Clang 22 and
added a git override for it. rustdesk 1.5.0's libs/scrap/Cargo.toml
already requires bindgen 0.72.1, so the patch no longer applies (the
Cargo.toml hunk fails and the scrap hunk is detected as applied) and
prepare() stopped. Comment it out like the retired 0001 patch and drop
its checksum entries.
2026-10-04 02:37:44 +02:00
Emir Beganovic c050643155 rustdesk: fetch aom and libyuv as git sources
googlesource's +archive tarballs are generated per request: their bytes
change on every download, so the recipe skipped their checksums, and the
endpoint refuses CI runners at times (503s on aom failed two #785
builds). Clone both at their pinned commits instead, which git verifies.
_prepare_vc writes downloads/<port>-<ref>.tar.gz with the same git
archive command vcpkg_from_git uses, so vcpkg finds them cached. The
archives hold exactly the files of the old tarballs (aom 1347, libyuv
183).
2026-10-04 02:15:22 +02:00
Emir Beganovic 7246c2a3d5 rustdesk: build 1.5.0 against upstream's vcpkg snapshot
rustdesk 1.5.0 moved VCPKG_COMMIT_ID in flutter-build.yml from 120deac
to 9e593bb (vcpkg, 2026-07-30), and _prepare_vc stops the build when the
recipe's pin differs. Add the 1.5.0 row to the vcpkg table and the new
archive's checksums. Flutter 3.24.5, Rust 1.75 and the README's vcpkg
library list are unchanged from 1.4.9.
2026-10-04 01:57:35 +02:00
Emir Beganović 01f6c85948 Merge pull request #784 from omacom/omakade-1.14.2
omakade: update to 1.14.2 and follow upstream's dependencies
2026-10-04 01:53:31 +02:00
Emir Beganovic d7e69bb58c rustdesk: update to 1.5.0 and drop pam from its dependencies
Upstream's res/PKGBUILD no longer depends on pam as of 1.5.0. The
recipe's prepare() checks _dpr against that list, so the sync's version
and checksum bump stopped in _dpr_check with "Update _dpr from
res/PKGBUILD/depends=()". The bump is the sync's, unchanged; _dpr now
matches upstream's 1.5.0 depends.
2026-10-04 01:46:35 +02:00
Emir Beganovic 27b5c480af omakade: update to 1.14.2 and follow upstream's dependencies
Upstream's release PKGBUILD added python (packaged skill scripts, since
1.12.0), layer-shell-qt (a required build dependency for the Game Mode
overlay, since 1.14.0) and the libpulse and umu-launcher optdepends.
The upstream sync only rewrites pkgver and checksums, so the recipe kept
1.12.0's dependency list: the published 1.12.0 lacks python, and the
1.14 builds in the sync PR fail at CMake on LayerShellQt.

The recipe now matches upstream's PKGBUILD-1.14.2, comments aside.
2026-10-04 01:43:34 +02:00
Emir Beganović 426670f614 Merge pull request #769 from dyl-joseph/fix/tmog-linux-release-manifest
fix(tmog-bin): follow the Linux release manifest
2026-10-04 01:29:43 +02:00
Emir Beganović 32f7994744 Merge pull request #783 from omacom/fix/build-pr-up-to-date-package
Skip packing a PR build when edge already holds the version
2026-10-04 01:13:38 +02:00
Emir Beganovic f51d504a66 Flag a recipe change that will not ship without a version bump
When edge already holds the version, a PKGBUILD whose recipe changed
(comments and blank lines aside) builds nothing and publishes nothing.
Arch bumps pkgrel only when the built package changes, which is the
reviewer's call, so this is a warning annotation on the PKGBUILD and a
job summary line, not a failure. Comment-only and hook-only changes
stay silent.
2026-10-04 01:10:54 +02:00
Emir Beganovic 5bd85a785f Skip packing a PR build when edge already holds the version
A PR can change a package's directory without bumping its version: an
upstream hook, its tests, a README. bin/build then plans nothing, and
the pack step failed on the empty build output, turning the required
result check red (seen on #769). Make the same dry-run check
publish.yml's rebuild job already makes, and skip packing and uploading
when nothing was built. publish.yml finds no artifact for such a merge
and records the package as already published.
2026-10-04 01:03:49 +02:00
Ryan Hughes 88c82f3f24 Merge pull request #782 from omacom/auto/track-branches
Track upstream branches: omarchy-dev 4.0.0.r6720.g8e02fc8, omarchy-settings-dev 4.0.0.r6720.g8e02fc8
2026-10-03 17:46:46 -04:00
ryanrhughes 56e0434e64 Track upstream branches: omarchy-dev 4.0.0.r6720.g8e02fc8, omarchy-settings-dev 4.0.0.r6720.g8e02fc8 2026-10-03 21:39:34 +00:00
Ryan Hughes 31b8fdb3ad Merge pull request #777 from omacom/auto/track-branches
Track upstream branches: omarchy-dev 4.0.0.r6713.ga85e29a, omarchy-settings-dev 4.0.0.r6713.ga85e29a
2026-10-03 01:43:35 -04:00
ryanrhughes 1436a0a210 Track upstream branches: omarchy-dev 4.0.0.r6713.ga85e29a, omarchy-settings-dev 4.0.0.r6713.ga85e29a 2026-10-03 05:37:06 +00:00
97925fbc84 Apply the IPU7 camera's ISP tuning, fix its gain, range and exposure, harden PSYS pinning, and support Lunar Lake (#723)
* Apply the Intel IPU7 camera's ISP tuning and fix its gain, range and exposure

The XPS 14 / 16 webcam looked soft and grainy because almost none of the
image pipeline was tuned:

- 0011: the graph asks for ISP tuning mode 4, which the OV08X40 tuning
  does not carry, so the generic AIC found no tunings and noise
  reduction, TNR and sharpening ran on library defaults. Fall back to
  the tuning's default ISP container.
- 0010: AIQ emits the raw analog gain register code, which the in-tree
  ov08x40 driver halves, so the sensor ran at twice the gain AE and the
  ISP noise model assumed.
- 0008: the HAL ignored the requested YUV range and always produced
  full-range frames that consumers decode as limited range.
- 0009 + relay config: icamerasrc pinned auto exposure to 1/30 s; a new
  fps-range property lets AE lengthen frames in dim light, with gain
  capped at 27 dB.

* Guard fps-range against NULL and correct two descriptions

Setting icamerasrc's new fps-range property to NULL, its own default, handed NULL to gst_camerasrc_parse_range, which crashed in strlen(). NULL now leaves the last range in effect, because the HAL has no way to drop a range once set. The value the relay sets goes through unchanged.

The relay comment said AE raises gain past 27 dB once frames reach 15 fps, but gain-range becomes a hard ISO ceiling (manual_iso_max), so gain never goes past it. The 0008 message credited the sensor JSON's yuvColorRangeMode, which only the mock HAL reads.

Co-Authored-By: Codex XHigh <noreply@openai.com>

* Free fps-range when icamerasrc is destroyed

finalize never freed the string the fps-range setter allocates, so every icamerasrc element that had the property set leaked it. The other string properties leak the same way upstream and are left to an upstream fix for all of them.

Co-Authored-By: Codex XHigh <noreply@openai.com>

* Harden IPU7 PSYS userptr pinning

(cherry picked from commit 5f1d0013b0e37d9229dfb906806dee0e98199035)

* Avoid unverified IPU7 permission assurances

(cherry picked from commit 9ce97d9788f2be508743fe785f8434ccfec7842e)

* Check IPU7 against Omarchy headers without a runtime dependency

Use linux-omarchy-headers only for check(), avoiding Arch headers on installed Omarchy systems and matching the supported kernel build configuration.

Signed-off-by: Afonso Oliveira <afonso.oliveira707@gmail.com>
(cherry picked from commit d0d382c07ea99eca5bb5c52240841db779d24b14)

* Test IPU7 build-only headers and kernel-tree selection

Signed-off-by: Afonso Oliveira <afonso.oliveira707@gmail.com>
(cherry picked from commit eb37cc828fac201a360c35aa1e87a1daf2d5fed1)

* Restrict the IPU7 PSYS node to root

Intel's PSYS driver has two buffer-lifecycle bugs that this package does not fix: a GETBUF that is never mapped leaves the buffer owned by both the PSYS handle and the exported dma-buf, so closing the two is a use-after-free and a double free, and UNMAPBUF drops its mapping reference before clearing the attachment, racing a concurrent dma-buf release. Any account that can open /dev/ipu7-psys0 can reach both.

Nothing but v4l2-relayd@ipu7, which runs as root, opens the node; applications use the v4l2loopback device. With the node at 0600 root:root the camera streams the same, so the video group and the seat user lose nothing and the bugs need root. GROUP and MODE are explicit so the upgrade's change event also tightens nodes on running machines.

Co-Authored-By: Codex XHigh <noreply@openai.com>

* Drop the DKMS Intel CVS driver now that linux-omarchy ships it

linux-omarchy and linux-omarchy-bore build drivers/media/i2c/cvs in-tree (CONFIG_VIDEO_INTEL_CVS=m) and carry the same wake-IRQ fix as our 0007 (0542), plus the Nova Lake ACPI ID (0541) that our copy lacks. The DKMS module has the same name and installs under updates/, so on every 7.2+ kernel it displaced the kernel's signed module with an unsigned, older copy: on Nova Lake that copy cannot bind the CVS device and the camera fails, and any later fix in the kernel's driver would be masked. Krzysztof Wilczyński reported the conflict on #723.

Skipping the build only on kernels that carry the driver (BUILD_EXCLUSIVE_CONFIG) would have kept it for stock Arch kernels, but the pacman dkms hook reports every such skip as "exited 77", so every Omarchy kernel update would print a warning. A stock Arch kernel left installed as the fallback boot entry now has no camera.

On upgrade the dkms hook removes intel-cvs and restores the kernel's original module. vision-drivers still covers kernels before 7.2.

* intel-ipu7-camera: build the Lunar Lake HAL plugin and stop rotating its frames

Two Panther Lake assumptions in this package break Lunar Lake boards, where it
is installed by the same hardware detection.

Build both HAL platforms. libcamhal picks its plugin by platform, and a Lunar
Lake machine asks for one that was never built:

  CamHAL[ERR] HalAdaptor: load_camera_hal_library, failed to open library:
    /usr/lib/libcamhal/plugins/ipu7x.so: No such file or directory
  CamHAL[WAR] CameraParserInvoker: parseSensors: No sensors available

so the camera cannot work at all. The proprietary side of it is already
shipped -- libia_aic-ipu7x.so and the rest of that set come from
ipu7-camera-bins today; only the plugin the HAL loads was missing. Upstream
builds both platforms from one configure run and `make install` lays down
/etc/camera/ipu7x/ alongside ipu75xa, including the tuning this hardware
wants (OV08X40_BBG802N3_LNL.aiqb, gcss/OV08X40_BBG802N3_LNL.IPU7X.bin), so the
change is the IPU_VERSIONS list plus 0008, the ipu7x twin of 0006: the
"Intel CVS" pad formats that 1.0.6 added to the ipu75xa sensor config are
needed in the ipu7x one for the same reason, or link validation fails at
stream-on behind the Linux 7.2 bridge entity.

Pick the relay pipeline per board. v4l2-relayd-ipu7.conf rotates every frame
180 degrees, which is right where the sensor is mounted inverted and wrong
here: the sensor reports camera_sensor_rotation = 0 and camera_orientation =
Front, and the picture arrives upside down in every application. camera-init
now writes VIDEOSRC to /run based on the bridge ACPI id and the relay drop-in
reads it. Only INTC10DE takes the new path; INTC10E1, INTC10CF, INTC10E0 and
anything unrecognised keep the packaged pipeline byte for byte, and a boot
where camera-init did not run falls back to it as well.

Verified on a Dell Pro 14 Premium PA14250 (Lunar Lake, INTC10DE, OV08X40 +
HM1092) against intel-ipu7-camera 1.0.6-2 on linux-omarchy 7.2.5-3: with the
package's own intel-cvs DKMS the sensor joins the graph behind "Intel CVS",
the ipu7x plugin built from the pinned commit with 0005 and 0008 resolves
ov08x40-uf on CSI port 0, v4l2-relayd streams 30 fps to /dev/video50 and the
image is upright in a browser.

Note for reviewers: necessary but not sufficient on Lunar Lake. Three more
things this board needs are not in this PR: the sensor probe races the
bridge's runtime suspend (camera-init's `sleep 2` lands while the I2C bus is
still owned by the bridge firmware and ov08x40 reads its chip id as -110),
the in-tree cvs driver's quirk for the Synaptics SVP7500 (06cb:0701) hands
the privacy LED to the host so it never lights, and ipu-bridge before 7.3
does not know the HM1092 IR sensor. Details in #366.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
(cherry picked from commit 9be51b47104da9d115a7d79e04bc2ae5445809fc)

* Derive the Lunar Lake relay pipeline from the packaged one

camera-videosrc-init wrote VIDEOSRC for every board, with a copy of the pipeline the relay config carried when it was written, and its file is read after /etc/v4l2-relayd.d/ipu7.conf. On Panther Lake that replaced this branch's fps-range, gain-range and color-range settings with the old sharpness=80 ev=-1 saturation=10 pipeline. It now writes nothing unless the board is Lunar Lake, and there it takes the packaged pipeline and drops only the rotation, so a later change to the relay config reaches both platforms. It also removes a file left by an earlier run, which camera-init's restart on resume would otherwise keep.

The ipu7x CVS format patch becomes 0012: 0008 is already the YUV range patch.

* Regenerate the Lunar Lake pipeline on every relay start

camera-videosrc-init ran from camera-init.service and sourced /etc/v4l2-relayd.d/ipu7.conf as bash. A config that is valid for systemd but not for bash, such as an unquoted VIDEOSRC, made it fail and Lunar Lake fell back to the rotated pipeline; and because camera-init stays active, editing the config and restarting only the relay kept the override cached since boot.

It now runs as the relay's ExecStartPre, where systemd hands it VIDEOSRC already parsed from the relay's own environment files, and writes the override quoted for systemd's parser. ExecStart re-reads the drop-in's EnvironmentFile and ExecStopPost removes it, so each start sees the current config.

Co-Authored-By: Codex XHigh <noreply@openai.com>

* Scale the Lunar Lake ov08x40's analog gain codes too

The Lunar Lake tuning (OV08X40_BBG802N3_LNL.aiqb) carries the same CMC gain table as the Panther Lake one, 1x = code 256, and both platforms use the same in-tree ov08x40 driver, which takes 1x = 128. Without the shift a 4x request ran the Lunar Lake sensor at 8x, the mismatch 0010 fixes on Panther Lake. 0010 now sets analogGainCodeShift in the ipu7x sensor config as well.

Co-Authored-By: Codex XHigh <noreply@openai.com>

* Remove the Lunar Lake override before the generator runs

systemd passes ExecStartPre the unit's environment files as they stand when
that command starts, so the generator saw a /run override left behind by a
crash or SIGKILL (anything that skipped ExecStopPost) and took its VIDEOSRC
for the configured one: an edited /etc/v4l2-relayd.d/ipu7.conf would lose to
the stale file. Removing the file in its own ExecStartPre first means the
generator's environment is re-read without it.

Co-Authored-By: Codex XHigh <noreply@openai.com>

* Author the HAL and icamerasrc patches from the Omarchy address

---------

Signed-off-by: Afonso Oliveira <afonso.oliveira707@gmail.com>
Co-authored-by: Codex XHigh <noreply@openai.com>
Co-authored-by: Afonso Oliveira <afonso.oliveira707@gmail.com>
Co-authored-by: Kolbas <pkolbas@pm.me>
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-02 21:27:53 -05:00
Spencer Bull f6b9267b3b Ship OpenClaw as the seed for a self-updating copy under ~/.openclaw (#651)
A copy under /usr/lib/node_modules belongs to pacman, and upstream's updater refuses to write there, so neither `openclaw update` nor the Control UI's Update Gateway worked. The package now carries the release instead: the sha256-pinned npm tarball and the install-cli.sh that came in it, from which Omarchy seeds a copy under ~/.openclaw that updates itself.
2026-10-02 21:21:37 -05:00
Marcelo Alcantara 282bc1c43e Merge pull request #747 from joshuaswarren/add-mil-hwx-compiler
Add mil-hwx-compiler, the Apple Neural Engine compiler
2026-10-03 09:31:49 +10:00
Marcelo Alcantara 4466021b04 Merge pull request #773 from maralcbr/settings-runtime-detector
Build settings for #13362's HOOKS baseline without a detector copy
2026-10-03 09:21:24 +10:00
Marcelo Alcantara 8e1284fff6 omarchy-settings: bump pkgrel for the hooks baseline check
The build planner only builds a recipe whose version changed, so the aarch64 builds had nothing to check. The packages' contents are unchanged.
2026-10-03 09:09:56 +10:00
Marcelo Alcantara 6711b64f8f Build settings for #13362's HOOKS baseline without a detector copy
omacom/omarchy#13362 (d0b94d98c) dropped the omarchy-hw-platform copy
omarchy-settings shipped beside its platform guard. Its 00-omarchy-hooks.conf
now asks the runtime's own detector on PATH, and keeps the busybox line where
there is none. The aarch64 settings recipes still refused any source whose
baseline names omarchy-hw-platform without that copy, so every aarch64 build
of quattro would fail once #13362 merges.

Both recipes drop that check. The copy is still installed when a source ships
the guard, as before. The test fixture follows #13362's current baseline, and
the split-layout test checks the package builds from it and ships no copy.
2026-10-03 09:04:44 +10:00
David Heinemeier Hansson 8d4ef2dbcf Merge pull request #770 from kevinmcconnell/update-gliff-0.2.0
Update gliff to 0.2.0
2026-10-02 20:41:18 +02:00
Kevin McConnell eda220d878 Update gliff to 0.2.0
gliff now lives at omacom/gliff and cuts tagged releases, so build
the tag archive instead of a pinned commit and watch its tags.

The codec moved to VA-API: add libva, and dbus for notifications.
Install the launcher entry and icon, with the icon cache hook, and
ship the OpenH264 license.
2026-10-02 15:56:54 +01:00
Dylan 9b77934e0e fix(tmog-bin): follow the Linux release manifest 2026-10-02 08:19:58 -05:00
Ryan Hughes 1ede739640 Merge pull request #766 from omacom/auto/track-branches
Track upstream branches: omarchy-dev 4.0.0.r6694.g821ae58, omarchy-settings-dev 4.0.0.r6694.g821ae58
2026-10-02 02:07:49 -04:00
ryanrhughes 8fe3683579 Track upstream branches: omarchy-dev 4.0.0.r6694.g821ae58, omarchy-settings-dev 4.0.0.r6694.g821ae58 2026-10-02 06:01:16 +00:00
Ryan Hughes 250edad378 Merge pull request #762 from omacom/auto/track-branches
Track upstream branches: omarchy-dev 4.0.0.r6693.gf45461a, omarchy-settings-dev 4.0.0.r6693.gf45461a
2026-10-01 20:10:15 -04:00
ryanrhughes 577ed75dd0 Track upstream branches: omarchy-dev 4.0.0.r6693.gf45461a, omarchy-settings-dev 4.0.0.r6693.gf45461a 2026-10-02 00:03:00 +00:00
Ryan Hughes 2c1d7c0346 Merge pull request #753 from omacom/auto/track-branches
Track upstream branches: omarchy-dev 4.0.0.r6692.gc05d901, omarchy-settings-dev 4.0.0.r6692.gc05d901
2026-10-01 06:54:25 -07:00
ryanrhughes 5c4abb5146 Track upstream branches: omarchy-dev 4.0.0.r6692.gc05d901, omarchy-settings-dev 4.0.0.r6692.gc05d901 2026-10-01 13:46:24 +00:00
Joshua Warren 40c38ab69e mil-hwx-compiler: use the published v0.1.0 release archive 2026-09-30 23:03:02 -05:00
Joshua Warren 184adf1693 Add mil-hwx-compiler, the Apple Neural Engine compiler
The package builds mil-hwxc from a joshuaswarren/mil-hwx-compiler
release. It compiles textual MIL into ANEC and HWX programs for the
Apple Neural Engine. aarch64 and edge only.

The compiler needs the libobjc2 runtime and a gnustep-base built for
it. Arch's gnustep-base uses gcc's libobjc, so the recipe builds both
from the commits the release pins and ships their runtime libraries in
/usr/lib/mil-hwx-compiler. mil-hwxc finds them through its RUNPATH.
check() runs the release's Linux verifier.

The watch follows published GitHub releases after 24 hours, on the
reviewed lane.
2026-09-30 18:17:39 -05:00
5a49a3fab5 Keep Hermes Desktop opening on its runtime after Hermes updates (#718)
* Accept the fifth Hermes desktop launch option

Hermes now returns five values from _desktop_launch_options(), appending the renderer accessibility switch. The launcher unpacked exactly four, so once a user's runtime updated, every launch died with "too many values to unpack" before the app opened. The launcher now takes the first four and reads the fifth when present, so it keeps working with the packaged release and with newer runtimes, and it bridges an explicit accessibility opt-out the same way Hermes' own launcher does. The launch check now also runs a five-value helper, which fails against the previous launcher.

Fixes basecamp/omarchy#13491

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* hermes-desktop: launch against the installed runtime, accept the helper's new arity

_desktop_launch_options() returns five values since Hermes grew a trailing
renderer_accessibility field, so the launcher died with "too many values to
unpack (expected 4)" before os.execve — and gtk-launch discards stderr, so the
app icon became a silent no-op that left no process and no log line behind.

The launcher also exported HERMES_DESKTOP_IGNORE_EXISTING=1 unconditionally
while preferring the runtime's own app binary a few lines above it: with a
runtime installed, Desktop skipped that runtime and offered first-run setup
instead of the user's sessions. Ignoring an existing runtime is only correct for
the bundled /opt app, which is built from the package's release commit and
cannot drive a runtime built from another one.

pkgrel bumped for the changed artifact.

* Tell only the packaged Hermes Desktop to skip an existing install

The runtime's own app now finds its runtime the way `hermes desktop` launches it, through the installed-runtime lookup, instead of being pinned to it with HERMES_DESKTOP_HERMES_ROOT. That variable is upstream's developer override: it resolves before the lookup that Repair install bypasses, so pinning the runtime turned a hard repair into a restart against the same broken venv. HERMES_DESKTOP_IGNORE_EXISTING is set only when the launcher falls back to the packaged /opt app, and an explicit value in the environment still wins, so the in-app updater's relaunch of the runtime app no longer inherits it.

The fifth launch option is read the way it was accepted in the previous commit but one, with the checksums the two earlier commits left stale brought up to date. runtime-test.py now records both variables, so it fails if the unconditional export or the root pin comes back.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Codex XHigh <noreply@openai.com>

---------

Co-authored-by: manuaudio <manu@arimaka.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Omni <omni@omninova.com.mx>
Co-authored-by: Codex XHigh <noreply@openai.com>
2026-09-29 16:35:30 -05:00
Ryan Hughes 0c1996bb68 Merge pull request #730 from omacom/update/t3code-bin-0.0.44
Update t3code-bin to 0.0.44
2026-09-29 17:19:57 -04:00
Ryan Hughes 5e34b440bb Update t3code-bin to 0.0.44 2026-09-29 17:12:35 -04:00
Ryan Hughes adc0be3432 Merge pull request #728 from omacom/update/t3code-0.0.43
Update t3code-bin to 0.0.43
2026-09-29 16:49:14 -04:00
Ryan Hughes cb75bd381d Update t3code-bin to 0.0.43 2026-09-29 16:41:57 -04:00
Ryan Hughes f96114a9cc Merge pull request #727 from omacom/auto/track-branches
Track upstream branches: omarchy-dev 4.0.0.r6691.g8b4eae6, omarchy-settings-dev 4.0.0.r6691.g8b4eae6
2026-09-29 15:42:33 -04:00
ryanrhughes bfad81267a Track upstream branches: omarchy-dev 4.0.0.r6691.g8b4eae6, omarchy-settings-dev 4.0.0.r6691.g8b4eae6 2026-09-29 19:34:56 +00:00
Ryan Hughes b7a7ad1068 Merge pull request #722 from omacom/auto/track-branches
Track upstream branches: omarchy-dev 4.0.0.r6689.gb421b1b, omarchy-settings-dev 4.0.0.r6689.gb421b1b
2026-09-29 09:22:33 -04:00
ryanrhughes c830be2720 Track upstream branches: omarchy-dev 4.0.0.r6689.gb421b1b, omarchy-settings-dev 4.0.0.r6689.gb421b1b 2026-09-29 13:14:04 +00:00
Spencer Bull 3dbba7e478 Rebase the Cua Hyprland plugin on Driver 0.28.2 and pin glibc r50 (#717)
cua-hyprland-plugin 0.26.1-6 pins glibc=2.44+r24+g16be1518495f-1 exactly. Arch core has moved to 2.44+r50+g1848099f063e-1, so on any upgraded edge system pacman refuses the plugin with "unable to satisfy dependency", even though cua-driver-bin installs.

Derive a new profile, omarchy-edge-20260928-remaps, that pins the current glibc and takes its source from the Driver 0.28.2 release that cua-driver-bin ships. The plugin files in that release are byte-identical to 0.26.1 and 0.27.0, so the keymap patch applies unchanged and only the upstream base in DOWNSTREAM-PROVENANCE.json moves. The download wrapper now substitutes the 0.28.2 archive and manifest into the verified upstream kit and renders the recipe from the kit's own PROFILE-PKGBUILD.in, so the derived kit is one Cua's profile_verify.py accepts as complete.

pkgrel starts at 2 because profile validation refuses package release 1.
2026-09-28 23:15:36 -05:00
Ryan Hughes 660cbe3940 Merge pull request #716 from omacom/auto/track-branches
Track upstream branches: omarchy-dev 4.0.0.r6688.ge332dc9, omarchy-settings-dev 4.0.0.r6688.ge332dc9
2026-09-28 19:33:31 -04:00
ryanrhughes af19ab222b Track upstream branches: omarchy-dev 4.0.0.r6688.ge332dc9, omarchy-settings-dev 4.0.0.r6688.ge332dc9 2026-09-28 23:27:06 +00:00
Ryan Hughes 6005050023 Merge pull request #710 from omacom/auto/track-branches
Track upstream branches: omarchy-dev 4.0.0.r6687.gb18ab49, omarchy-settings-dev 4.0.0.r6687.gb18ab49
2026-09-28 14:22:47 -04:00
ryanrhughes f0ebc8a80b Track upstream branches: omarchy-dev 4.0.0.r6687.gb18ab49, omarchy-settings-dev 4.0.0.r6687.gb18ab49 2026-09-28 18:14:32 +00:00