Files
omarchy-pkgs/pkgbuilds/openai-codex-desktop/PKGBUILD
T
David Heinemeier HanssonandClaude Opus 5 1a61278911 Take over openai-codex-desktop from the AUR
OpenAI ships the ChatGPT desktop app several times a week and the AUR
packaging trails it -- as of this commit by a full version, 26.803.81509
against 26.810.52044. Every sync we took from there was a sync we could have
taken from OpenAI directly.

So track OpenAI's own Debian repository instead. Its per-architecture package
index carries the version and SHA256 of every deb, which makes an update two
small HTTP requests rather than a 750 MB download, and the pool keeps old
versions, so the URLs pinned here stay resolvable after the next release.

Omarchy now maintains the package outright: the max-zstd patch is simply part
of the PKGBUILD, chatgpt-launcher.sh is ours, and the Arch REUSE files are
gone -- they annotated packaging paths (.SRCINFO, keys/**, .nvchecker.toml)
that do not exist here. The app's own license still ships; package() installs
upstream's copyright file.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-15 08:18:54 -07:00

96 lines
2.6 KiB
Bash

# Maintainer: David Heinemeier Hansson <david@hey.com>
# Omarchy tracks OpenAI's own Debian repository rather than the AUR, which lags
# behind releases that ship several times a week. .omarchy/upstream.sh rewrites
# the version and checksums below from that repository's package index.
pkgname=openai-codex-desktop
pkgver=26.810.52044
pkgrel=1
pkgdesc="Official ChatGPT desktop app with Codex"
arch=('x86_64' 'aarch64')
url="https://chatgpt.com/codex/"
license=('custom')
depends=(
'alsa-lib'
'at-spi2-core'
'bash'
'cairo'
'dbus'
'expat'
'gcc-libs'
'gdk-pixbuf2'
'glib2'
'glibc'
'gtk3'
'libcups'
'libdrm'
'libglvnd'
'libnotify'
'libusb'
'libx11'
'libxcb'
'libxcomposite'
'libxdamage'
'libxext'
'libxfixes'
'libxkbcommon'
'libxrandr'
'mesa'
'nspr'
'nss'
'openssl'
'pango'
'systemd-libs'
'xdg-utils'
'xz'
)
optdepends=(
'apparmor: load the bundled user-namespace profile on AppArmor systems'
'git: version control integration'
)
makedepends=('libarchive')
provides=('chatgpt')
conflicts=('chatgpt')
options=('!debug' '!strip')
# Omarchy: the build image compresses with zstd at its default level, which
# leaves this 1.3 GB Electron tree at 447 MB. Maximum zstd takes it to 322 MB
# for ~4 extra minutes of build time -- worth it for a package this large that
# every user re-downloads on each of OpenAI's frequent releases.
COMPRESSZST=(zstd -c -z -q --ultra -22 --threads=0 -)
_deb_x86_64="chatgpt_${pkgver}_amd64.deb"
_deb_aarch64="chatgpt_${pkgver}_arm64.deb"
source=('chatgpt-launcher.sh')
_pool="https://persistent.oaistatic.com/codex-app-prod/linux/deb/pool/main/c/chatgpt"
source_x86_64=("${_deb_x86_64}::${_pool}/${_deb_x86_64}")
source_aarch64=("${_deb_aarch64}::${_pool}/${_deb_aarch64}")
noextract=("${_deb_x86_64}" "${_deb_aarch64}")
sha256sums=('fc70527cd961f3a660e2a9d0a2d62b1e3f7a61d8482ee1935a6b25307da278eb')
sha256sums_x86_64=('708a15a1bb76e2bb7f0e376e5145391fa277ad3a64057c1d32537bdc2a1b4e6e')
sha256sums_aarch64=('6ebea681b1e494d218a199f638b4bc886e94e1458dd61079b1e390a6fb98fdd2')
package() {
cd "${srcdir}"
local deb_var="_deb_${CARCH}"
local deb="${!deb_var}"
bsdtar -xOf "${deb}" data.tar.xz |
bsdtar --no-same-owner -xf - -C "${pkgdir}"
rm "${pkgdir}/usr/bin/chatgpt"
install -Dm755 chatgpt-launcher.sh "${pkgdir}/usr/bin/chatgpt"
ln -s chatgpt "${pkgdir}/usr/bin/codex-desktop"
install -Dm644 "${pkgdir}/usr/share/doc/chatgpt/copyright" \
"${pkgdir}/usr/share/licenses/${pkgname}/copyright"
# Debian package-policy files are not used on Arch Linux.
rm -rf "${pkgdir}/usr/share/doc" "${pkgdir}/usr/share/lintian"
}