From 6f5dfdb70d4e6cc3b81cfe8ba1b492bb362f9650 Mon Sep 17 00:00:00 2001 From: Porker Roland <153578368+l3afyb0y@users.noreply.github.com> Date: Sat, 24 Jan 2026 16:35:25 +0000 Subject: [PATCH] feat: Update openwork to 0.3.6, refine PKGBUILD's .deb extraction, and add Arch installation instructions to the README. (#239) --- README.md | 7 +++++++ packaging/aur/.SRCINFO | 33 +++++++++++++++++---------------- packaging/aur/PKGBUILD | 39 ++++++++++++++++++++++++--------------- 3 files changed, 48 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index d843e74c..a3ba230d 100644 --- a/README.md +++ b/README.md @@ -93,6 +93,12 @@ pnpm dev pnpm dev:ui ``` +### Arch Users: + +```bash +yay -s opencode # Releases version +``` + ## Architecture (high-level) - In **Host mode**, OpenWork spawns: @@ -150,6 +156,7 @@ pnpm test:e2e ## Troubleshooting ### Linux / Wayland (Hyprland) + If OpenWork crashes on launch with WebKitGTK errors like `Failed to create GBM buffer`, disable dmabuf or compositing before launch. Try one of the following environment flags. ```bash diff --git a/packaging/aur/.SRCINFO b/packaging/aur/.SRCINFO index 63e62623..705fd23d 100644 --- a/packaging/aur/.SRCINFO +++ b/packaging/aur/.SRCINFO @@ -1,19 +1,20 @@ pkgbase = openwork - pkgdesc = An Open source alternative to Claude Cowork - pkgver = 0.3.5 - pkgrel = 1 - url = https://github.com/different-ai/openwork - arch = x86_64 - license = MIT - depends = gtk3 - depends = glib2 - depends = libayatana-appindicator - depends = libsoup3 - depends = webkit2gtk-4.1 - depends = openssl - depends = dbus - depends = librsvg - source = openwork-desktop-linux-amd64.deb::https://github.com/different-ai/openwork/releases/download/v0.3.5/openwork-desktop-linux-amd64.deb - sha256sums = 01b7f2fe78d870143b7b370e1b569cea218bfaa0549c4af32ab495a5ee3d349f + pkgdesc = An Open source alternative to Claude Cowork + pkgver = 0.3.6 + pkgrel = 2 + url = https://github.com/different-ai/openwork + arch = x86_64 + license = MIT + depends = gtk3 + depends = glib2 + depends = libayatana-appindicator + depends = libsoup3 + depends = webkit2gtk-4.1 + depends = openssl + depends = dbus + depends = librsvg + noextract = openwork-0.3.6.deb + source = openwork-0.3.6.deb::https://github.com/different-ai/openwork/releases/download/v0.3.6/openwork-desktop-linux-amd64.deb + sha256sums = 991cd6f6eaa3d871de42b6016b58c69360fceeea4f23a9c82b0101a98252b6c8 pkgname = openwork diff --git a/packaging/aur/PKGBUILD b/packaging/aur/PKGBUILD index fe5e5533..bf18dfea 100644 --- a/packaging/aur/PKGBUILD +++ b/packaging/aur/PKGBUILD @@ -1,23 +1,32 @@ pkgname=openwork -pkgver=0.3.5 -pkgrel=1 +pkgver=0.3.6 +pkgrel=2 # pkgrel should change when PKGBUILD does. Standard is to change back to 1 next time. Any interger is valid. pkgdesc="An Open source alternative to Claude Cowork" arch=('x86_64') url="https://github.com/different-ai/openwork" license=('MIT') -depends=( - 'gtk3' - 'glib2' - 'libayatana-appindicator' - 'libsoup3' - 'webkit2gtk-4.1' - 'openssl' - 'dbus' - 'librsvg' -) -source=("openwork-desktop-linux-amd64.deb::https://github.com/different-ai/openwork/releases/download/v${pkgver}/openwork-desktop-linux-amd64.deb") -sha256sums=('01b7f2fe78d870143b7b370e1b569cea218bfaa0549c4af32ab495a5ee3d349f') +depends=('gtk3' 'glib2' 'libayatana-appindicator' 'libsoup3' 'webkit2gtk-4.1' 'openssl' 'dbus' 'librsvg') + +# Renaming to ${pkgname}-${pkgver}.deb +source=("${pkgname}-${pkgver}.deb::${url}/releases/download/v${pkgver}/openwork-desktop-linux-amd64.deb") +sha256sums=('991cd6f6eaa3d871de42b6016b58c69360fceeea4f23a9c82b0101a98252b6c8') +# Makes sure makepkg doesn't extract the .deb since it will break +noextract=("${pkgname}-${pkgver}.deb") package() { - bsdtar -xf "${srcdir}/openwork-desktop-linux-amd64.deb" -C "${pkgdir}" + # cd cwd + cd "${srcdir}" + + # Extract the internal data archive directly to the cwd. + bsdtar -O -xf "${pkgname}-${pkgver}.deb" 'data.tar*' | bsdtar -C "${pkgdir}" -xf - } + +# .deb Internal Structure Reference: +# └── openwork-desktop-linux-amd64.deb +# ├── debian-binary +# ├── control.tar.zst +# └── data.tar.zst (Extracted to $pkgdir) +# ├── opt/openwork/ (App files) +# └── usr/bin/ +# ├── opencode (Terminal agent) +# └── openwork (GUI launcher)