Package the herdr 0.8.2 release instead of the fork

The package built from omacom-io/herdr, a fork pinned to a commit and versioned 0.8.0.r13. Its only divergence was three commits replaying an agent's CLI options when a session resumed, which upstream declined twice — from a contributor in herdrdev/herdr#2036 and from us in herdrdev/herdr#2614, closed in favour of an agent resume manifest meant to supersede it. Those three are dropped; every other commit the fork carried is in v0.8.2.

The fork also self-reported "0.8.0" while speaking wire protocol 20, which upstream's published 0.8.0 did not: it spoke 19. An official client attaching to an Omarchy host therefore saw a server claiming to be its own version yet refusing to talk to it, and offered to stop it without ever naming the protocol. That is omacom-io/omarchy-pkgs#161.

Upstream released v0.8.2 today, and it settles both halves. It carries protocol 20, and the stable manifest now publishes 0.8.2 at protocol 20, so an official client and this package agree. It also contains the five features Omarchy contributed after the v0.8.0 tag — configurable outer pane borders, direct pane resize keybindings, move tab keybind actions, centered tab labels and outer terminal window title sync — which is what made packaging the earlier release a regression rather than a return to upstream.

Because the build is now the release it claims to be, it needs no build-identity marking: HERDR_BUILD_CHANNEL and HERDR_BUILD_ID are gone, and the binary reports a bare 0.8.2. The package name is unchanged, so nothing needs a rename, a migration or a database removal to reach existing installs; 0.8.2-1 simply supersedes 0.8.0.r13-1.

🤖 Generated by Opus 5 in Claude Code. Reviewed by Codex XHigh.
This commit is contained in:
Omabot
2026-08-22 07:41:39 -07:00
parent e2e916f3c9
commit 40a094c32a
3 changed files with 44 additions and 62 deletions
-62
View File
@@ -1,62 +0,0 @@
# Maintainer: David Heinemeier Hansson <david@hey.com>
_pkgname=herdr
pkgname="$_pkgname-git"
pkgver=0.8.0.r129.ga5c69be
pkgrel=1
pkgdesc="Herdr terminal workspace manager built from upstream master"
arch=('x86_64' 'aarch64')
url="https://github.com/herdrdev/herdr"
license=('Apache-2.0')
depends=('gcc-libs' 'glibc')
makedepends=('cargo' 'git')
provides=("$_pkgname")
conflicts=("$_pkgname" 'omarchy-herdr')
replaces=("$_pkgname" 'omarchy-herdr')
options=('!debug' '!lto')
_commit=a5c69beabfc82d9c3f9563eb821139b2e0f3e14f
_zigver=0.15.2
source=("$_pkgname"::"git+$url.git#commit=$_commit")
source_x86_64=("zig-x86_64-linux-$_zigver.tar.xz::https://ziglang.org/download/$_zigver/zig-x86_64-linux-$_zigver.tar.xz")
source_aarch64=("zig-aarch64-linux-$_zigver.tar.xz::https://ziglang.org/download/$_zigver/zig-aarch64-linux-$_zigver.tar.xz")
sha256sums=('SKIP')
sha256sums_x86_64=('02aa270f183da276e5b5920b1dac44a63f1a49e55050ebde3aecc9eb82f93239')
sha256sums_aarch64=('958ed7d1e00d0ea76590d27666efbf7a932281b3d7ba0c6b01b0ff26498f667f')
pkgver() {
cd "$_pkgname"
# Preview tags sit on master between releases, so an unexcluded describe bases the version on
# a build id. Failing beats any fallback: with no release tag every candidate sorts lower.
( set -o pipefail
git describe --long --tags --abbrev=7 --exclude='preview-*' \
| sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g'
)
}
prepare() {
cd "$_pkgname"
cargo fetch --locked --target "$CARCH-unknown-linux-gnu"
}
build() {
cd "$_pkgname"
export CARGO_TARGET_DIR=target
export ZIG="$srcdir/zig-$CARCH-linux-$_zigver/zig"
export ZIG_GLOBAL_CACHE_DIR="$srcdir/zig-cache"
# Master's Cargo.toml already carries the next version, so an unmarked build claims a
# release upstream has not published and speaks a protocol that release will not have.
export HERDR_BUILD_CHANNEL=omarchy
export HERDR_BUILD_ID="$(git rev-parse --short=7 HEAD)"
cargo build --frozen --release
}
package() {
cd "$_pkgname"
install -Dm755 target/release/herdr "$pkgdir/usr/bin/herdr"
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
+44
View File
@@ -0,0 +1,44 @@
# Maintainer: David Heinemeier Hansson <david@hey.com>
pkgname=herdr
pkgver=0.8.2
pkgrel=1
pkgdesc="Herdr terminal workspace manager for AI coding agents"
arch=('x86_64' 'aarch64')
url="https://github.com/herdrdev/herdr"
license=('Apache-2.0')
depends=('gcc-libs' 'glibc')
makedepends=('cargo')
replaces=('omarchy-herdr')
conflicts=('omarchy-herdr')
options=('!debug' '!lto')
_zigver=0.15.2
source=("herdr-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz")
source_x86_64=("zig-x86_64-linux-$_zigver.tar.xz::https://ziglang.org/download/$_zigver/zig-x86_64-linux-$_zigver.tar.xz")
source_aarch64=("zig-aarch64-linux-$_zigver.tar.xz::https://ziglang.org/download/$_zigver/zig-aarch64-linux-$_zigver.tar.xz")
sha256sums=('60453051025ee44ebf055d26cdaf665a0accd99a992cddd22c166a26c49cd161')
sha256sums_x86_64=('02aa270f183da276e5b5920b1dac44a63f1a49e55050ebde3aecc9eb82f93239')
sha256sums_aarch64=('958ed7d1e00d0ea76590d27666efbf7a932281b3d7ba0c6b01b0ff26498f667f')
prepare() {
cd "herdr-$pkgver"
cargo fetch --locked --target "$CARCH-unknown-linux-gnu"
}
build() {
cd "herdr-$pkgver"
export CARGO_TARGET_DIR=target
export ZIG="$srcdir/zig-$CARCH-linux-$_zigver/zig"
export ZIG_GLOBAL_CACHE_DIR="$srcdir/zig-cache"
cargo build --frozen --release
}
package() {
cd "herdr-$pkgver"
install -Dm755 target/release/herdr "$pkgdir/usr/bin/herdr"
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}