From 499ab38afaec093caeab51e6e407355b064a6a9b Mon Sep 17 00:00:00 2001 From: ryanrhughes <1630358+ryanrhughes@users.noreply.github.com> Date: Sat, 23 May 2026 08:25:37 +0000 Subject: [PATCH] chore: sync AUR packages --- pkgbuilds/1password/.gitlab-ci.yml | 3 + pkgbuilds/1password/1password.install | 0 pkgbuilds/1password/CODEOWNERS | 1 + pkgbuilds/1password/PKGBUILD | 3 +- pkgbuilds/1password/aur.env | 2 + pkgbuilds/aether/.omarchy/package.json | 2 +- pkgbuilds/aether/PKGBUILD | 8 +- pkgbuilds/claude-code/.omarchy/package.json | 2 +- pkgbuilds/claude-code/PKGBUILD | 6 +- pkgbuilds/cliamp/.omarchy/package.json | 2 +- pkgbuilds/cliamp/PKGBUILD | 4 +- pkgbuilds/crush-bin/.omarchy/package.json | 2 +- pkgbuilds/crush-bin/PKGBUILD | 10 +- pkgbuilds/cursor-bin/.omarchy/package.json | 2 +- pkgbuilds/cursor-bin/PKGBUILD | 6 +- .../github-copilot-cli/.omarchy/package.json | 2 +- pkgbuilds/github-copilot-cli/PKGBUILD | 6 +- .../.omarchy/package.json | 2 +- pkgbuilds/heroic-games-launcher-bin/PKGBUILD | 10 +- .../.omarchy/package.json | 2 +- pkgbuilds/lib32-nvidia-580xx-utils/PKGBUILD | 4 +- .../limine-snapper-sync/.omarchy/package.json | 2 +- pkgbuilds/limine-snapper-sync/PKGBUILD | 6 +- pkgbuilds/lmstudio-bin/.omarchy/package.json | 2 +- pkgbuilds/lmstudio-bin/PKGBUILD | 6 +- .../nvidia-580xx-utils/.omarchy/package.json | 2 +- pkgbuilds/nvidia-580xx-utils/PKGBUILD | 4 +- .../openai-codex-bin/.omarchy/package.json | 2 +- pkgbuilds/openai-codex-bin/PKGBUILD | 6 +- .../.omarchy/package.json | 6 +- pkgbuilds/python-terminaltexteffects/PKGBUILD | 6 +- pkgbuilds/spotify/.omarchy/package.json | 2 +- pkgbuilds/spotify/PKGBUILD | 10 +- pkgbuilds/sunshine/.omarchy/package.json | 2 +- pkgbuilds/sunshine/PKGBUILD | 84 ++++++-- pkgbuilds/sunshine/sunshine.install | 2 +- pkgbuilds/typora/.omarchy/package.json | 2 +- pkgbuilds/typora/PKGBUILD | 6 +- .../.omarchy/package.json | 2 +- pkgbuilds/visual-studio-code-bin/PKGBUILD | 8 +- pkgbuilds/voxtype-bin/.omarchy/package.json | 2 +- pkgbuilds/voxtype-bin/PKGBUILD | 183 ++++++++++++---- pkgbuilds/voxtype-bin/voxtype-bin.install | 203 ++++++++++++++++-- 43 files changed, 483 insertions(+), 144 deletions(-) create mode 100644 pkgbuilds/1password/.gitlab-ci.yml mode change 100644 => 100755 pkgbuilds/1password/1password.install create mode 100644 pkgbuilds/1password/CODEOWNERS create mode 100644 pkgbuilds/1password/aur.env diff --git a/pkgbuilds/1password/.gitlab-ci.yml b/pkgbuilds/1password/.gitlab-ci.yml new file mode 100644 index 0000000..431c615 --- /dev/null +++ b/pkgbuilds/1password/.gitlab-ci.yml @@ -0,0 +1,3 @@ +include: + - project: 'dev/core/1password-archlinux-aur-ci' + file: '/ci.yml' diff --git a/pkgbuilds/1password/1password.install b/pkgbuilds/1password/1password.install old mode 100644 new mode 100755 diff --git a/pkgbuilds/1password/CODEOWNERS b/pkgbuilds/1password/CODEOWNERS new file mode 100644 index 0000000..1108adc --- /dev/null +++ b/pkgbuilds/1password/CODEOWNERS @@ -0,0 +1 @@ +* @people/build-release diff --git a/pkgbuilds/1password/PKGBUILD b/pkgbuilds/1password/PKGBUILD index 9fa88c4..3e31799 100644 --- a/pkgbuilds/1password/PKGBUILD +++ b/pkgbuilds/1password/PKGBUILD @@ -13,7 +13,8 @@ options=(!strip) install="1password.install" source=(https://downloads.1password.com/linux/tar/stable/${CARCH}/${_tar}{,.sig}) sha256sums=('b5d86e0497825db7a90cde99f58aacea013994c521ef6b0e26e412bf84288f53' - '095cbc50cf6a6c47169d9353a12ac166d5a94c41ebbda4d671d7f7748b1250ad') + '095cbc50cf6a6c47169d9353a12ac166d5a94c41ebbda4d671d7f7748b1250ad' +) validpgpkeys=('3FEF9748469ADBE15DA7CA80AC2D62742012EA22') package() { diff --git a/pkgbuilds/1password/aur.env b/pkgbuilds/1password/aur.env new file mode 100644 index 0000000..dfde21d --- /dev/null +++ b/pkgbuilds/1password/aur.env @@ -0,0 +1,2 @@ +SSH_PRIVATE_KEY_B64 = "op://cgl-build-release-archlinux-aur-prod/AUR_SSH_PRIVATE_KEY_B64/credential" +SSH_PASSPHRASE_B64 = "op://cgl-build-release-archlinux-aur-prod/AUR_SSH_PASSPHRASE_B64/credential" diff --git a/pkgbuilds/aether/.omarchy/package.json b/pkgbuilds/aether/.omarchy/package.json index 4d0e9a1..5556a96 100644 --- a/pkgbuilds/aether/.omarchy/package.json +++ b/pkgbuilds/aether/.omarchy/package.json @@ -1,5 +1,5 @@ { "source": "aur", "release_ring": "fast", - "upstream_commit": "3fd51bdfb2102a0a2e35d3cabf208d49cfd7634e" + "upstream_commit": "c1369b415acad832e38906b80e2aa63e3bcbe0ea" } diff --git a/pkgbuilds/aether/PKGBUILD b/pkgbuilds/aether/PKGBUILD index 3a497a3..6726a19 100644 --- a/pkgbuilds/aether/PKGBUILD +++ b/pkgbuilds/aether/PKGBUILD @@ -1,6 +1,6 @@ # Maintainer: Bjarne Øverli pkgname=aether -pkgver=4.16.0 +pkgver=4.19.0 pkgrel=1 pkgdesc='Desktop theming application - extract colors from wallpapers and apply cohesive themes' arch=('x86_64' 'aarch64') @@ -12,9 +12,9 @@ source_x86_64=("aether-linux-amd64-${pkgver}::https://github.com/bjarneo/aether/ "aether-wp-linux-amd64-${pkgver}::https://github.com/bjarneo/aether/releases/download/v${pkgver}/aether-wp-linux-amd64") source_aarch64=("aether-linux-arm64-${pkgver}::https://github.com/bjarneo/aether/releases/download/v${pkgver}/aether-linux-arm64" "aether-wp-linux-arm64-${pkgver}::https://github.com/bjarneo/aether/releases/download/v${pkgver}/aether-wp-linux-arm64") -sha256sums=('c3cbc6afeaaa7a0a717a9b3f5c2cd34a91dbb3ec90665c5fa728e31d0eedc6a8') -sha256sums_x86_64=('096b2db48ddd363e53f1039a42572d3493d0081439bb693603082cbb23d907b3' '8e38a4f5aa84fc76ecdcde332bff4f89e7e5361fea4961f3ba00c5e3576dad31') -sha256sums_aarch64=('29d19b41df8a63295265ee66f9f4bce4e55907e99c87f1a23ae60a3804430a79' 'a31354adc0ee9f7e17bc221d9224c0bf0c78ec7fe3da240111da2a2295e26194') +sha256sums=('f015adc8dd065d3a4386b78fd1d647b85b56892414b71a2d316018ae1bc8d644') +sha256sums_x86_64=('5f2fffdc9d8ea6f404f62aba1c28d3e444e6cc96b6258d4312c8504c6c4d81aa' '4003152dc4879e4c4bec2e1d1a72c8ac0157718670e6cb8cdf11b797360d7924') +sha256sums_aarch64=('683f89834aeffd774088588d7549fcf6dc3a1332d2c1189e3a9651473e4d7738' '5525a285ee0111f659fcfba76a91f299082deb0372f2d8ca7d3559faf4774bf5') noextract=("aether-linux-amd64-${pkgver}" "aether-linux-arm64-${pkgver}" "aether-wp-linux-amd64-${pkgver}" "aether-wp-linux-arm64-${pkgver}") diff --git a/pkgbuilds/claude-code/.omarchy/package.json b/pkgbuilds/claude-code/.omarchy/package.json index dc0453e..7bb380f 100644 --- a/pkgbuilds/claude-code/.omarchy/package.json +++ b/pkgbuilds/claude-code/.omarchy/package.json @@ -1,5 +1,5 @@ { "source": "aur", "release_ring": "fast", - "upstream_commit": "763276e5984a375b8cb8f069edbfa66bb0dbfbe0" + "upstream_commit": "0c11c1957a6d1faf6e28111aa7b6248469a19039" } diff --git a/pkgbuilds/claude-code/PKGBUILD b/pkgbuilds/claude-code/PKGBUILD index ba26894..e4408f7 100644 --- a/pkgbuilds/claude-code/PKGBUILD +++ b/pkgbuilds/claude-code/PKGBUILD @@ -4,7 +4,7 @@ # Automation repository: https://github.com/fabifont/claude-code-aur pkgname=claude-code -pkgver=2.1.133 +pkgver=2.1.150 pkgrel=1 pkgdesc="An agentic coding tool that lives in your terminal" arch=('x86_64' 'aarch64') @@ -29,8 +29,8 @@ source_x86_64=("claude-${pkgver}-x86_64::https://downloads.claude.ai/claude-code source_aarch64=("claude-${pkgver}-aarch64::https://downloads.claude.ai/claude-code-releases/${pkgver}/linux-arm64/claude") sha256sums=('SKIP') -sha256sums_x86_64=('d0ddf0aee6e4426a705719e5d4716e3ce3cb38f9a5fe06eb6d5ffcef6c98832a') -sha256sums_aarch64=('dcc7275f9198317e073c329abe174827604a801e9bfb577a00d86efcf4f8167c') +sha256sums_x86_64=('6c086a0f5fbf684d4148bb69629268b4f5109498c1a7be757acf18c51fd04f4b') +sha256sums_aarch64=('2052949543ea076e2b5cda44c031b2b34fc303db98dc56ad6583b7e0a417ebeb') package() { install -Dm755 "${srcdir}/claude-${pkgver}-${CARCH}" "${pkgdir}/opt/claude-code/bin/claude" diff --git a/pkgbuilds/cliamp/.omarchy/package.json b/pkgbuilds/cliamp/.omarchy/package.json index 040cb02..1214782 100644 --- a/pkgbuilds/cliamp/.omarchy/package.json +++ b/pkgbuilds/cliamp/.omarchy/package.json @@ -1,4 +1,4 @@ { "source": "aur", - "upstream_commit": "70536fee9831761acc4e9805a63ea21bc0a078b7" + "upstream_commit": "622e5d5af34dce32c91de43fc8f941b59ce513ad" } diff --git a/pkgbuilds/cliamp/PKGBUILD b/pkgbuilds/cliamp/PKGBUILD index 116ac86..b65afbb 100644 --- a/pkgbuilds/cliamp/PKGBUILD +++ b/pkgbuilds/cliamp/PKGBUILD @@ -1,6 +1,6 @@ # Maintainer: bjarneo pkgname=cliamp -pkgver=1.47.2 +pkgver=1.52.0 pkgrel=1 pkgdesc='A retro terminal music player inspired by Winamp 2.x' arch=('x86_64' 'aarch64') @@ -11,7 +11,7 @@ optdepends=('pipewire-alsa: audio output on PipeWire systems' 'pulseaudio-alsa: audio output on PulseAudio systems') makedepends=('go') source=("${pkgname}-${pkgver}.tar.gz::https://github.com/bjarneo/cliamp/archive/refs/tags/v${pkgver}.tar.gz") -sha256sums=('d59996b6157c6cc855bdfc52355edde75a56ba28d1665f5d32c84f07f716eb09') +sha256sums=('f8634cf70a1c33de6c2bbc340597576a54f83570a6d08236541f8193cf9ac18d') build() { cd "${pkgname}-${pkgver}" diff --git a/pkgbuilds/crush-bin/.omarchy/package.json b/pkgbuilds/crush-bin/.omarchy/package.json index a9089cb..6357ea7 100644 --- a/pkgbuilds/crush-bin/.omarchy/package.json +++ b/pkgbuilds/crush-bin/.omarchy/package.json @@ -1,5 +1,5 @@ { "source": "aur", "release_ring": "fast", - "upstream_commit": "524876732b9b836914debc3b1b85156ba89f80a6" + "upstream_commit": "73710f2f162419caa09b912510aa42d718ffc2ec" } diff --git a/pkgbuilds/crush-bin/PKGBUILD b/pkgbuilds/crush-bin/PKGBUILD index 4ce3c31..fa7ddea 100644 --- a/pkgbuilds/crush-bin/PKGBUILD +++ b/pkgbuilds/crush-bin/PKGBUILD @@ -3,7 +3,7 @@ # Maintainer: caarlos0 pkgname='crush-bin' -pkgver=0.66.0 +pkgver=0.71.0 pkgrel=1 pkgdesc='A powerful terminal-based AI assistant for developers, providing intelligent coding assistance directly in your terminal.' url='https://charm.sh/crush' @@ -13,16 +13,16 @@ provides=('crush') conflicts=('crush') source_aarch64=("${pkgname}_${pkgver}_aarch64.tar.gz::https://github.com/charmbracelet/crush/releases/download/v${pkgver}/crush_${pkgver}_Linux_arm64.tar.gz") -sha256sums_aarch64=('87e5223bb561822ccba836a98bf8132698fce5fde780071e8252fead65ec6d33') +sha256sums_aarch64=('a4d57d9df9475dbe3caebf05abc1fdb97610ced407aa479e12104006add009e9') source_armv7h=("${pkgname}_${pkgver}_armv7h.tar.gz::https://github.com/charmbracelet/crush/releases/download/v${pkgver}/crush_${pkgver}_Linux_armv7.tar.gz") -sha256sums_armv7h=('f52666f311d0f958444c31eff75505d6e7c8eb4cf10b9486795b6e7d216ac7f9') +sha256sums_armv7h=('8efdabad1e3100bca7444111bf6da5c0cc8427b235340e0c4c714a87e0c4c953') source_i686=("${pkgname}_${pkgver}_i686.tar.gz::https://github.com/charmbracelet/crush/releases/download/v${pkgver}/crush_${pkgver}_Linux_i386.tar.gz") -sha256sums_i686=('d6965d0496bf39915016b68cb7f0ad13f43fb255d024d20b8748680b3bcc65f5') +sha256sums_i686=('0f4b506137d494fb3821c4ddab2cc434d4cc07055f12bdf400a71e5324112cfc') source_x86_64=("${pkgname}_${pkgver}_x86_64.tar.gz::https://github.com/charmbracelet/crush/releases/download/v${pkgver}/crush_${pkgver}_Linux_x86_64.tar.gz") -sha256sums_x86_64=('586eeed320e36c6a570ceedf7497b2a30144ba2d032e99f873fc50edc5135bfa') +sha256sums_x86_64=('0055270fd5962cd4f24b9eafb79e8ffd6650f732286d71ff8d22d1a5b13f9edc') package() { case "$CARCH" in diff --git a/pkgbuilds/cursor-bin/.omarchy/package.json b/pkgbuilds/cursor-bin/.omarchy/package.json index 9437558..27d14c8 100644 --- a/pkgbuilds/cursor-bin/.omarchy/package.json +++ b/pkgbuilds/cursor-bin/.omarchy/package.json @@ -1,5 +1,5 @@ { "source": "aur", "release_ring": "fast", - "upstream_commit": "eaae1bc8347514b1ae8dbe7b926eb4f97fab7a3b" + "upstream_commit": "5239b95c2e9024b1c3779ce7da47ba6eb1190ef5" } diff --git a/pkgbuilds/cursor-bin/PKGBUILD b/pkgbuilds/cursor-bin/PKGBUILD index 86e050e..ab4d242 100644 --- a/pkgbuilds/cursor-bin/PKGBUILD +++ b/pkgbuilds/cursor-bin/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: Gunther Schulz pkgname=cursor-bin -pkgver=3.3.27 +pkgver=3.5.33 pkgrel=1 pkgdesc='AI-first coding environment' arch=('x86_64') @@ -12,7 +12,7 @@ _electron=electron depends=(xdg-utils ripgrep $_electron nodejs 'gcc-libs' 'hicolor-icon-theme' 'libxkbfile') options=(!strip !debug) # Don't break ext of VSCode -_commit=80b138a7a0a948e1a798e9ed7867d76a1ba9a318 +_commit=aac81804b986d739acab348ed96b8bea6e83cc57 source=("https://downloads.cursor.com/production/${_commit}/linux/x64/deb/amd64/deb/cursor_${pkgver}_amd64.deb" "https://gitlab.archlinux.org/archlinux/packaging/packages/code/-/raw/main/code."{sh,mjs} rg.sh) @@ -20,7 +20,7 @@ sha512sums=('SKIP' '937299c6cb6be2f8d25f7dbc95cf77423875c5f8353b8bd6cd7cc8e5603cbf8405b14dbf8bd615db2e3b36ed680fc8e1909410815f7f8587b7267a699e00ab37' '793f9ff6306e3992ac89802d98110cba288ea1181a901467333293b7d76182ef9792c2a39ff49d9347a18a174b1f42bc58862091dff583f4146c2704eea28033' 'e79fe7659f59d1ae02fc68816399bfd31587315df6cdb6ccf1d0ca76f7cdc692c2a42b30591c0091147bd97ef14b1c7745dc26bd7cb3ea6bba45698e5044fa2a') -sha512sums[0]=451136821739e31a54f0119aebb29bef4775d991474743e37a157e144143925afc52c2a32dcd1dfd40f115fad2731cc51964cc212c8bfc3de98e0340186d53a3 +sha512sums[0]=a0a224953f7c7b1e6385b49e13ef41f8495064a7351b5696bb7835a7c047335fd7ee203430ada740316ffc517c689ab0395c6c4da92f5655a3a749e8212852b4 noextract=(cursor_${pkgver}_amd64.deb) # avoid double tarball _app=usr/share/cursor/resources/app package() { diff --git a/pkgbuilds/github-copilot-cli/.omarchy/package.json b/pkgbuilds/github-copilot-cli/.omarchy/package.json index db0465b..581c400 100644 --- a/pkgbuilds/github-copilot-cli/.omarchy/package.json +++ b/pkgbuilds/github-copilot-cli/.omarchy/package.json @@ -1,5 +1,5 @@ { "source": "aur", "release_ring": "fast", - "upstream_commit": "338fd00b6cf7bd445bc94d6b0d75d64015aa5f81" + "upstream_commit": "32e6657c06c17c837f08636466ad074277f5a782" } diff --git a/pkgbuilds/github-copilot-cli/PKGBUILD b/pkgbuilds/github-copilot-cli/PKGBUILD index f2aff06..fda2672 100644 --- a/pkgbuilds/github-copilot-cli/PKGBUILD +++ b/pkgbuilds/github-copilot-cli/PKGBUILD @@ -6,7 +6,7 @@ _npmmodule=@github/copilot pkgname=github-copilot-cli _pkgexec=copilot -pkgver=1.0.43 +pkgver=1.0.51 pkgrel=1 pkgdesc="GitHub Copilot CLI brings the power of Copilot coding agent directly to your terminal." @@ -30,8 +30,8 @@ source=("https://registry.npmjs.org/${_npmmodule}/-/copilot-${pkgver}.tgz" "CHANGELOG-${pkgver}.md::${_urlraw}/changelog.md") noextract=("copilot-${pkgver}.tgz") -b2sums=('0bfb5bf45ae16c6014e4c23460ee7750bbcf186672f8c7b6b2614d998090e08a97c3d91609b25c3f6d34d8dfc32c84b86f4bd8e9d48c4d539fa8f0e0eb84fda6' - '0bc1f17025e60321fa296e9cef06704e834718b818d7b33f03fb5a37412229d86a92d2c70f074999838c03da5f497107e647b59ccd04ac3c3206e2e22f886c08') +b2sums=('807b1f6385f5b83e610340846c78a0f7e13b891493368565e611891094a47827c8688cf88026a4a970b21f818b79ff0ad952b7bff95677401730e7a7ca5518f8' + '6c5a48f7577d052079f8eece268f1c30be51e68cc4dab7275cdef91c5e2b5830f8f8feaa79cb3cb824497c2caa8ac168dfae3d310f51c90f3b9198f357fc3bdd') # Document: https://wiki.archlinux.org/title/Node.js_package_guidelines package() { diff --git a/pkgbuilds/heroic-games-launcher-bin/.omarchy/package.json b/pkgbuilds/heroic-games-launcher-bin/.omarchy/package.json index 904fafb..9db9920 100644 --- a/pkgbuilds/heroic-games-launcher-bin/.omarchy/package.json +++ b/pkgbuilds/heroic-games-launcher-bin/.omarchy/package.json @@ -1,4 +1,4 @@ { "source": "aur", - "upstream_commit": "b5c579e1e99fddbfab55d32bb57231d1701798d8" + "upstream_commit": "09a83e6d93e5a5465b527cd774fd9dd769efff92" } diff --git a/pkgbuilds/heroic-games-launcher-bin/PKGBUILD b/pkgbuilds/heroic-games-launcher-bin/PKGBUILD index 75fa8ee..5fb31ff 100755 --- a/pkgbuilds/heroic-games-launcher-bin/PKGBUILD +++ b/pkgbuilds/heroic-games-launcher-bin/PKGBUILD @@ -2,16 +2,16 @@ # Maintainer: CommandMC pkgname=heroic-games-launcher-bin -pkgver=2.21.0 +pkgver=2.22.0 pkgrel=1 pkgdesc="An Open source Launcher for Epic, Amazon and GOG Games" arch=('x86_64') url="https://heroicgameslauncher.com/" license=('GPL-3.0-only') -_filename=Heroic-2.21.0-linux-x64.pacman -source=("https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/releases/download/v2.21.0/Heroic-2.21.0-linux-x64.pacman") -noextract=("Heroic-2.21.0-linux-x64.pacman") -sha256sums=(7b33e168231f53d3498733aa774a0e160b2ff67d55b4cbf1ee9a4add17398765) +_filename=Heroic-2.22.0-linux-x64.pacman +source=("https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/releases/download/v2.22.0/Heroic-2.22.0-linux-x64.pacman") +noextract=("Heroic-2.22.0-linux-x64.pacman") +sha256sums=(584164ee945826251c2174ee83e37869465f5d0463b01f757b27e4da8cd903de) options=(!strip) depends=( which diff --git a/pkgbuilds/lib32-nvidia-580xx-utils/.omarchy/package.json b/pkgbuilds/lib32-nvidia-580xx-utils/.omarchy/package.json index 88e47ba..f2e56ed 100644 --- a/pkgbuilds/lib32-nvidia-580xx-utils/.omarchy/package.json +++ b/pkgbuilds/lib32-nvidia-580xx-utils/.omarchy/package.json @@ -1,4 +1,4 @@ { "source": "aur", - "upstream_commit": "bec8e0095ce19e99deed6b0e33d43e84eca86159" + "upstream_commit": "71a1958813b576e78bdb839b3397c9582e7b1c43" } diff --git a/pkgbuilds/lib32-nvidia-580xx-utils/PKGBUILD b/pkgbuilds/lib32-nvidia-580xx-utils/PKGBUILD index f1fcc8e..cb96e35 100644 --- a/pkgbuilds/lib32-nvidia-580xx-utils/PKGBUILD +++ b/pkgbuilds/lib32-nvidia-580xx-utils/PKGBUILD @@ -5,7 +5,7 @@ pkgbase=lib32-nvidia-580xx-utils pkgname=('lib32-nvidia-580xx-utils' 'lib32-opencl-nvidia-580xx') -pkgver=580.159.03 +pkgver=580.159.04 pkgrel=1 arch=('x86_64') url="http://www.nvidia.com/" @@ -14,7 +14,7 @@ license=('custom') options=('!strip') _pkg="NVIDIA-Linux-x86_64-${pkgver}" source=("https://download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/${_pkg}.run") -sha512sums=('658c7bee6289f9e3d4d04fabc9fee5692ec2a61242d05dddbad61d5d667fbc47ea2cb57802079b6f139c240d9119da4b462548a79a03483dfac53de797ffb5cf') +sha512sums=('50cc5f58ef733f8f196c71dd7b7756fc1e2f163533d9333af4341aa1379b4b68fe5a4afc5698494b2e0928fc970e902d32e6e3f8f6795d03657842c1c6434fe4') create_links() { # create soname links diff --git a/pkgbuilds/limine-snapper-sync/.omarchy/package.json b/pkgbuilds/limine-snapper-sync/.omarchy/package.json index 4ab6ef8..3b8acd8 100644 --- a/pkgbuilds/limine-snapper-sync/.omarchy/package.json +++ b/pkgbuilds/limine-snapper-sync/.omarchy/package.json @@ -1,4 +1,4 @@ { "source": "aur", - "upstream_commit": "840d2f95ff9d73b884caafcd0e74f15e8bb023fa" + "upstream_commit": "e8058141a2d5de5367448297b0d5198c98e67675" } diff --git a/pkgbuilds/limine-snapper-sync/PKGBUILD b/pkgbuilds/limine-snapper-sync/PKGBUILD index 3ea01dd..0e92b07 100644 --- a/pkgbuilds/limine-snapper-sync/PKGBUILD +++ b/pkgbuilds/limine-snapper-sync/PKGBUILD @@ -1,8 +1,8 @@ # Maintainer: Zesko pkgname="limine-snapper-sync" -pkgver=1.28.0 +pkgver=1.29.0 pkgrel=1 -pkgdesc="Automatically syncs Limine snapshot entries with Snapper snapshots." +pkgdesc="Integrates Limine boot entries with Snapper snapshots." arch=('x86_64' 'aarch64') url="https://gitlab.com/Zesko/limine-snapper-sync" source=("${pkgname}::git+${url}.git#tag=${pkgver}") @@ -28,7 +28,7 @@ optdepends=( makedepends=('git' 'gradle') backup=(etc/limine-snapper-sync.conf) conflicts=('limine-snapper-sync-git') -sha256sums=('0d217d80417382ce4d2f706a36dfcb3cdc8a981dc5fbc8054398422261058025') +sha256sums=('2284c3f6dea2d9946bd2c79901c8a481b8fa20717a3055df702ac23b5c1ebfe4') sha256sums_x86_64=('e0be791c8fda4d03b6b0a0cb824fef3149736170057b3a515252b44419606af0') sha256sums_aarch64=('b4580d9f223d0a4b3a1757e58b18ff4c1db950e67e105fc5cb741457d2384a71') diff --git a/pkgbuilds/lmstudio-bin/.omarchy/package.json b/pkgbuilds/lmstudio-bin/.omarchy/package.json index 4369dd5..753d453 100644 --- a/pkgbuilds/lmstudio-bin/.omarchy/package.json +++ b/pkgbuilds/lmstudio-bin/.omarchy/package.json @@ -1,5 +1,5 @@ { "source": "aur", "release_ring": "fast", - "upstream_commit": "7b3750eceb2a1dbd6a857d4ab149861b1505b85d" + "upstream_commit": "94026d3a96d5685eb741184cc024dd4c69955fec" } diff --git a/pkgbuilds/lmstudio-bin/PKGBUILD b/pkgbuilds/lmstudio-bin/PKGBUILD index bb16cde..6bb59a7 100644 --- a/pkgbuilds/lmstudio-bin/PKGBUILD +++ b/pkgbuilds/lmstudio-bin/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: noureddinex pkgname=lmstudio-bin -pkgver=0.4.12 -pkgrel=1 +pkgver=0.4.14 +pkgrel=4 _pkgver=${pkgver}-${pkgrel} pkgdesc="LM Studio - A desktop app for exploring and running large language models locally" arch=('x86_64') @@ -15,7 +15,7 @@ conflicts=(lmstudio) source=("https://installers.lmstudio.ai/linux/x64/${_pkgver}/LM-Studio-${_pkgver}-x64.AppImage" "lmstudio.png" "lmstudio.desktop") -sha256sums=('53b4c990c52a98be1693bef3708376ff8205cfb6abb6f560d2c691123a06cbc2' +sha256sums=('a033cbfe6d4686eb719a2de2ba6b32dbf1ece81a7c5035ac25eba9d5596efe2f' '9f791789c959a11316328692807737a5f1bc1c170ae99ec04c56bfd8ee8263e5' 'd5ac11aae025cd1cc0f9aa0713ee427dc6f46e4d1adac2a5948f93d8bbca705f') diff --git a/pkgbuilds/nvidia-580xx-utils/.omarchy/package.json b/pkgbuilds/nvidia-580xx-utils/.omarchy/package.json index fc5ddd4..7954b6d 100644 --- a/pkgbuilds/nvidia-580xx-utils/.omarchy/package.json +++ b/pkgbuilds/nvidia-580xx-utils/.omarchy/package.json @@ -1,4 +1,4 @@ { "source": "aur", - "upstream_commit": "2b9d53e5c81a0293100ca5e9c0187c6c52d77e66" + "upstream_commit": "0ed095729763c0ad4b02325896ab58034cd2d44b" } diff --git a/pkgbuilds/nvidia-580xx-utils/PKGBUILD b/pkgbuilds/nvidia-580xx-utils/PKGBUILD index 46276e9..d3b6bfa 100644 --- a/pkgbuilds/nvidia-580xx-utils/PKGBUILD +++ b/pkgbuilds/nvidia-580xx-utils/PKGBUILD @@ -7,7 +7,7 @@ pkgbase=nvidia-580xx-utils pkgname=('nvidia-580xx-utils' 'opencl-nvidia-580xx' 'nvidia-580xx-dkms') -pkgver=580.159.03 +pkgver=580.159.04 pkgrel=1 arch=('x86_64') url="http://www.nvidia.com/" @@ -33,7 +33,7 @@ sha256sums=( 'c5aa7b8abe69e72bfdc6b9ee8afbfd350bcc557e894558f2e6e4087fa9aa0dd8' '1d053c5078387021338cfc3a732bed61be1a20a549775573788e9134775c8149' '12d31a5425aba66be9e9129012cde82755ad4d5b7ce9933df8fc398c4fa8d631' - '32c85d99b0f640c9501f61b39ddad208fd0288d015c4fbc5fd0435c07783fa77' + 'c1e66761b088d17b3adf6cb6979de9af38be2684d102b001a176dcfafabdca1e' '163c57160cc1033020680f638b44ebd94b496152dcd8951e87d5077d4d5c2009' 'c1a1cf05dd12efd67858180461ad97a6ebe206b55b56df207854b322ce734613' 'b14f7a65359c05c373ddfc750cd4cf086a48e815489d93ad5cbe1dbf84bf8f5a' diff --git a/pkgbuilds/openai-codex-bin/.omarchy/package.json b/pkgbuilds/openai-codex-bin/.omarchy/package.json index ae7cd47..5f24bb5 100644 --- a/pkgbuilds/openai-codex-bin/.omarchy/package.json +++ b/pkgbuilds/openai-codex-bin/.omarchy/package.json @@ -1,5 +1,5 @@ { "source": "aur", "release_ring": "fast", - "upstream_commit": "f3cca295abffa9ae73d0b72d298868c0baa19b64" + "upstream_commit": "30117acd54d7fca1c1b2d9b0ad0382fc7c62829a" } diff --git a/pkgbuilds/openai-codex-bin/PKGBUILD b/pkgbuilds/openai-codex-bin/PKGBUILD index 9cb37c5..e441916 100644 --- a/pkgbuilds/openai-codex-bin/PKGBUILD +++ b/pkgbuilds/openai-codex-bin/PKGBUILD @@ -2,7 +2,7 @@ # shellcheck disable=SC2034 # Maintainer: Chmouel Boudjnah pkgname=openai-codex-bin -pkgver=0.129.0 +pkgver=0.133.0 pkgrel=1 pkgdesc="Arch Linux package for OpenAI's Codex CLI - Auto Updated" arch=('x86_64' 'aarch64') @@ -20,8 +20,8 @@ keywords=('codex' 'openai' 'cli' 'ai' 'machine-learning' 'chatgpt') source_x86_64=( "codex-${pkgver}-x86_64.tar.gz::https://github.com/openai/codex/releases/download/rust-v${pkgver}/codex-x86_64-unknown-linux-musl.tar.gz" ) -sha256sums_x86_64=('4a4a28d22dd1f874e2c7b23d9ba13db02bf7ad4ee9a70b9c4eaab618708d0582') -sha256sums_aarch64=('60ed9e55569a4c287d012cdfbd43742a2bfb130673e22c63b6bb38c68faa7360') +sha256sums_x86_64=('d06019ab9c35d281b78dc2ebb2ae55c2bb97ea11bf7f452bafe390eddb0034ef') +sha256sums_aarch64=('268bfe8cf8154940fea256df75cd441c54a0c71e6c8ccd45ab3f76ff28ba1413') source_aarch64=( "codex-${pkgver}-aarch64.tar.gz::https://github.com/openai/codex/releases/download/rust-v${pkgver}/codex-aarch64-unknown-linux-musl.tar.gz" diff --git a/pkgbuilds/python-terminaltexteffects/.omarchy/package.json b/pkgbuilds/python-terminaltexteffects/.omarchy/package.json index f7982e7..f305a7c 100644 --- a/pkgbuilds/python-terminaltexteffects/.omarchy/package.json +++ b/pkgbuilds/python-terminaltexteffects/.omarchy/package.json @@ -1,8 +1,4 @@ { "source": "aur", - "pkgrel": { - "suffix": 1, - "offset": 1 - }, - "upstream_commit": "d686c1b5e06aca90ecd14cbeec1524bf9999787a" + "upstream_commit": "efbe1ae0019e7c44c9e1c7e22904f9fc77150b6a" } diff --git a/pkgbuilds/python-terminaltexteffects/PKGBUILD b/pkgbuilds/python-terminaltexteffects/PKGBUILD index 9c9d370..c8470a7 100644 --- a/pkgbuilds/python-terminaltexteffects/PKGBUILD +++ b/pkgbuilds/python-terminaltexteffects/PKGBUILD @@ -4,8 +4,8 @@ pkgname=python-terminaltexteffects _pkgname=terminaltexteffects -pkgver=0.14.2 -pkgrel=2.1 +pkgver=0.15.0 +pkgrel=1 pkgdesc='Visual effects engine applied to text in the terminal. ' url="https://github.com/ChrisBuilds/terminaltexteffects" arch=('any') @@ -18,7 +18,7 @@ conflicts=('terminaltexteffects') provides=('tte') source=("${pkgname}-${pkgver}.tgz::${url}/archive/release-${pkgver}.tar.gz") -b2sums=('c7ff3b302ee110305d73f2f66c6ff5ff2ad338816c1de7120be4b5bc6bf407ae414478b289a2742d592698c5a71c2c6c845ecad60cb1cdc2890fc8b7914a9dfb') +b2sums=('67f591e5bb1be0340c992d9cd5eb4e9b2c83409ec8d8104dd0d3d0cea37de946710c64adca3d71cce3fc89838a3d40b3dad08853d1d017cb2f108692bad31f30') build() { diff --git a/pkgbuilds/spotify/.omarchy/package.json b/pkgbuilds/spotify/.omarchy/package.json index 975afd2..205f465 100644 --- a/pkgbuilds/spotify/.omarchy/package.json +++ b/pkgbuilds/spotify/.omarchy/package.json @@ -1,5 +1,5 @@ { "source": "aur", "release_ring": "fast", - "upstream_commit": "47284a01b3f167fce6781f92069c6ed7f281ca59" + "upstream_commit": "2783a35d3d230a0055d1b18bf27aaf630701bae1" } diff --git a/pkgbuilds/spotify/PKGBUILD b/pkgbuilds/spotify/PKGBUILD index d78033d..a3a7c4a 100644 --- a/pkgbuilds/spotify/PKGBUILD +++ b/pkgbuilds/spotify/PKGBUILD @@ -6,9 +6,9 @@ # Contributor: Eothred pkgname=spotify -pkgver='1.2.86.502' +pkgver='1.2.90.451' epoch=1 -_commit=g8cd7fb22 +_commit=gb094aab0 pkgrel=1 pkgdesc='A proprietary music streaming service' arch=('x86_64') @@ -34,13 +34,13 @@ source=("${pkgname}-${pkgver}-${_commit}-x86_64.deb::http://repository.spotify.c "${pkgname}-${pkgver}-${pkgrel}-Release::http://repository.spotify.com/dists/testing/Release" "${pkgname}-${pkgver}-${pkgrel}-Release.sig::http://repository.spotify.com/dists/testing/Release.gpg" "${pkgname}-${pkgver}-${pkgrel}-x86_64-Packages::http://repository.spotify.com/dists/testing/non-free/binary-amd64/Packages") -sha512sums=('414373a4094eede6efdb343e3a37e323355a445fd520cb862ef16cc2d5c90d6be0a86b9bc75f3f4842fc807be41ff1074d62c4fae9a92a3d0f44e756c78f54c5' +sha512sums=('8c3feacba618f43df1323cd2c6fe52783a27efbd3072c64042620315457ec219fe59de4cfcb1b46baa1281a77258fcc1b2f08ffcb9ee992557c44fc4218d3b73' 'da48b628a4ea925dd8521133ebf364b261b11aed252d264dde6605d915cdb631919ffe672c58534bcdb60869e5d87a49a60a8198780b99517123f0031e83fdb1' '999abe46766a4101e27477f5c9f69394a4bb5c097e2e048ec2c6cb93dfa1743eb436bde3768af6ba1b90eaac78ea8589d82e621f9cbe7d9ab3f41acee6e8ca20' '2e16f7c7b09e9ecefaa11ab38eb7a792c62ae6f33d95ab1ff46d68995316324d8c5287b0d9ce142d1cf15158e61f594e930260abb8155467af8bc25779960615' - 'd6def06bdf30e894f7e298093dfef63933e6f12dd97dbd10870dac7df70827a3f11667d487ce5e37d60af2b04e7ee13fdf51cfb53e6f4170f663bac490eed820' + 'f8f979d829f375dedc5c2b0df757e1822068d2f190b463630aeb2a0bd492e31ccbd8871fcd512b34b67d13c8347471da1896fc34e57b9c476147f14a65b0a3a1' 'SKIP' - '9bd50f89514d118d3447d5e4cfd6878c4967ab9b7151f6171cb04d30d7e2ecc59828b63c4c917d423d57c580c2f6b426ed50742d775a0b2f9fa56c9d2882fe08') + '4397743ae08a887feaeccb11a48eee378864d7bf1e73e48a27af2f732101451f019c6159940914821c474a1085a0bbdb48fd0c045549767a9f940360b1587a05') # Import key with: # curl -sS https://download.spotify.com/debian/pubkey_5384CE82BA52C83A.gpg | gpg --import - diff --git a/pkgbuilds/sunshine/.omarchy/package.json b/pkgbuilds/sunshine/.omarchy/package.json index e135a13..eed3f82 100644 --- a/pkgbuilds/sunshine/.omarchy/package.json +++ b/pkgbuilds/sunshine/.omarchy/package.json @@ -1,4 +1,4 @@ { "source": "aur", - "upstream_commit": "25d6084936ff14a3b2fdb8c151cda4e579803079" + "upstream_commit": "bbd56b3001bd99b609eeac3f86ebcf67a32e3442" } diff --git a/pkgbuilds/sunshine/PKGBUILD b/pkgbuilds/sunshine/PKGBUILD index 01507e1..141391e 100644 --- a/pkgbuilds/sunshine/PKGBUILD +++ b/pkgbuilds/sunshine/PKGBUILD @@ -2,15 +2,15 @@ # Reference: https://wiki.archlinux.org/title/PKGBUILD ## options -: "${_run_unit_tests:=false}" # if set to true; unit tests will be executed post build; useful in CI +: "${_run_unit_tests:=false}" # if set to true; unit tests will be executed post build; useful in CI : "${_support_headless_testing:=false}" : "${_use_cuda:=detect}" # nvenc -: "${_commit:=86188d47a7463b0f73b35de18a628353adeaa20e}" +: "${_commit:=14ffa6fdaa53f7b51512be2b3d24f3939695403c}" pkgname='sunshine' -pkgver=2025.924.154138 -pkgrel=3 +pkgver=2026.516.143833 +pkgrel=1 pkgdesc="Self-hosted game stream host for Moonlight" arch=('x86_64' 'aarch64') url=https://app.lizardbyte.dev/Sunshine @@ -37,6 +37,7 @@ depends=( 'libevdev' 'libmfx' 'libnotify' + 'libpipewire' 'libpulse' 'libva' 'libx11' @@ -49,6 +50,7 @@ depends=( 'openssl' 'opus' 'udev' + 'vulkan-icd-loader' 'which' ) @@ -62,6 +64,13 @@ makedepends=( 'make' 'nodejs' 'npm' + 'python-jinja' # required by the glad OpenGL/EGL loader generator + 'python-setuptools' # required for glad OpenGL/EGL loader generated, v2.0.0 + 'shaderc' +) + +checkdepends=( + 'gcovr' ) optdepends=( @@ -111,7 +120,7 @@ prepare() { build() { export BRANCH="master" - export BUILD_VERSION="2025.924.154138" + export BUILD_VERSION="2026.516.143833" export COMMIT="${_commit}" export CC="gcc${_gcc_env_suffix}" @@ -129,7 +138,6 @@ build() { -D BUILD_DOCS=OFF -D BUILD_WERROR=ON -D CMAKE_INSTALL_PREFIX=/usr - -D SUNSHINE_COMPILE_OPTIONS="-Wno-uninitialized" -D SUNSHINE_EXECUTABLE_PATH=/usr/bin/sunshine -D SUNSHINE_ASSETS_DIR="share/sunshine" -D SUNSHINE_PUBLISHER_NAME='LizardByte' @@ -144,10 +152,14 @@ build() { # therefore, set them manually to the expected values on Arch Linux if [ -z "${CUDA_PATH:-}" ] && pacman -Qi cuda &> /dev/null; then local _cuda_gcc_version - _cuda_gcc_version="$(LC_ALL=C pacman -Si cuda | grep -Pom1 '^Depends On\s*:.*\bgcc\K[0-9]+\b')" + _cuda_gcc_version="$(LC_ALL=C pacman -Si cuda | grep -Pom1 '^Depends On\s*:.*\bgcc\K[0-9]+\b' || true)" export CUDA_PATH=/opt/cuda - export NVCC_CCBIN="/usr/bin/g++-${_cuda_gcc_version}" + if [ -n "$_cuda_gcc_version" ]; then + export NVCC_CCBIN="/usr/bin/g++-${_cuda_gcc_version}" + else + export NVCC_CCBIN="/usr/bin/g++" + fi fi fi @@ -162,23 +174,67 @@ build() { desktop-file-validate "build/dev.lizardbyte.app.Sunshine.desktop" desktop-file-validate "build/dev.lizardbyte.app.Sunshine.terminal.desktop" - make -C build + cmake --build build } check() { - cd "${srcdir}/build" - ./sunshine --version - if [[ "${_run_unit_tests::1}" == "t" ]]; then export CC="gcc${_gcc_env_suffix}" export CXX="g++${_gcc_env_suffix}" cd "${srcdir}/build/tests" - ./test_sunshine --gtest_color=yes + ./test_sunshine --gtest_color=yes --gtest_output=xml:test_results.xml + + # Generate coverage report + # Run gcovr from the build directory (where all .gcda/.gcno files are) + # This matches the pattern used in ci-linux.yml + cd "${srcdir}/build" + + # Dynamically find the gcov executable from the selected compiler. + # This ensures we use the same gcov version that produced the .gcno files. + local gcov_path + local gcc_lib_dir + + gcc_lib_dir="$("$CC" -print-libgcc-file-name)" + gcc_lib_dir="${gcc_lib_dir%/*}" + gcov_path="${gcc_lib_dir}/gcov" + + if [ ! -x "$gcov_path" ]; then + gcov_path="$("$CC" -print-prog-name=gcov)" + fi + + if [ -n "$gcov_path" ] && command -v "$gcov_path" > /dev/null 2>&1; then + gcov_path="$(command -v "$gcov_path")" + else + gcov_path="$(command -v "gcov${_gcc_env_suffix}" || command -v gcov || true)" + fi + + if [ -z "$gcov_path" ]; then + echo "Unable to find gcov for ${CC}" >&2 + return 1 + fi + + echo "Using gcov at: $gcov_path" + + # Use the actual relative path to the source directory + # From ${srcdir}/build, the source is at ../${pkgname}/src + gcovr --gcov-executable "$gcov_path" . -r "../${pkgname}/src" \ + --exclude-noncode-lines \ + --exclude-throw-branches \ + --exclude-unreachable-branches \ + --verbose \ + --xml-pretty \ + -o coverage.xml + + # Post-process the coverage XML to strip the absolute path and show only 'src' + sed -i "s|${srcdir}/${pkgname}/src|src|g" coverage.xml fi + + cd "${srcdir}/build" + ./sunshine --version } package() { export MAKEFLAGS="${MAKEFLAGS:--j$(nproc)}" - make -C build install DESTDIR="$pkgdir" + DESTDIR="$pkgdir" cmake --install build } diff --git a/pkgbuilds/sunshine/sunshine.install b/pkgbuilds/sunshine/sunshine.install index d7b8773..9f9fb36 100644 --- a/pkgbuilds/sunshine/sunshine.install +++ b/pkgbuilds/sunshine/sunshine.install @@ -1,5 +1,5 @@ do_setcap() { - setcap cap_sys_admin+p $(readlink -f usr/bin/sunshine) + setcap cap_sys_admin,cap_sys_nice+p $(readlink -f usr/bin/sunshine) } do_udev_reload() { diff --git a/pkgbuilds/typora/.omarchy/package.json b/pkgbuilds/typora/.omarchy/package.json index 3e05b4b..cacc4a9 100644 --- a/pkgbuilds/typora/.omarchy/package.json +++ b/pkgbuilds/typora/.omarchy/package.json @@ -1,4 +1,4 @@ { "source": "aur", - "upstream_commit": "23728a3dd44880bd69cfb2f30808d1e3824267be" + "upstream_commit": "5f816c48dc2108bdb8f6eed50a2955ed8fab2750" } diff --git a/pkgbuilds/typora/PKGBUILD b/pkgbuilds/typora/PKGBUILD index f3842d5..ed4446a 100644 --- a/pkgbuilds/typora/PKGBUILD +++ b/pkgbuilds/typora/PKGBUILD @@ -2,7 +2,7 @@ # Contributor: Jonathan Duck pkgname=typora -pkgver=1.13.4 +pkgver=1.13.6 _pkgver_x86_64="$pkgver" _pkgver_aarch64="$pkgver" pkgrel=1 @@ -19,8 +19,8 @@ _urlbase="https://download.typora.io/linux/typora_" source_x86_64=("${_urlbase}${_pkgver_x86_64}_amd64.deb") source_aarch64=("${_urlbase}${_pkgver_aarch64}_arm64.deb") sha512sums=('de9c883c63f3ea35bd551c8761e605f8e1a3468943e000abcbf94bb0c5cbb5f0f6c7fa4d49ab39c177f167e0e3d0b061c861bf828627b4a34f7f1589119c3d04') -sha512sums_x86_64=('5471ee6e18482b1ec25b259cdb1926252715db75175e08c506deaad0baf1ee833b9cfd7f1225acad3e0e8db350b154b300e78107d4b634ee31fb183f0b96a520') -sha512sums_aarch64=('d889c9beb726f5bd46b588800b32cc64224259fc3412df758dd4f225b0b87bad057927bebf14651ed20b939df81e8ebd266ea36d89b32a0868ef704a766236dc') +sha512sums_x86_64=('a4b92a800731dee9186bcb3ddacbc2c3c99b66c4bec3c905dc80f945eb8900cf88bc0169077bca4660f2d4ea27562099e31093f0782ad1a849b9f4ebbf4de162') +sha512sums_aarch64=('b10a85fcbdfe89a0e2fc260d06005b60e298fc8f5513e60575d685ef8a679e73d3d90776f17dac03e0a716a05e0ae06bfa69af39a35f19aec910289db4bdfbe7') package() { # unpack archive diff --git a/pkgbuilds/visual-studio-code-bin/.omarchy/package.json b/pkgbuilds/visual-studio-code-bin/.omarchy/package.json index 66aeb69..7cbb9cb 100644 --- a/pkgbuilds/visual-studio-code-bin/.omarchy/package.json +++ b/pkgbuilds/visual-studio-code-bin/.omarchy/package.json @@ -1,5 +1,5 @@ { "source": "aur", "release_ring": "fast", - "upstream_commit": "2f797c65a685db48c2e72f6298901ae8d7b835d0" + "upstream_commit": "ed1c32969b54d89217053c19f55ea4bc6b761767" } diff --git a/pkgbuilds/visual-studio-code-bin/PKGBUILD b/pkgbuilds/visual-studio-code-bin/PKGBUILD index 4a74255..74dcf33 100644 --- a/pkgbuilds/visual-studio-code-bin/PKGBUILD +++ b/pkgbuilds/visual-studio-code-bin/PKGBUILD @@ -2,7 +2,7 @@ pkgname=visual-studio-code-bin _pkgname=visual-studio-code -pkgver=1.119.0 +pkgver=1.121.0 pkgrel=1 pkgdesc="Visual Studio Code (vscode): Editor for building and debugging modern web and cloud applications (official binary version)" arch=('x86_64' 'aarch64' 'armv7h') @@ -34,9 +34,9 @@ sha256sums=('2f1782b30c4e040efff655fd9cf477930c5a0c81ddae27749b0cbb922c1d248e' 'c361efa7e02fcad759ed80d2fbab67877f33219b981578af6fffaf18aeb12d9b' '3af748dd6578a1775e8eb7248ba397b7e11840df2ea6ee234ff76fee3dc306cf' '8257a5ad82fa1f7dec11dfa064217b80df4cfec24f50cec7ca0ad62cf8295bfe') -sha256sums_x86_64=('1dc648446074cbc53986ec5737d8cdae1303d098e69fe40d514eb410719db97a') -sha256sums_aarch64=('a34255d5573abad4e62641fdb934b2941b183379807e20c88308372d438159bd') -sha256sums_armv7h=('2b1ad239509d7dae0bf519671f26f018b45c88c1700bf08eb1cb57fb99ea47f7') +sha256sums_x86_64=('8cf24cc41441453e11e8fe1ae9e58d32970e23dced399835c4b0904263d66820') +sha256sums_aarch64=('c4bc2db051759a4a7229b68b7126ba3a797f87d3ea922373a307059102c61b85') +sha256sums_armv7h=('07dcb4713ac7a4fc4fa946e88a6d09b39449d93327a4d4e63973cec3c7ccd647') _set_meta_info() { sed 's/@@NAME_LONG@@/Visual Studio Code/g' "$1" |\ diff --git a/pkgbuilds/voxtype-bin/.omarchy/package.json b/pkgbuilds/voxtype-bin/.omarchy/package.json index 05a3f86..2177889 100644 --- a/pkgbuilds/voxtype-bin/.omarchy/package.json +++ b/pkgbuilds/voxtype-bin/.omarchy/package.json @@ -1,5 +1,5 @@ { "source": "aur", "release_ring": "fast", - "upstream_commit": "c14a448b526a37d72f9d4ccadaa681bff0b587c5" + "upstream_commit": "37ffeff68d8f60efb06b5dcaefac3c0cfbd3b72f" } diff --git a/pkgbuilds/voxtype-bin/PKGBUILD b/pkgbuilds/voxtype-bin/PKGBUILD index ed7b24c..497fb34 100644 --- a/pkgbuilds/voxtype-bin/PKGBUILD +++ b/pkgbuilds/voxtype-bin/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: Peter Jackson pkgname=voxtype-bin -pkgver=0.6.6 -pkgrel=2 +pkgver=0.7.3 +pkgrel=1 pkgdesc="Push-to-talk voice-to-text for Linux (pre-built binaries)" arch=('x86_64') url="https://voxtype.io" @@ -22,9 +22,11 @@ optdepends=( 'pipewire-alsa: ALSA compatibility for PipeWire (required if using PipeWire)' 'pulseaudio: audio server (alternative to PipeWire)' 'vulkan-icd-loader: GPU acceleration via Vulkan for Whisper (enable with: voxtype setup gpu --enable)' - 'cuda: GPU acceleration via CUDA for ONNX engines (NVIDIA GPUs)' - 'rocm-hip-runtime: GPU acceleration via ROCm for ONNX engines (AMD GPUs)' + 'cuda: GPU acceleration via CUDA 13 for ONNX engines (NVIDIA GPUs, requires driver 580+)' + 'cuda12.6: GPU acceleration via CUDA 12 for ONNX engines (older NVIDIA setups)' + 'rocm-hip-runtime: GPU acceleration via MIGraphX for ONNX engines (AMD GPUs)' 'ollama: local AI summarization for meeting mode' + 'gtk4-layer-shell: runtime for the GTK4 on-screen mic visualizer (voxtype-osd-gtk4)' ) provides=('voxtype') conflicts=('voxtype') @@ -40,15 +42,38 @@ source=( "voxtype-$pkgver-avx512.asc::$_github/voxtype-$pkgver-linux-x86_64-avx512.asc" "voxtype-$pkgver-vulkan::$_github/voxtype-$pkgver-linux-x86_64-vulkan" "voxtype-$pkgver-vulkan.asc::$_github/voxtype-$pkgver-linux-x86_64-vulkan.asc" - # ONNX binaries (all ONNX engines: Parakeet, Moonshine, SenseVoice, Paraformer, Dolphin, Omnilingual) + # ONNX CPU binaries (all ONNX engines: Parakeet, Moonshine, SenseVoice, Paraformer, Dolphin, Omnilingual) "voxtype-$pkgver-onnx-avx2::$_github/voxtype-$pkgver-linux-x86_64-onnx-avx2" "voxtype-$pkgver-onnx-avx2.asc::$_github/voxtype-$pkgver-linux-x86_64-onnx-avx2.asc" "voxtype-$pkgver-onnx-avx512::$_github/voxtype-$pkgver-linux-x86_64-onnx-avx512" "voxtype-$pkgver-onnx-avx512.asc::$_github/voxtype-$pkgver-linux-x86_64-onnx-avx512.asc" - "voxtype-$pkgver-onnx-cuda::$_github/voxtype-$pkgver-linux-x86_64-onnx-cuda" - "voxtype-$pkgver-onnx-cuda.asc::$_github/voxtype-$pkgver-linux-x86_64-onnx-cuda.asc" - "voxtype-$pkgver-onnx-rocm::$_github/voxtype-$pkgver-linux-x86_64-onnx-rocm" - "voxtype-$pkgver-onnx-rocm.asc::$_github/voxtype-$pkgver-linux-x86_64-onnx-rocm.asc" + # ONNX CUDA 12 binary + companion shared libs (CUDA 12.x hosts: Ubuntu LTS, Debian, older Fedora) + "voxtype-$pkgver-onnx-cuda-12::$_github/voxtype-$pkgver-linux-x86_64-onnx-cuda-12" + "voxtype-$pkgver-onnx-cuda-12.asc::$_github/voxtype-$pkgver-linux-x86_64-onnx-cuda-12.asc" + "voxtype-$pkgver-onnx-cuda-12.libonnxruntime_providers_cuda.so::$_github/voxtype-$pkgver-linux-x86_64-onnx-cuda-12.libonnxruntime_providers_cuda.so" + "voxtype-$pkgver-onnx-cuda-12.libonnxruntime_providers_shared.so::$_github/voxtype-$pkgver-linux-x86_64-onnx-cuda-12.libonnxruntime_providers_shared.so" + # ONNX CUDA 13 binary + companion shared libs (CUDA 13.x hosts: Arch, rolling distros, requires driver 580+) + # v0.7.3+: cu13 dlopens ORT at runtime (ort/load-dynamic) because Microsoft's + # prebuilt is the only ORT 1.24.4 build with Blackwell sm_120 coverage and + # is distributed as .so only. The runtime ships alongside the binary; the + # install step below symlinks libonnxruntime.so to this versioned name. + "voxtype-$pkgver-onnx-cuda-13::$_github/voxtype-$pkgver-linux-x86_64-onnx-cuda-13" + "voxtype-$pkgver-onnx-cuda-13.asc::$_github/voxtype-$pkgver-linux-x86_64-onnx-cuda-13.asc" + "voxtype-$pkgver-onnx-cuda-13.libonnxruntime_providers_cuda.so::$_github/voxtype-$pkgver-linux-x86_64-onnx-cuda-13.libonnxruntime_providers_cuda.so" + "voxtype-$pkgver-onnx-cuda-13.libonnxruntime_providers_shared.so::$_github/voxtype-$pkgver-linux-x86_64-onnx-cuda-13.libonnxruntime_providers_shared.so" + "voxtype-$pkgver-onnx-cuda-13.libonnxruntime.so.1.24.4::$_github/voxtype-$pkgver-linux-x86_64-onnx-cuda-13.libonnxruntime.so.1.24.4" + # ONNX MIGraphX binary + companion shared libs (AMD GPU EP, replaces ROCm in v0.7.0) + "voxtype-$pkgver-onnx-migraphx::$_github/voxtype-$pkgver-linux-x86_64-onnx-migraphx" + "voxtype-$pkgver-onnx-migraphx.asc::$_github/voxtype-$pkgver-linux-x86_64-onnx-migraphx.asc" + "voxtype-$pkgver-onnx-migraphx.libonnxruntime_providers_migraphx.so::$_github/voxtype-$pkgver-linux-x86_64-onnx-migraphx.libonnxruntime_providers_migraphx.so" + "voxtype-$pkgver-onnx-migraphx.libonnxruntime_providers_shared.so::$_github/voxtype-$pkgver-linux-x86_64-onnx-migraphx.libonnxruntime_providers_shared.so" + # OSD launcher + GTK4 frontend (engine-agnostic, built once in Dockerfile.onnx). + # The launcher resolves /proc/self/exe, follows the /usr/bin symlink, and + # probes its parent dir for voxtype-osd-gtk4 / voxtype-osd-native. + "voxtype-$pkgver-osd::$_github/voxtype-$pkgver-linux-x86_64-osd" + "voxtype-$pkgver-osd.asc::$_github/voxtype-$pkgver-linux-x86_64-osd.asc" + "voxtype-$pkgver-osd-gtk4::$_github/voxtype-$pkgver-linux-x86_64-osd-gtk4" + "voxtype-$pkgver-osd-gtk4.asc::$_github/voxtype-$pkgver-linux-x86_64-osd-gtk4.asc" # Config and support files "config-$pkgver.toml::https://raw.githubusercontent.com/peteonrails/voxtype/v$pkgver/config/default.toml" "voxtype-$pkgver.service::https://raw.githubusercontent.com/peteonrails/voxtype/v$pkgver/packaging/systemd/voxtype.service" @@ -57,32 +82,54 @@ source=( "voxtype-$pkgver.fish::https://raw.githubusercontent.com/peteonrails/voxtype/v$pkgver/packaging/completions/voxtype.fish" "LICENSE-$pkgver::https://raw.githubusercontent.com/peteonrails/voxtype/v$pkgver/LICENSE" "README-$pkgver.md::https://raw.githubusercontent.com/peteonrails/voxtype/v$pkgver/README.md" + # Desktop entry + terminal launcher for `voxtype configure` (TUI surfaced in walker/rofi/etc.) + "voxtype-configure-$pkgver.desktop::https://raw.githubusercontent.com/peteonrails/voxtype/v$pkgver/packaging/voxtype-configure.desktop" + "voxtype-configure-launcher-$pkgver::https://raw.githubusercontent.com/peteonrails/voxtype/v$pkgver/packaging/scripts/voxtype-configure-launcher" ) sha256sums=( # Whisper binaries - '505933791bb9389ef851813c404eefe63b186eba3aa842b2b321a164ecb8a6db' # voxtype-avx2 - 'SKIP' # voxtype-avx2.asc - 'ad9631c1fa810cab0749d66b73a549b6634047bbe36f004ad52d24acf969a467' # voxtype-avx512 - 'SKIP' # voxtype-avx512.asc - '2f7cf1bb199c2d25cae6566c2df0bbe62d39e712f9abea329cb2d563a3b548fe' # voxtype-vulkan - 'SKIP' # voxtype-vulkan.asc - # ONNX binaries - '300d040d682e39fdb3a5beca4814cdd1bc127d61efaea917ea43031193aba92f' # voxtype-onnx-avx2 - 'SKIP' # voxtype-onnx-avx2.asc - '3799fb9a6d5d59e132286b8c5f7166d849a746dcd255d2b24b77c87a3bd9fbb6' # voxtype-onnx-avx512 - 'SKIP' # voxtype-onnx-avx512.asc - 'ce130d9190274b84c61c974dbeeb3d92c308285f40d4d0befaa135be49af1a09' # voxtype-onnx-cuda - 'SKIP' # voxtype-onnx-cuda.asc - '456026cc5b0122b3f99a52691c82579bda16d1c36bd739a378b7b1ea24f1294f' # voxtype-onnx-rocm - 'SKIP' # voxtype-onnx-rocm.asc + '095191715ee18d320f319332d47ed98841a09e1927e2d2276634ba7a2d16e4e5' # voxtype-avx2 + 'SKIP' # voxtype-avx2.asc + 'ae72d9105f1e521dfcf2ddf6742a96b8af56b655023d51952b274e11faa2c5d8' # voxtype-avx512 + 'SKIP' # voxtype-avx512.asc + '3b59c0621de48109c1a63cf5af92ed085bba9d9f7d0a623082d792a2d6c15f6f' # voxtype-vulkan + 'SKIP' # voxtype-vulkan.asc + # ONNX CPU binaries + '792da58000d692bef61b5255740a098b152ad226366682be7a6e139388a68c12' # voxtype-onnx-avx2 + 'SKIP' # voxtype-onnx-avx2.asc + '1c55d0ff24d8eb45bff4e88d94f30900ff97fbc908c2a677befb5f5ab46a6c63' # voxtype-onnx-avx512 + 'SKIP' # voxtype-onnx-avx512.asc + # ONNX CUDA 12 + '72c3b291760c6ccf3a46793da440dda36cd4de8210101196163d492f0c58becf' # voxtype-onnx-cuda-12 + 'SKIP' # voxtype-onnx-cuda-12.asc + 'a8584727d51ba646ac63fc991c2f36ad6cd5b8cc8b1141896e46938700b888d0' # voxtype-onnx-cuda-12.libonnxruntime_providers_cuda.so + '1b028afc079628d76a28d7eb09700a4baead4a27f9634ba82c35398486134114' # voxtype-onnx-cuda-12.libonnxruntime_providers_shared.so + # ONNX CUDA 13 + '4e765462ab4a985acbf6e73385af1d9e40aea1873d407239ae6f495588315a36' # voxtype-onnx-cuda-13 + 'SKIP' # voxtype-onnx-cuda-13.asc + 'b6cb7744d0efd2faced5c83ead374c13e7f2630b5a249ffaf393cdb1e092c92b' # voxtype-onnx-cuda-13.libonnxruntime_providers_cuda.so + 'c6a12593396095f5670160e284c35d1700b7708cf3037b7042e2a5200ccae772' # voxtype-onnx-cuda-13.libonnxruntime_providers_shared.so + '1aacefdf0b4afa145d410b2381bbc3db3d978c485fb182c42a2b0b09f91f5310' # voxtype-onnx-cuda-13.libonnxruntime.so.1.24.4 + # ONNX MIGraphX + '87b966bc1303048ab019a559839f829031005da96938a81c0f232602e923573a' # voxtype-onnx-migraphx + 'SKIP' # voxtype-onnx-migraphx.asc + 'ddd67e6193ade819ee21f1706d1b03b9151f1d2d2843701e2d19d8b183631707' # voxtype-onnx-migraphx.libonnxruntime_providers_migraphx.so + '17f7cf47ad0d7b5ac895ae588fd62c7f85a13842588161b6a24c7d480f062be4' # voxtype-onnx-migraphx.libonnxruntime_providers_shared.so + # OSD launcher + GTK4 frontend + '3bdbcc84a5fb1853da75377dd199aad2e151f5e7bf59bfdb9a3e20632d3b96d8' # voxtype-osd + 'SKIP' # voxtype-osd.asc + '7d8eda8e4511577cf4bebb5ef56d1a09f7eea9419a5af1da97870289e180ad60' # voxtype-osd-gtk4 + 'SKIP' # voxtype-osd-gtk4.asc # Config and support files - 'SKIP' # config.toml - 'SKIP' # voxtype.service - 'SKIP' # voxtype.bash - 'SKIP' # voxtype.zsh - 'SKIP' # voxtype.fish - 'SKIP' # LICENSE - 'SKIP' # README.md + 'aaa36cb5f382e66b2d385c657450629209c5875e29c82370cc190202616a8cbe' # config.toml + '531c3658e229619e56bb01659fb81f401767b85e1d6e2acd1ac67ee3414a168c' # voxtype.service + '65c95805d9b03ccc2fadb9d63a03ab79974b00091df8457ee8ef290ec6bd5b12' # voxtype.bash + 'e5e63b3c7f48238cf719e4f2ef90c1f9c5c7e8cd25eaebc9f78bdd34b24b6605' # voxtype.zsh + 'f720ddd24ee97c105b448323899c36bca7c63d00c2d42c4a3da70c3d157dccbb' # voxtype.fish + '31123c45b4ff9cb5fd9e01083350fea6ccaf14969013fd48e4c95fdf89e6eb4b' # LICENSE + '744134f77ac3d2134682fef0bf2734aee9a36c6bbbac3c5b633ac500fa06273e' # README.md + '32144a4a5210092b0aa909f6de7a43ebe8bbf82fa3dfb1f3519787512fdf8e4b' # voxtype-configure.desktop + '2001788ae3c087ff2589ff69c9598160da1c783025cc52ca3382736694a97090' # voxtype-configure-launcher ) package() { @@ -93,14 +140,78 @@ package() { # Install Whisper Vulkan GPU binary install -Dm755 "$srcdir/voxtype-$pkgver-vulkan" "$pkgdir/usr/lib/voxtype/voxtype-vulkan" - # Install ONNX binaries (all ONNX engines) + # Install ONNX CPU binaries (no GPU EP, no companion .so files) install -Dm755 "$srcdir/voxtype-$pkgver-onnx-avx2" "$pkgdir/usr/lib/voxtype/voxtype-onnx-avx2" install -Dm755 "$srcdir/voxtype-$pkgver-onnx-avx512" "$pkgdir/usr/lib/voxtype/voxtype-onnx-avx512" - install -Dm755 "$srcdir/voxtype-$pkgver-onnx-cuda" "$pkgdir/usr/lib/voxtype/voxtype-onnx-cuda" - install -Dm755 "$srcdir/voxtype-$pkgver-onnx-rocm" "$pkgdir/usr/lib/voxtype/voxtype-onnx-rocm" - # /usr/bin/voxtype symlink is managed by the .install script - # to preserve user-configured backends across upgrades + # GPU-using ONNX binaries each live in their own subdirectory alongside + # the EP companion shared libs they dlopen at runtime. ort 2.0.0-rc.12's + # CUDA/MIGraphX EPs resolve their .so files via /proc/self/exe; if they + # aren't co-located, EP registration fails and ort silently falls back + # to CPU. /proc/self/exe follows symlinks, so the user-facing names at + # /usr/lib/voxtype/voxtype-onnx-* are symlinks into these subdirs. + + # ONNX CUDA 12 (locked to libcudart.so.12 ABI) + install -Dm755 "$srcdir/voxtype-$pkgver-onnx-cuda-12" \ + "$pkgdir/usr/lib/voxtype/cuda-12/voxtype-onnx-cuda-12" + install -Dm644 "$srcdir/voxtype-$pkgver-onnx-cuda-12.libonnxruntime_providers_cuda.so" \ + "$pkgdir/usr/lib/voxtype/cuda-12/libonnxruntime_providers_cuda.so" + install -Dm644 "$srcdir/voxtype-$pkgver-onnx-cuda-12.libonnxruntime_providers_shared.so" \ + "$pkgdir/usr/lib/voxtype/cuda-12/libonnxruntime_providers_shared.so" + ln -sf "cuda-12/voxtype-onnx-cuda-12" \ + "$pkgdir/usr/lib/voxtype/voxtype-onnx-cuda-12" + + # ONNX CUDA 13 (locked to libcudart.so.13 ABI, requires driver 580+). + # v0.7.3+: dlopens ORT at runtime. Install Microsoft's libonnxruntime + # under its SONAME plus a libonnxruntime.so symlink that ort/load-dynamic + # expects (resolved relative to /proc/self/exe, see ort src/lib.rs:96-109). + install -Dm755 "$srcdir/voxtype-$pkgver-onnx-cuda-13" \ + "$pkgdir/usr/lib/voxtype/cuda-13/voxtype-onnx-cuda-13" + install -Dm644 "$srcdir/voxtype-$pkgver-onnx-cuda-13.libonnxruntime_providers_cuda.so" \ + "$pkgdir/usr/lib/voxtype/cuda-13/libonnxruntime_providers_cuda.so" + install -Dm644 "$srcdir/voxtype-$pkgver-onnx-cuda-13.libonnxruntime_providers_shared.so" \ + "$pkgdir/usr/lib/voxtype/cuda-13/libonnxruntime_providers_shared.so" + install -Dm644 "$srcdir/voxtype-$pkgver-onnx-cuda-13.libonnxruntime.so.1.24.4" \ + "$pkgdir/usr/lib/voxtype/cuda-13/libonnxruntime.so.1.24.4" + ln -sf "libonnxruntime.so.1.24.4" \ + "$pkgdir/usr/lib/voxtype/cuda-13/libonnxruntime.so" + ln -sf "cuda-13/voxtype-onnx-cuda-13" \ + "$pkgdir/usr/lib/voxtype/voxtype-onnx-cuda-13" + + # ONNX MIGraphX (AMD GPU EP, replaces ROCm in v0.7.0) + install -Dm755 "$srcdir/voxtype-$pkgver-onnx-migraphx" \ + "$pkgdir/usr/lib/voxtype/migraphx/voxtype-onnx-migraphx" + install -Dm644 "$srcdir/voxtype-$pkgver-onnx-migraphx.libonnxruntime_providers_migraphx.so" \ + "$pkgdir/usr/lib/voxtype/migraphx/libonnxruntime_providers_migraphx.so" + install -Dm644 "$srcdir/voxtype-$pkgver-onnx-migraphx.libonnxruntime_providers_shared.so" \ + "$pkgdir/usr/lib/voxtype/migraphx/libonnxruntime_providers_shared.so" + ln -sf "migraphx/voxtype-onnx-migraphx" \ + "$pkgdir/usr/lib/voxtype/voxtype-onnx-migraphx" + + # Compatibility symlink for users with scripts referencing the old + # voxtype-onnx-rocm name. The AMD GPU EP changed from ROCm to MIGraphX + # in v0.7.0; ship one release with both names to soften the transition. + # Drop in v0.8.0. + ln -sf "voxtype-onnx-migraphx" "$pkgdir/usr/lib/voxtype/voxtype-onnx-rocm" + + # /usr/bin/voxtype symlink and the unversioned voxtype-onnx-cuda symlink + # are created by the .install script's post_install/post_upgrade hooks + # so they can pick the right CUDA variant for the host. + + # OSD launcher + GTK4 frontend. The launcher resolves /proc/self/exe and + # probes its parent directory, so it finds /usr/lib/voxtype/voxtype-osd-gtk4 + # without needing it on PATH. Only the launcher gets a /usr/bin symlink. + install -Dm755 "$srcdir/voxtype-$pkgver-osd" "$pkgdir/usr/lib/voxtype/voxtype-osd" + install -Dm755 "$srcdir/voxtype-$pkgver-osd-gtk4" "$pkgdir/usr/lib/voxtype/voxtype-osd-gtk4" + install -d "$pkgdir/usr/bin" + ln -sf /usr/lib/voxtype/voxtype-osd "$pkgdir/usr/bin/voxtype-osd" + + # Desktop entry for the TUI configure command, surfaced in walker/rofi/fuzzel/etc. + # The launcher discovers a terminal emulator and runs `voxtype configure` inside it. + install -Dm755 "$srcdir/voxtype-configure-launcher-$pkgver" \ + "$pkgdir/usr/bin/voxtype-configure-launcher" + install -Dm644 "$srcdir/voxtype-configure-$pkgver.desktop" \ + "$pkgdir/usr/share/applications/voxtype-configure.desktop" # Install default configuration install -Dm644 "$srcdir/config-$pkgver.toml" "$pkgdir/etc/voxtype/config.toml" diff --git a/pkgbuilds/voxtype-bin/voxtype-bin.install b/pkgbuilds/voxtype-bin/voxtype-bin.install index a59ec6e..e062782 100644 --- a/pkgbuilds/voxtype-bin/voxtype-bin.install +++ b/pkgbuilds/voxtype-bin/voxtype-bin.install @@ -1,10 +1,64 @@ +# Resolve the canonical real binary that /usr/bin/voxtype dispatches to, +# regardless of whether /usr/bin/voxtype is a symlink (CPU variant) or a +# wrapper script (GPU/ONNX variant whose binary lives next to companion +# .so files). Echoes the real path or empty string if not present. +_resolve_active_binary() { + if [ -L /usr/bin/voxtype ]; then + readlink -f /usr/bin/voxtype + elif [ -f /usr/bin/voxtype ]; then + # Wrapper script — extract the `exec /path` line. + sed -n 's/^exec \([^ ]*\).*/\1/p' /usr/bin/voxtype | head -1 + fi +} + +# Install /usr/bin/voxtype dispatching to $1 (a path under /usr/lib/voxtype/). +# Uses a thin shell wrapper when $1 lives in a GPU subdirectory next to its +# companion ONNX Runtime provider .so files (cuda-12/, cuda-13/, migraphx/). +# Without the wrapper, ORT's argv[0]-based provider lookup hits /usr/bin/ +# which doesn't have the .so files and silently falls back to CPU. The +# wrapper `exec`s the real path so argv[0] becomes the canonical location +# and ORT finds the .so files alongside. +_install_active_binary() { + local target="$1" + rm -f /usr/bin/voxtype + local target_dir + target_dir=$(dirname "$target") + local subdir="${target_dir##*/}" + case "$subdir" in + cuda-12|cuda-13|migraphx) + local migraphx_env="" + if [ "$subdir" = "migraphx" ]; then + # MIGraphX needs a writeable model-cache directory or its + # runtime fails to save compiled graphs and inference + # errors out. Default to $XDG_CACHE_HOME/voxtype/migraphx, + # honoring user override. + migraphx_env=': "${ORT_MIGRAPHX_MODEL_CACHE_PATH:=${XDG_CACHE_HOME:-$HOME/.cache}/voxtype/migraphx}"\nmkdir -p "$ORT_MIGRAPHX_MODEL_CACHE_PATH"\nexport ORT_MIGRAPHX_MODEL_CACHE_PATH\n' + fi + { + printf '#!/bin/sh\n' + printf '# voxtype dispatch wrapper.\n' + printf '# Execs the GPU/ONNX binary by canonical path so ORT'\''s argv[0]\n' + printf '# based provider .so lookup resolves to the right subdirectory.\n' + printf '# Managed by `voxtype setup onnx --enable` and the AUR package'\''s\n' + printf '# post_install / post_upgrade hooks; do not edit by hand.\n' + printf '%b' "$migraphx_env" + printf 'exec %s "$@"\n' "$target" + } > /usr/bin/voxtype + chmod 755 /usr/bin/voxtype + ;; + *) + ln -sf "$target" /usr/bin/voxtype + ;; + esac +} + _set_default_backend() { # Set the default CPU backend based on CPU capabilities if grep -q avx512f /proc/cpuinfo 2>/dev/null; then - ln -sf /usr/lib/voxtype/voxtype-avx512 /usr/bin/voxtype + _install_active_binary /usr/lib/voxtype/voxtype-avx512 echo "avx512" else - ln -sf /usr/lib/voxtype/voxtype-avx2 /usr/bin/voxtype + _install_active_binary /usr/lib/voxtype/voxtype-avx2 echo "avx2" fi } @@ -15,9 +69,35 @@ _preserve_or_set_backend() { if [ -f "$saved" ]; then target=$(cat "$saved") rm -f "$saved" + + # Compatibility map for 0.6.x → 0.7.x binary renames. Users who + # had an ONNX engine selected on 0.6.x would otherwise fall back + # to CPU Whisper after upgrade because the old binary names no + # longer exist; the map preserves engine intent across the rename. + case "$target" in + */voxtype-parakeet-avx2) + target="/usr/lib/voxtype/voxtype-onnx-avx2" ;; + */voxtype-parakeet-avx512) + target="/usr/lib/voxtype/voxtype-onnx-avx512" ;; + */voxtype-onnx-rocm) + target="/usr/lib/voxtype/migraphx/voxtype-onnx-migraphx" ;; + */voxtype-onnx-cuda) + # 0.7.0 split CUDA into 12/13. Pick the variant matching + # the host's libcudart soname; fall back to cuda-13 if + # neither is detected (modern default). + local cuda_major + cuda_major=$(_detect_cuda_major 2>/dev/null) + if [ -z "$cuda_major" ]; then + cuda_major=13 + fi + target="/usr/lib/voxtype/cuda-${cuda_major}/voxtype-onnx-cuda-${cuda_major}" ;; + esac + if [ -f "$target" ]; then - ln -sf "$target" /usr/bin/voxtype - echo "${target##*/voxtype-}" + _install_active_binary "$target" + # Strip the /usr/lib/voxtype/[/]voxtype- prefix for the echo + local short=${target##*/voxtype-} + echo "${short%/*}" return fi fi @@ -26,6 +106,60 @@ _preserve_or_set_backend() { _set_default_backend } +# Detect the host's CUDA runtime major version by inspecting libcudart's SONAME. +# Echoes 12, 13, or empty string if no CUDA runtime found. Used to point the +# unversioned voxtype-onnx-cuda symlink at the matching variant — cu12 binary +# needs libcudart.so.12, cu13 needs libcudart.so.13. Mismatched pairings +# register the EP, then fail at first dlopen and silently fall back to CPU. +_detect_cuda_major() { + local lib + for lib in libcudart.so.13 libcudart.so.12; do + if /sbin/ldconfig -p 2>/dev/null | grep -q "\b$lib\b"; then + echo "${lib##*.so.}" + return + fi + done + # Fallback: probe well-known paths + if [ -e /usr/lib/libcudart.so.13 ] || [ -e /opt/cuda/lib64/libcudart.so.13 ]; then + echo "13" + elif [ -e /usr/lib/libcudart.so.12 ] || [ -e /opt/cuda/lib64/libcudart.so.12 ]; then + echo "12" + fi +} + +_set_onnx_cuda_symlink() { + # Point /usr/lib/voxtype/voxtype-onnx-cuda at the variant matching the + # host's CUDA runtime. If no CUDA is installed, leave the unversioned + # symlink dangling — users running `voxtype setup gpu --enable` later + # will set it up after installing CUDA. + local cuda_major target + cuda_major=$(_detect_cuda_major) + case "$cuda_major" in + 13) + target="cuda-13/voxtype-onnx-cuda-13" + ;; + 12) + target="cuda-12/voxtype-onnx-cuda-12" + ;; + *) + # No CUDA detected. Prefer cu13 if both binaries are present + # (rolling-distro default); fall back to cu12 if only that exists. + if [ -f /usr/lib/voxtype/cuda-13/voxtype-onnx-cuda-13 ]; then + target="cuda-13/voxtype-onnx-cuda-13" + elif [ -f /usr/lib/voxtype/cuda-12/voxtype-onnx-cuda-12 ]; then + target="cuda-12/voxtype-onnx-cuda-12" + else + return + fi + ;; + esac + + if [ -f "/usr/lib/voxtype/$target" ]; then + ln -sf "$target" /usr/lib/voxtype/voxtype-onnx-cuda + echo "$cuda_major" + fi +} + _detect_gpu() { # Detect GPU for acceleration recommendation GPU_DETECTED="" @@ -57,11 +191,19 @@ _detect_gpu() { echo " sudo voxtype setup gpu --enable" echo "" if [ "$GPU_VENDOR" = "nvidia" ]; then - echo " Whisper: requires vulkan-icd-loader" - echo " ONNX engines: requires cuda package" + local cuda_major + cuda_major=$(_detect_cuda_major) + if [ "$cuda_major" = "13" ]; then + echo " CUDA 13 runtime detected — voxtype-onnx-cuda points to cuda-13 binary" + elif [ "$cuda_major" = "12" ]; then + echo " CUDA 12 runtime detected — voxtype-onnx-cuda points to cuda-12 binary" + else + echo " Whisper: requires vulkan-icd-loader" + echo " ONNX engines: requires cuda (CUDA 13) or cuda12.6 (CUDA 12) package" + fi elif [ "$GPU_VENDOR" = "amd" ]; then echo " Whisper: requires vulkan-icd-loader" - echo " ONNX engines: requires rocm-hip-runtime" + echo " ONNX engines: requires rocm-hip-runtime (AMD GPU EP is MIGraphX as of v0.7.0)" else echo " Requires: vulkan-icd-loader package" fi @@ -76,6 +218,11 @@ post_install() { CPU_VARIANT=$(_set_default_backend) echo " CPU backend: $CPU_VARIANT (using voxtype-$CPU_VARIANT)" + CUDA_PICK=$(_set_onnx_cuda_symlink) + if [ -n "$CUDA_PICK" ]; then + echo " CUDA runtime: $CUDA_PICK detected, voxtype-onnx-cuda → cuda-$CUDA_PICK variant" + fi + _detect_gpu echo "" @@ -96,33 +243,55 @@ post_install() { } pre_upgrade() { - # Save the current backend so post_upgrade can restore it - if [ -L /usr/bin/voxtype ]; then - readlink /usr/bin/voxtype > /tmp/.voxtype-backend-upgrade + # Save the current backend's canonical real path so post_upgrade can + # re-install /usr/bin/voxtype pointing at the same binary. Handles + # both the legacy symlink form (CPU variants, pre-0.7) and the + # wrapper-script form (GPU/ONNX variants from 0.7+ that need argv[0] + # to canonicalize for ORT's provider .so lookup). + local target + target=$(_resolve_active_binary) + if [ -n "$target" ]; then + echo "$target" > /tmp/.voxtype-backend-upgrade fi } post_upgrade() { echo "" - echo "==> Voxtype upgraded to 0.6.6" + echo "==> Voxtype upgraded to 0.7.3" echo "" BACKEND=$(_preserve_or_set_backend) echo " Backend: $BACKEND (using voxtype-$BACKEND)" + # Re-pick the CUDA variant on every upgrade in case the host's CUDA + # runtime changed (e.g., user upgraded from CUDA 12 to CUDA 13). + CUDA_PICK=$(_set_onnx_cuda_symlink) + if [ -n "$CUDA_PICK" ]; then + echo " CUDA runtime: $CUDA_PICK detected, voxtype-onnx-cuda → cuda-$CUDA_PICK variant" + fi + echo "" - echo " v0.6.6: Media pause, audio feedback, KDE Plasma support, 7 bug fixes." - echo " New: pause_media = true pauses music during recording (MPRIS/playerctl)." - echo " New: audio feedback plays when transcription completes." - echo " KDE Plasma keybinding docs added to README and user manual." - echo " Fixes: ydotool on Fedora, eitype paste mode, duplicate notifications," - echo " xclip on X11, text replacement ordering, remote initial_prompt." + echo " What's new in v0.7.3 (two-issue hotfix):" + echo " * Vulkan binary boots on Kaby Lake and older Intel CPUs (#393)." + echo " The 0.7.2 build leaked an SSE4a instruction from the AMD Zen 3" + echo " CI runner; Intel CPUs without SSE4a would SIGILL on daemon" + echo " start. The CI ISA-floor gate is now widened to catch SSE4a," + echo " GFNI, and AVX-VNNI leakage on top of AVX-512." + echo " * NVIDIA Blackwell (RTX 5090) works on voxtype-onnx-cuda-13 (#386)." + echo " The CUDA 13 binary now ships Microsoft's ORT 1.24.4 prebuilt" + echo " which includes sm_120 kernels, dlopened at runtime via" + echo " ort/load-dynamic. cu13 install layout gains libonnxruntime.so" + echo " alongside the existing libonnxruntime_providers_*.so files." echo "" echo " Restart the daemon to apply updates:" echo " systemctl --user restart voxtype" echo "" + echo " Full release notes:" + echo " https://github.com/peteonrails/voxtype/releases/tag/v0.7.3" + echo "" } post_remove() { rm -f /usr/bin/voxtype + rm -f /usr/lib/voxtype/voxtype-onnx-cuda }