From 3f380ae10510901d5e333373dc786cc60d63f5c6 Mon Sep 17 00:00:00 2001 From: Antoine Martin Date: Thu, 8 May 2025 20:33:21 -0400 Subject: [PATCH 1/2] backports/signal-desktop: upgrade to 7.53.0 --- backports/signal-desktop/APKBUILD | 112 ++++++++++-------- ...signal-do-not-package-sqlcipher-deps.patch | 12 ++ .../signal-use-system-sqlcipher.patch | 27 ++--- .../signal-desktop/webrtc-compiler.patch | 72 +++++++++-- .../signal-desktop/webrtc-pipewire-1.4.patch | 23 ++++ 5 files changed, 176 insertions(+), 70 deletions(-) create mode 100644 backports/signal-desktop/signal-do-not-package-sqlcipher-deps.patch create mode 100644 backports/signal-desktop/webrtc-pipewire-1.4.patch diff --git a/backports/signal-desktop/APKBUILD b/backports/signal-desktop/APKBUILD index 0360625..0c33db9 100644 --- a/backports/signal-desktop/APKBUILD +++ b/backports/signal-desktop/APKBUILD @@ -2,7 +2,7 @@ # Contributor: Antoine Martin (ayakael) # Maintainer: Antoine Martin (ayakael) pkgname=signal-desktop -pkgver=7.47.0 +pkgver=7.53.0 pkgrel=0 pkgdesc="A messaging app for simple private communication with friends" url="https://github.com/signalapp/Signal-Desktop/" @@ -40,7 +40,6 @@ makedepends=" libavif-dev libjpeg-turbo-dev libepoxy-dev - libevent-dev libsecret-dev libvpx-dev libwebp-dev @@ -68,30 +67,31 @@ makedepends=" options="net !check" # use _check_depends to validate this -_libsignalver=0.67.3 -_ringrtcver=2.50.2 -_webrtcver=6834f -_stokenizerver=0.2.1 +_libsignalver=0.68.0 +_ringrtcver=2.51.0 +_webrtcver=6998b +_sqlcipherver=2.0.1 source=" https://github.com/signalapp/Signal-Desktop/archive/refs/tags/v$pkgver/Signal-Desktop-$pkgver.tar.gz https://github.com/signalapp/libsignal/archive/refs/tags/v$_libsignalver/libsignal-$_libsignalver.tar.gz https://github.com/signalapp/ringrtc/archive/refs/tags/v$_ringrtcver/ringrtc-$_ringrtcver.tar.gz + https://github.com/signalapp/node-sqlcipher/archive/refs/tags/v$_sqlcipherver/node-sqlcipher-$_sqlcipherver.tar.gz https://ayakael.net/api/packages/mirrors/generic/webrtc/$_webrtcver/webrtc-$_webrtcver.tar.zst - https://github.com/signalapp/Signal-FTS5-Extension/archive/refs/tags/v$_stokenizerver/stokenizer-$_stokenizerver.tar.gz libsignal-auditable.patch signal-use-system-sqlcipher.patch signal-disable-updates.patch signal-update-links.patch signal-show-window-please.patch + signal-rollback-locale-changes.patch + signal-do-not-package-sqlcipher-deps.patch ringrtc-webrtc-renamed.patch webrtc-shared-libs.patch webrtc-compiler.patch webrtc-gcc13.patch webrtc-rollback-red.patch webrtc-rollback-3rdparty-build-gn.patch - signal-rollback-locale-changes.patch signal-desktop.sh " @@ -123,21 +123,18 @@ _update_depends() { # _ringrtcver: follow signal-desktop package.json -> @signalapp/ringrtc # _webrtcver: follow ringrtc (on version above) -> config/version.properties -> webrtc.version # downloading tarball generated with abuild snapshot (with gclient dependencies fetched) - # _stokenizerver: follow @signalapp/better-sqlite3 (on version in package.json) -> deps/download.js -> TOKENIZER_VERSION + # _sqlcipherver: follow signal-desktop package.json -> @signalapp/sqlcipher local _libsignalver=$(curl --silent https://raw.githubusercontent.com/signalapp/Signal-Desktop/v$pkgver/package.json | grep "@signalapp/libsignal-client\": \"" | awk '{print $2}' | tr -d ',' | tr -d '"' | head -n 1) local _ringrtcver=$(curl --silent https://raw.githubusercontent.com/signalapp/Signal-Desktop/v$pkgver/package.json | grep "@signalapp/ringrtc\": \"" | awk '{print $2}' | tr -d ',' | tr -d '"' | head -n 1) - local _bsqlitever=$(curl --silent https://raw.githubusercontent.com/signalapp/Signal-Desktop/v$pkgver/package.json | grep "@signalapp/better-sqlite3\": \"" | awk '{print $2}' | tr -d ',' | tr -d '"' | head -n 1) local _webrtcver=$(curl --silent https://raw.githubusercontent.com/signalapp/ringrtc/v$_ringrtcver/config/version.properties | awk -F '=' '{if($1 == "webrtc.version"){print $2}}' | head -n 1) - local _extensionver=$(curl --silent https://raw.githubusercontent.com/signalapp/better-sqlite3/v$_bsqlitever/deps/download.js | grep "const EXTENSION_VERSION" | awk '{print $4}' | tr -d "'" | tr -d ';' | head -n 1) - local _extensionver=${_extensionver/-*} - local _stokenizerver=$(curl --silent https://raw.githubusercontent.com/signalapp/Signal-Sqlcipher-Extension/refs/tags/v$_extensionver/Cargo.lock | sed -n "/^name = \"signal-tokenizer\"$/,/^$/p" | awk -F ' = ' '{if($1=="version"){print $2}}' | tr -d '"') + local _sqlcipherver=$(curl --silent https://raw.githubusercontent.com/signalapp/Signal-Desktop/v$pkgver/package.json | grep "@signalapp/sqlcipher\": \"" | awk '{print $2}' | tr -d ',' | tr -d '"' | head -n 1) sed -i \ -e "s|^_libsignalver=.*|_libsignalver=$_libsignalver|" \ -e "s|^_ringrtcver=.*|_ringrtcver=$_ringrtcver|" \ -e "s|^_webrtcver=.*|_webrtcver=$_webrtcver|" \ - -e "s|^_stokenizerver=.*|_stokenizerver=$_stokenizerver|" \ + -e "s|^_sqlcipherver=.*|_sqlcipherver=$_sqlcipherver|" \ APKBUILD } @@ -192,19 +189,25 @@ target_cpu_only = True prepare() { # Moves to builddir to use abuild patch logics - for i in Signal-Desktop-$pkgver libsignal-$_libsignalver ringrtc-$_ringrtcver webrtc-$_webrtcver Signal-FTS5-Extension-$_stokenizerver; do + for i in Signal-Desktop-$pkgver libsignal-$_libsignalver ringrtc-$_ringrtcver webrtc-$_webrtcver node-sqlcipher-$_sqlcipherver; do mv "$srcdir"/$i "$builddir"/${i%-*} done + default_prepare cd "$builddir"/Signal-Desktop + + # puts node modules in the root node_modules instead of under .pnpm + echo "node-linker=hoisted" >> .npmrc + + # drops get-expire-time to not generate expiration date + sed -i 's| get-expire-time | |' package.json + msg "Installing signal-desktop JS dependencies" pnpm install --ignore-scripts # remove shipped fonts for system-provided (part 1) rm -rf fonts/ - default_prepare - ( cd "$builddir"/webrtc @@ -224,7 +227,6 @@ prepare() { libaom libavif libdrm - libevent libjpeg libpng libsecret @@ -258,6 +260,9 @@ prepare() { python3 build/linux/unbundle/replace_gn_files.py --system-libraries \ $use_system + # zlib depends on base for no reason + sed -i '/\/\/base/d' ./third_party/zlib/BUILD.gn + # allow system dependencies in "official builds" sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \ tools/generate_shim_headers/generate_shim_headers.py @@ -281,10 +286,13 @@ prepare() { ) ( - cd "$builddir"/Signal-FTS5-Extension + cd "$builddir"/node-sqlcipher - msg "Installing signal tokenizer rust dependencies" - cargo fetch --target="$CTARGET" --locked + # fix target + sed -i 's/unknown-linux-gnu/alpine-linux-musl/g' deps/extension/extension.gyp + + msg "Installing sqlcipher js dependencies" + pnpm install --ignore-scripts ) ( @@ -389,11 +397,26 @@ build() { ) ( - cd "$builddir"/Signal-FTS5-Extension + cd "$builddir"/node-sqlcipher - msg "Building signal tokenizer" - cargo auditable build --features extension --release --frozen - cbindgen --profile release . -o target/release/signal-tokenizer.h + ( + cd deps/extension + msg "Building sqlcipher-extension" + cargo auditable build --release --target $CTARGET + ) + + msg "Building sqlcipher" + node-gyp configure --nodedir=/usr/include/electron/node_headers --build-from-source + node-gyp build --nodedir=/usr/include/electron/node_headers --build-from-source + + msg "Building sqlcipher glue code" + pnpm build + + mkdir -p prebuilds/linux-$chromium_arch + mv build/Release/obj.target/node_sqlcipher.node prebuilds/linux-$chromium_arch/node.napi.node + + msg "Cleaning dev dependencies for sqlcipher" + pnpm prune --ignore-scripts --prod ) msg "Building signal-desktop" @@ -412,26 +435,20 @@ build() { NODE_OPTIONS=--openssl-legacy-provider \ pnpm run build:dev + # purge non-production deps + pnpm prune --ignore-scripts --prod + # use our libsignal rm -rf node_modules/@signalapp/libsignal-client/ - mv "$builddir"/libsignal/node/ node_modules/@signalapp/libsignal-client + cp -r "$builddir"/libsignal/node/ node_modules/@signalapp/libsignal-client # use our libringrtc rm -rf node_modules/@signalapp/ringrtc/ - mv "$builddir"/ringrtc/src/node/ node_modules/@signalapp/ringrtc + cp -r "$builddir"/ringrtc/src/node/ node_modules/@signalapp/ringrtc - mkdir node_modules/@signalapp/better-sqlite3/tokenizer - mv "$builddir"/Signal-FTS5-Extension/target/release/libsignal_tokenizer.a node_modules/@signalapp/better-sqlite3/tokenizer/ - mv "$builddir"/Signal-FTS5-Extension/target/release/signal-tokenizer.h node_modules/@signalapp/better-sqlite3/tokenizer/ - - npm_config_nodedir=/usr/include/electron/node_headers \ - npm_config_build_from_source=true \ - pnpm rebuild \ - sharp @signalapp/better-sqlite3 spellchecker websocket \ - utf-8-validate bufferutil fs-xattr - - # purge non-production deps - pnpm prune --ignore-scripts --prod + # use our sqlcipher + rm -rf node_modules/@signalapp/sqlcipher/ + cp -r "$builddir"/node-sqlcipher node_modules/@signalapp/sqlcipher SIGNAL_ENV=production \ tasje pack @@ -461,22 +478,23 @@ package() { } sha512sums=" -9b2926c9009cff31b6ad4b6e4eb8bb997b47a4f0cc171c54ae86122cc4aef547b233655378a9091c5f7b5a413f25b761a7b28efe32eac0d5872f01cb14479ab8 Signal-Desktop-7.47.0.tar.gz -eaf5b9f69caa833df4116c354ff39a5df69b1f6f30262f9bd6ab566afd95d364718a220d3ae0b430550667bcf671ff462ef200348354d2cef56a3f76f45bb292 libsignal-0.67.3.tar.gz -18229b313dbe755fd048470405dff12d11aba02f655c46500156545c8f9621d465bd9a843c25333d2ed7a036f10f4f41ab00225cd53cae54c9deabadee4a439a ringrtc-2.50.2.tar.gz -131b5a0b190106fabbeb8903bd35546c956562a18128c92cd8bd6b046a1c7ceb5fc2e6258ced106399f24bbfeba6d8a827f39114215fc1c8941a919359f6e300 webrtc-6834f.tar.zst -84a1f2fc29262a12842e94698d124a85b823128e72a493b0be8ea92fbb72c5c268499f4a6827cdedaae06ec73cce4039a39fe5c5d536cbef330e59ba0183da28 stokenizer-0.2.1.tar.gz +528c4dc227816b8a3a409bdc35ccff37a941049ed1e96801b221f195f71ce64216569f4c6f889294ce51adddcbc59273e663c0bb8c0b972b7b49da62f9dd24aa Signal-Desktop-7.53.0.tar.gz +5bee3ccba05561dc61d8998843b5de1969845886b0b1529872b779fdb8ab9caacfbd8e740e0ff151300ca6e19f5dea62afae3e9570a20b0bfd71ba5b849b04c2 libsignal-0.68.0.tar.gz +8e32d75f9f8216106b6858d9ab58ad53f209408fc155fe27dec184c8c65c9ab5a3a93e9567953f209424ed435ccc6d4903a49a4edae36eb744a897cc02098312 ringrtc-2.51.0.tar.gz +592987c1661de464a4e6dee3081cb5fd32e5afdacdba43d901557a217e62301b4655009ad5bdc0c1dcff5e8b67d7acd68ac953cd638f31196162aa3ccdd9c63b node-sqlcipher-2.0.1.tar.gz +ba02cb0c293210f9a683b0e08c6acbe84f5b78089329ec017b0db3493b38ccf39e92c49c2475dc66b5ce3bfe060686718cb5053787e2d61ed320dadb22891989 webrtc-6998b.tar.zst 8d2d2d82c8546c2dd1fef161b61df79918f8c22235a56a46adb375a0beb4acef12c5fe53e67242a4be97f77adc522ff79b47949c352956c742a70d50f4179f7f libsignal-auditable.patch -eed8371ccf478e6bf3ade04f93ed26b53ee141b6f786e7a2ae4483b1b962329b18034ec0bc3514eb218346e100044aeaf0fcf2b31028c87c41bd7ecc7e681848 signal-use-system-sqlcipher.patch +7ee747c8aaa9d6e9149fe0a031e3d4cc9e9c08f22c42076bd05e2acb86952f8170032613d13a53716010edfa3f26ad97b530e82460318eb46a42e28cf5faeb9d signal-use-system-sqlcipher.patch fc2af28645364cd85c106304a26811b036f6be048c52137fbbcc112870a84132a181f532563e0569b560fde3cf8c02480666a9b01d804b0008f97c728005b1c7 signal-disable-updates.patch 853de84d636f730694f17bcec63463fa7bfbdd0a7f7a64618a8fc6bc523ce1a9854b4c651753735af735c18101295d3efbe54f83ae0bccbed83c8c1fee3e7049 signal-update-links.patch 882d6889b23a3ebc6449c8b6acec8c3853674a7e94f066d65b57bab674ba8c11d582ba2c760825cb67b9202716e6d8b7123001d1e9f9229e49a0b77e9d978265 signal-show-window-please.patch +aca92e4de6cd005d660d7e8b99607de96ca2d7dc220e3465247d517e915e4d41a4b0eb519e85c5eca1c81cd8bac9821acd03ff57f1603918987829c6ea7757b4 signal-rollback-locale-changes.patch +961568777b86f8fbcc73360252123686c9d1e16b2650f23d8afbc6d7580d53024f81b62e9e9cbdcd0031b5cf99854bd47c6dd4580197f2b27b8b4cbb51c6c9c9 signal-do-not-package-sqlcipher-deps.patch 02a648bb8541a39c75fec2db39f024a27976afca41908eefa2fe1f2e30b05b5d59f980ccc930021c0b0c09ba8b0cbcae071e9f0dd530543c667adbc4272af552 ringrtc-webrtc-renamed.patch 98a7e4df27c3ed56c5968ebc3ae8e08bfb54362d0c910f9af1d414079a6d5fe0f18aa570ae3c38042f4691af6a130cb3ff689625e26a3987720dd319a5f587b1 webrtc-shared-libs.patch -fe78cdc58c18826fc4227cc8e9377980766229390544578f6a1a6f7322bc3243c066963b589323dbfe4f2bfd37f8859ad84f63cb3783317892e5ae3652270a3a webrtc-compiler.patch +897174fa3b1eaa74a3b2d7d861863a9f60550ddb0d7be700cd590600efdc3bd962f52c21e371276eaf8d5657c98fe8ade9853b0197b61a68d5dce6fa03b5899b webrtc-compiler.patch 3f1095861a79862ab5a55c86d7e353d272974617afba39e4d4441024bede8d7b9b8e122da90d56a9c3c0965171803d6b9e29e91d78167a08c6bcc86b3eedab18 webrtc-gcc13.patch 8f53dcf3264c5cec338f037e57a7770ec939ee06dfb0c5dfeab23967a3a64d3f861a6b5419766ac892676036b4522bce2f47279ca3658b5c0b6a31c82ac05053 webrtc-rollback-red.patch f8bd574a0de077a643ced26e8a0e3f162e014bbf91c957bbefd113883a70e2b63e483bf400b7e2da8d09edfe76d4f6a257f194a14124f344f1625c5632d12acb webrtc-rollback-3rdparty-build-gn.patch -aca92e4de6cd005d660d7e8b99607de96ca2d7dc220e3465247d517e915e4d41a4b0eb519e85c5eca1c81cd8bac9821acd03ff57f1603918987829c6ea7757b4 signal-rollback-locale-changes.patch 87534e7b5ad7365509eab75629e6bd1a9ed61ee92f7e358405a0abaf0df57de14623fb3894eb082f8785422e5c087e1c50f9e2e5cafbb2529591fd7bf447f7f5 signal-desktop.sh " diff --git a/backports/signal-desktop/signal-do-not-package-sqlcipher-deps.patch b/backports/signal-desktop/signal-do-not-package-sqlcipher-deps.patch new file mode 100644 index 0000000..c91209d --- /dev/null +++ b/backports/signal-desktop/signal-do-not-package-sqlcipher-deps.patch @@ -0,0 +1,12 @@ +diff --git a/Signal-Desktop/package.json.orig b/Signal-Desktop/package.json +index 5b7b015e20a..bb348fdb4c2 100644 +--- a/Signal-Desktop/package.json.orig ++++ b/Signal-Desktop/package.json +@@ -607,6 +607,7 @@ + "node_modules/socks/build/client/*.js", + "node_modules/smart-buffer/build/*.js", + "node_modules/@signalapp/sqlcipher/prebuilds/${platform}-${arch}/*.node", ++ "!node_modules/@signalapp/sqlcipher/deps/**", + "node_modules/@signalapp/libsignal-client/prebuilds/${platform}-${arch}/*.node", + "!node_modules/@signalapp/ringrtc/scripts/*", + "node_modules/@signalapp/ringrtc/build/${platform}/*${arch}*.node", diff --git a/backports/signal-desktop/signal-use-system-sqlcipher.patch b/backports/signal-desktop/signal-use-system-sqlcipher.patch index 7f46d55..576ee66 100644 --- a/backports/signal-desktop/signal-use-system-sqlcipher.patch +++ b/backports/signal-desktop/signal-use-system-sqlcipher.patch @@ -1,26 +1,25 @@ -diff --git a/Signal-Desktop/node_modules/@signalapp/better-sqlite3/binding.gyp.orig b/Signal-Desktop/node_modules/@signalapp/better-sqlite3/binding.gyp -index c370c30b309..bf0207e6fec 100644 ---- a/Signal-Desktop/node_modules/@signalapp/better-sqlite3/binding.gyp.orig -+++ b/Signal-Desktop/node_modules/@signalapp/better-sqlite3/binding.gyp -@@ -7,7 +7,16 @@ +diff --git a/node-sqlcipher/binding.gyp.orig b/node-sqlcipher/binding.gyp +index 9a5caa2f713..8d3da54fea7 100644 +--- a/node-sqlcipher/binding.gyp.orig ++++ b/node-sqlcipher/binding.gyp +@@ -3,8 +3,15 @@ 'targets': [ { - 'target_name': 'better_sqlite3', -- 'dependencies': ['deps/sqlite3.gyp:sqlite3'], -+ 'include_dirs': [ + 'target_name': 'node_sqlcipher', ++ 'include_dirs': [ + '/usr/include/sqlcipher', -+ 'tokenizer', + ], + 'link_settings': { + 'libraries': [ + '-lsqlcipher', -+ '(proxy_), &node_listener_, &node_events, this); + } + + // static +@@ -119,7 +119,7 @@ + uint32_t id = info->params[i].id; + if (id == SPA_PARAM_EnumFormat && + info->params[i].flags & SPA_PARAM_INFO_READ) { +- pw_node_enum_params(that->proxy_, 0, id, 0, UINT32_MAX, nullptr); ++ pw_node_enum_params(reinterpret_cast(that->proxy_), 0, id, 0, UINT32_MAX, nullptr); + break; + } + } + -- 2.49.1 From 07703b30ca2f3ff672ab5421e896503b39280a76 Mon Sep 17 00:00:00 2001 From: Antoine Martin Date: Thu, 8 May 2025 21:54:46 -0400 Subject: [PATCH 2/2] backports/pnpm: new aport --- .../pnpm/0001-no-check-for-updates.patch | 14 ++++ backports/pnpm/0002-no-self-update.patch | 14 ++++ backports/pnpm/APKBUILD | 73 +++++++++++++++++++ 3 files changed, 101 insertions(+) create mode 100644 backports/pnpm/0001-no-check-for-updates.patch create mode 100644 backports/pnpm/0002-no-self-update.patch create mode 100644 backports/pnpm/APKBUILD diff --git a/backports/pnpm/0001-no-check-for-updates.patch b/backports/pnpm/0001-no-check-for-updates.patch new file mode 100644 index 0000000..2d74688 --- /dev/null +++ b/backports/pnpm/0001-no-check-for-updates.patch @@ -0,0 +1,14 @@ +Disable available update messages as it outputs invalid upgrade process + +diff --git a/dist/pnpm.cjs b/dist/pnpm.cjs +index b93ea78..6daefd6 100644 +--- a/dist/pnpm.cjs ++++ b/dist/pnpm.cjs +@@ -114026,6 +114026,7 @@ var require_checkForUpdates = __commonJS({ + var write_json_file_1 = __importDefault2(require_write_json_file()); + var UPDATE_CHECK_FREQUENCY = 24 * 60 * 60 * 1e3; + async function checkForUpdates(config) { ++ return; + const stateFile = path_1.default.join(config.stateDir, "pnpm-state.json"); + let state; + try { diff --git a/backports/pnpm/0002-no-self-update.patch b/backports/pnpm/0002-no-self-update.patch new file mode 100644 index 0000000..b016ecc --- /dev/null +++ b/backports/pnpm/0002-no-self-update.patch @@ -0,0 +1,14 @@ +Disable command "pnpm self-update" as we install via apk + +diff --git a/dist/pnpm.cjs b/dist/pnpm.cjs +index b93ea78..8da50c3 100644 +--- a/dist/pnpm.cjs ++++ b/dist/pnpm.cjs +@@ -220258,6 +220258,7 @@ var require_selfUpdate = __commonJS({ + }); + } + async function handler(opts, params) { ++ throw new error_1.PnpmError("CANT_SELF_UPDATE_IN_APK", "You should update pnpm with apk"); + if ((0, cli_meta_1.isExecutedByCorepack)()) { + throw new error_1.PnpmError("CANT_SELF_UPDATE_IN_COREPACK", "You should update pnpm with corepack"); + } diff --git a/backports/pnpm/APKBUILD b/backports/pnpm/APKBUILD new file mode 100644 index 0000000..8772842 --- /dev/null +++ b/backports/pnpm/APKBUILD @@ -0,0 +1,73 @@ +# Contributor: Hygna +# Contributor: Fabricio Silva +maintainer="Fabricio Silva " +pkgname=pnpm +pkgver=10.9.0 +pkgrel=0 +pkgdesc="Fast, disk space efficient package manager" +url="https://pnpm.io" +arch="noarch" +license="MIT" +depends="nodejs" +subpackages=" + $pkgname-doc + $pkgname-bash-completion + $pkgname-zsh-completion + $pkgname-fish-completion + " +source="https://registry.npmjs.org/pnpm/-/pnpm-$pkgver.tgz + 0001-no-check-for-updates.patch + 0002-no-self-update.patch + " +builddir="$srcdir/package" + +prepare() { + default_prepare + + # remove node-gyp + rm -rf dist/node-gyp-bin dist/node_modules/node-gyp + # remove windows files + rm -rf dist/vendor/*.exe + + # remove other unnecessary files + find . -type f \( \ + -name '.*' -o \ + -name '*.cmd' -o \ + -name '*.bat' -o \ + -name '*.map' -o \ + -name '*.md' -o \ + -name '*.darwin*' -o \ + -name '*.win*' -o \ + -iname 'README*' \) -delete +} + +check() { + ./bin/pnpm.cjs --help +} + +package() { + local destdir="$pkgdir"/usr/share/node_modules/$pkgname + + install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname + + install -Dm644 dist/templates/completion.bash \ + "$pkgdir"/usr/share/bash-completion/completions/$pkgname + install -Dm644 dist/templates/completion.zsh \ + "$pkgdir"/usr/share/zsh/site-functions/_$pkgname + install -Dm644 dist/templates/completion.fish \ + "$pkgdir"/usr/share/fish/vendor_completions.d/$pkgname.fish + + install -Dm644 package.json -t "$destdir" + install -Dm755 bin/pnpm.cjs bin/pnpx.cjs -t "$destdir"/bin + cp -r dist "$destdir"/dist + + mkdir -p "$pkgdir"/usr/bin + ln -sf ../share/node_modules/pnpm/bin/pnpm.cjs "$pkgdir"/usr/bin/pnpm + ln -sf ../share/node_modules/pnpm/bin/pnpx.cjs "$pkgdir"/usr/bin/pnpx +} + +sha512sums=" +0486e394640d3c1fb3c9d43d49cf92879ff74f8516959c235308f5a8f62e2e19528a65cdc2a3058f587cde71eba3d5b56327c8c33a97e4c4051ca48a10ca2d5f pnpm-10.9.0.tgz +f53903c506a676393dd8b31e1194b92612bfa877a8e17edc530e308921caf454248e181a3e620a17a941eba126349128963b2b0b1e48f8d927307c9cf335290e 0001-no-check-for-updates.patch +5582d11fcd1782f40a4f9269b477af25057e3a3d60cddef8b64a8592fafdc7a572822c8267a7abf9e8bfa4b726dcb291885642070a838e360fc542cee10c9569 0002-no-self-update.patch +" -- 2.49.1