cherry-studio-git

LOW
maintainer zxp19821005 0 votes scanned 2026-10-02 00:00:32.890515
View on AUR
Why flagged

The package builds from the project's own GitHub source using standard Node.js tooling; the variable-named package install via pnpm is part of the project's declared dependency management and does not introduce untrusted external code.

Triggered rules

Low AI review of an ambiguous pattern llm_review

The static rules found a suspicious pattern they could not resolve, so an AI model (qwen/qwen3-235b-a22b-2507) reviewed it and judged it LOW (confidence 95%): The package builds from the project's own GitHub source using standard Node.js tooling; the variable-named package install via pnpm is part of the project's declared dependency management and does not introduce untrusted external code.

  • PKGBUILD:92 npm install -g "pnpm@${_pnpmver}" --prefix "${HOME}/.pnpm" \

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: zxp19821005 <zxp19821005 at 163 dot com>
2pkgname=cherry-studio-git
3_pkgname="Cherry Studio"
4pkgver=2.0.9.r704.g5a03cf5
5_electronversion=44
6_nodeversion=24
7pkgrel=1
8pkgdesc="AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs."
9arch=('any')
10url="https://cherryai.com/"
11_ghurl="https://github.com/CherryHQ/cherry-studio"
12license=(
13 'AGPL-3.0-or-later'
14 'LicenseRef-custom'
15)
16conflicts=("${pkgname%-git}")
17provides=("${pkgname%-git}=${pkgver%.r*}")
18depends=(
19 "electron${_electronversion}"
20 'libevdev'
21 'python'
22 'python-yaml'
23 'nodejs'
24 'bun'
25 'ripgrep'
26 'uv'
27 'mise'
28)
29makedepends=(
30 'gendesk'
31 'npm'
32 'nvm'
33 'git'
34 'pnpm'
35 'jq'
36)
37source=(
38 "${pkgname%-git}.git::git+${_ghurl}"
39 'build-better-sqlite3.sh'
40 "${pkgname%-git}.sh"
41)
42sha256sums=('SKIP'
43 '4e7aa663647066f2b85226e010de351c9a24f991c6fea6621f2c6b5edd880baa'
44 'bd5358d8f323d3c2c2f0733364ee4ea55f551dd86ba0be2a76846210b60897fc')
45_get_project_dir() {
46 local d
47 while IFS= read -r d; do
48 find "$d" -name "package.json" ! -path "*/node_modules/*" 2>/dev/null | grep -q . && { echo "$d"; return; }
49 done < <(find "${srcdir}" -maxdepth 1 -mindepth 1 -type d ! -name '.*')
50}
51pkgver() {
52 cd "$(_get_project_dir)"
53 set -o pipefail
54 git describe --long --tags --abbrev=7 | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/v//g' ||
55 printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
56}
57_get_app_dir() {
58 find "${srcdir}" -type f -name "resources.pak" -exec dirname {} + | head -n 1
59}
60_set_build_env() {
61 export ELECTRON_DIST="/usr/lib/electron${_electronversion}"
62 export ELECTRON_OVERRIDE_DIST_PATH="${ELECTRON_DIST}"
63 export ELECTRON_SKIP_BINARY_DOWNLOAD=1
64 export ELECTRON_BUILDER_OFFLINE=true
65 export SYSTEM_ELECTRON_VERSION="$(electron${_electronversion} -v | sed 's/^v//')"
66 export HOME="${srcdir}/.home"
67 export XDG_CACHE_HOME="${HOME}/.cache"
68 export XDG_CONFIG_HOME="${HOME}/.config"
69 export XDG_DATA_HOME="${HOME}/.local/share"
70 export XDG_STATE_HOME="${HOME}/.local/state"
71 export PNPM_HOME="${HOME}/.pnpm/bin"
72 export pnpm_config_cache_dir="${HOME}/.pnpm_cache"
73 export pnpm_config_store_dir="${HOME}/.pnpm_store"
74 export pnpm_config_global_dir="${HOME}/.pnpm/global"
75 export pnpm_config_state_dir="${HOME}/.pnpm/state"
76 export pnpm_config_node_linker=hoisted
77 export pnpm_config_minimum_release_age=0
78 export pnpm_config_update_notifier=false
79 export COREPACK_NPM_REGISTRY="${COREPACK_NPM_REGISTRY:-${NPM_CONFIG_REGISTRY:-https://registry.npmjs.org}}"
80 export COREPACK_HOME="${HOME}/.corepack"
81 mkdir -p "${HOME}" "${PNPM_HOME}" "${pnpm_config_cache_dir}" "${pnpm_config_store_dir}" "${pnpm_config_global_dir}" "${pnpm_config_state_dir}" "${COREPACK_HOME}"
82 export PATH="${PNPM_HOME}:${PATH}"
83 local _pnpmver=""
84 local _pkgjson="$(_get_project_dir)/package.json"
85 if [ -f "${_pkgjson}" ]; then
86 _pnpmver="$(grep -o '"packageManager"[^,]*' "${_pkgjson}" 2>/dev/null | grep -oE 'pnpm@[^"+]+' | head -n1 | sed 's/^pnpm@//')"
87 if [ -z "${_pnpmver}" ]; then
88 _pnpmver="$(grep -oE '"pnpm"[[:space:]]*:[[:space:]]*"[^"]+"' "${_pkgjson}" 2>/dev/null | grep -oE '[0-9][0-9.]*' | head -n1)"
89 fi
90 fi
91 if [ -n "${_pnpmver}" ]; then
92 npm install -g "pnpm@${_pnpmver}" --prefix "${HOME}/.pnpm" \
93 --registry "${COREPACK_NPM_REGISTRY}"
94 fi
95}
96_ensure_local_nvm() {
97 local NVM_DIR="${srcdir}/.nvm"
98 source /usr/share/nvm/init-nvm.sh || [[ $? != 1 ]]
99 nvm install "${_nodeversion}"
100 nvm use "${_nodeversion}"
101}
102_get_electron_version() {
103 _elec_ver=$(find "$(_get_project_dir)" -name "package.json" ! -path "*/node_modules/*" -print \
104 | xargs -I{} jq -r '(.devDependencies.electron // .dependencies.electron) // empty' {} 2>/dev/null \
105 | grep -v '^$' | sed 's/^[^0-9]*//' | head -1)
106 [[ -z "${_elec_ver}" ]] && return 1
107 echo -e "The electron version is: \033[1;31m${_elec_ver%%.*}\033[0m"
108}
109prepare() {
110 cd "$(_get_project_dir)"
111 _get_electron_version
112 sed -i -e "
113 s/@electronversion@/${_electronversion}/g
114 s/@appname@/${pkgname%-git}/g
115 s/@runname@/app.asar/g
116 s/@cfgdirname@/${_pkgname// /}/g
117 " "${srcdir}/${pkgname%-git}.sh"
118 gendesk -q -f -n \
119 --pkgname="${pkgname%-git}" \
120 --pkgdesc="${pkgdesc}" \
121 --categories="Utility" \
122 --name="${_pkgname}" \
123 --exec="${pkgname%-git} %U"
124 _ensure_local_nvm
125 _set_build_env
126 sed -i "s/\"electron\": \"[^\"]*\"/\"electron\": \"${SYSTEM_ELECTRON_VERSION}\"/g" package.json
127 find src -type f -exec sed -i "s/process.resourcesPath/\'\/usr\/lib\/${pkgname%-git}\'/g" {} +
128 local _arch_name
129 case "${CARCH}" in
130 x86_64) _arch_name="x64" ;;
131 aarch64) _arch_name="arm64" ;;
132 esac
133 local _binaries_dir="resources/binaries/linux-${_arch_name}"
134 mkdir -p "${_binaries_dir}"
135 # Create empty placeholder files (electron-builder needs these to exist during packaging)
136 touch "${_binaries_dir}/"{mise,bun,uv,uvx,rg}
137 export NODE_ENV=development
138 pnpm install --ignore-scripts
139 sed -i '/"postinstall": "node \.\/script\/install"/d' node_modules/onnxruntime-node/package.json
140 node -e "const fs=require('fs'); const pkg=JSON.parse(fs.readFileSync('package.json','utf8')); pkg.devDependencies['node-abi']='4.33.0'; fs.writeFileSync('package.json', JSON.stringify(pkg, null, 2)+'\n')"
141 pnpm install --ignore-scripts
142 pnpm rebuild better-sqlite3 node-pty registry-js selection-hook sharp @napi-rs/canvas @napi-rs/system-ocr tesseract.js koffi esbuild @swc/core electron-winstaller @paymoapp/electron-shutdown-handler @sentry/cli unrs-resolver @j178/prek @deepseek-ai/dsh-subprocess-local
143 pnpm --filter @cherrystudio/dsh-bridge build
144 pnpm --filter @cherrystudio/remote-protocol build
145 pnpm --filter @cherrystudio/remote-transport build
146}
147build() {
148 cd "$(_get_project_dir)"
149 _ensure_local_nvm
150 _set_build_env
151 export NODE_ENV=production
152 pnpm exec dotenv pnpm run build
153 pnpm -c exec "electron-builder --linux dir -c.electronDist=${ELECTRON_DIST} --config electron-builder.yml"
154 local _app_dir="$(_get_app_dir)"
155 find "${_app_dir}/resources" -type d -exec chmod 755 {} +
156 case "${CARCH}" in
157 aarch64) _archrem=x64 ;;
158 x86_64) _archrem=arm ;;
159 esac
160 find "${_app_dir}/resources/app.asar.unpacked" -type d \
161 \( -name "darwin*" -o -name "win32*" -o -name "*${_archrem}"* \) \
162 -exec rm -rf {} +
163}
164package() {
165 install -Dm755 "${srcdir}/${pkgname%-git}.sh" "${pkgdir}/usr/bin/${pkgname%-git}"
166 install -Dm755 -d "${pkgdir}/usr/lib/${pkgname%-git}"
167 local _app_dir="$(_get_app_dir)"
168 cp -a "${_app_dir}/resources/." "${pkgdir}/usr/lib/${pkgname%-git}/"
169 rm -rf "${pkgdir}/usr/lib/${pkgname%-git}/default_app.asar"
170 # Replace placeholder binaries with symlinks to system binaries
171 local _arch_name
172 case "${CARCH}" in
173 aarch64) _arch_name="linux-arm64" ;;
174 x86_64) _arch_name="linux-x64" ;;
175 esac
176 local _binaries_dir="${pkgdir}/usr/lib/${pkgname%-git}/app.asar.unpacked/resources/binaries/${_arch_name}"
177 mkdir -p "${_binaries_dir}"
178 rm -rf "${_binaries_dir}/"{mise,bun,uv,uvx,rg}
179 ln -sf /usr/bin/mise "${_binaries_dir}/mise"
180 ln -sf /usr/bin/bun "${_binaries_dir}/bun"
181 ln -sf /usr/bin/uv "${_binaries_dir}/uv"
182 ln -sf /usr/bin/uvx "${_binaries_dir}/uvx"
183 ln -sf /usr/bin/rg "${_binaries_dir}/rg"
184 local _src="$(_get_project_dir)"
185 install -Dm644 "${_src}/${pkgname%-git}.desktop" -t "${pkgdir}/usr/share/applications"
186 install -Dm644 "${_src}/build/icon.png" "${pkgdir}/usr/share/icons/hicolor/256x256/apps/${pkgname%-git}.png"
187 install -Dm644 "${_src}/LICENSE.txt" -t "${pkgdir}/usr/share/licenses/${pkgname}"
188}
189

Changes since previous scan

--- PKGBUILD @ 2026-09-29 00:07
+++ PKGBUILD @ 2026-10-02 00:00
@@ -1,9 +1,9 @@
# Maintainer: zxp19821005 <zxp19821005 at 163 dot com>
pkgname=cherry-studio-git
_pkgname="Cherry Studio"
-pkgver=2.0.9.r555.g6ae3b04
+pkgver=2.0.9.r704.g5a03cf5
_electronversion=44
-_nodeversion=24.11.1
+_nodeversion=24
pkgrel=1
pkgdesc="AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs."
arch=('any')
@@ -31,7 +31,6 @@
'npm'
'nvm'
'git'
- 'curl'
'pnpm'
'jq'
)
@@ -42,9 +41,15 @@
)
sha256sums=('SKIP'
'4e7aa663647066f2b85226e010de351c9a24f991c6fea6621f2c6b5edd880baa'
- 'a774c2f54fbbeeaac3cefc0f7250796d30c86d27f0fd40b7eaf9c0fdb021623d')
+ 'bd5358d8f323d3c2c2f0733364ee4ea55f551dd86ba0be2a76846210b60897fc')
+_get_project_dir() {
+ local d
+ while IFS= read -r d; do
+ find "$d" -name "package.json" ! -path "*/node_modules/*" 2>/dev/null | grep -q . && { echo "$d"; return; }
+ done < <(find "${srcdir}" -maxdepth 1 -mindepth 1 -type d ! -name '.*')
+}
pkgver() {
- cd "${srcdir}/${pkgname%-git}.git"
+ cd "$(_get_project_dir)"
set -o pipefail
git describe --long --tags --abbrev=7 | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/v//g' ||
printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
@@ -56,39 +61,36 @@
export ELECTRON_DIST="/usr/lib/electron${_electronversion}"
export ELECTRON_OVERRIDE_DIST_PATH="${ELECTRON_DIST}"
export ELECTRON_SKIP_BINARY_DOWNLOAD=1
- _ev="$(electron${_electronversion} -v)"
- export SYSTEM_ELECTRON_VERSION="${_ev#v}"
- export HOME="${srcdir}/.electron-gyp"
- mkdir -p "${HOME}"
- export XDG_CACHE_HOME="${srcdir}/.cache"
- export XDG_CONFIG_HOME="${srcdir}/.config"
- export XDG_DATA_HOME="${srcdir}/.local/share"
- export XDG_STATE_HOME="${srcdir}/.local/state"
- export PNPM_CACHE_DIR="${srcdir}/.pnpm_cache"
- export PNPM_STORE_DIR="${srcdir}/.pnpm_store"
- export PNPM_GLOBAL_DIR="${srcdir}/.pnpm/global"
- export PNPM_GLOBAL_BIN_DIR="${srcdir}/.pnpm/bin"
- export PNPM_STATE_DIR="${srcdir}/.pnpm/state"
- export PNPM_MINIMUM_RELEASE_AGE=0
- export PNPM_NODE_LINKER=hoisted
- export PNPM_FETCH_RETRIES=3
- export PNPM_FETCH_RETRY_MAXTIMEOUT=10000
- export PNPM_UPDATE_NOTIFIER=false
- export PNPM_NO_COLOR=true
- export PNPM_NO_PROGRESS=true
- export pnpm_config_platform=linux
- export pnpm_config_arch="${CARCH}"
- export NODE_OPTIONS="--max-old-space-size=4096"
- export npm_config_node_options="--max-old-space-size=4096"
- mkdir -p "${PNPM_CACHE_DIR}" "${PNPM_STORE_DIR}" "${PNPM_GLOBAL_DIR}" "${PNPM_GLOBAL_BIN_DIR}" "${PNPM_STATE_DIR}"
- local _pnpmver="${_pnpmversion}"
- if [[ -z "${_pnpmver}" ]]; then
- _pnpmver="$(node -p "const pm=require('./package.json').packageManager; pm && pm.startsWith('pnpm@') ? pm.split('@')[1] : ''" 2>/dev/null)"
+ export ELECTRON_BUILDER_OFFLINE=true
+ export SYSTEM_ELECTRON_VERSION="$(electron${_electronversion} -v | sed 's/^v//')"
+ export HOME="${srcdir}/.home"
+ export XDG_CACHE_HOME="${HOME}/.cache"
+ export XDG_CONFIG_HOME="${HOME}/.config"
+ export XDG_DATA_HOME="${HOME}/.local/share"
+ export XDG_STATE_HOME="${HOME}/.local/state"
+ export PNPM_HOME="${HOME}/.pnpm/bin"
+ export pnpm_config_cache_dir="${HOME}/.pnpm_cache"
+ export pnpm_config_store_dir="${HOME}/.pnpm_store"
+ export pnpm_config_global_dir="${HOME}/.pnpm/global"
+ export pnpm_config_state_dir="${HOME}/.pnpm/state"
+ export pnpm_config_node_linker=hoisted
+ export pnpm_config_minimum_release_age=0
+ export pnpm_config_update_notifier=false
+ export COREPACK_NPM_REGISTRY="${COREPACK_NPM_REGISTRY:-${NPM_CONFIG_REGISTRY:-https://registry.npmjs.org}}"
+ export COREPACK_HOME="${HOME}/.corepack"
+ mkdir -p "${HOME}" "${PNPM_HOME}" "${pnpm_config_cache_dir}" "${pnpm_config_store_dir}" "${pnpm_config_global_dir}" "${pnpm_config_state_dir}" "${COREPACK_HOME}"
+ export PATH="${PNPM_HOME}:${PATH}"
+ local _pnpmver=""
+ local _pkgjson="$(_get_project_dir)/package.json"
+ if [ -f "${_pkgjson}" ]; then
+ _pnpmver="$(grep -o '"packageManager"[^,]*' "${_pkgjson}" 2>/dev/null | grep -oE 'pnpm@[^"+]+' | head -n1 | sed 's/^pnpm@//')"
+ if [ -z "${_pnpmver}" ]; then
+ _pnpmver="$(grep -oE '"pnpm"[[:space:]]*:[[:space:]]*"[^"]+"' "${_pkgjson}" 2>/dev/null | grep -oE '[0-9][0-9.]*' | head -n1)"
+ fi
fi
- if [[ -n "${_pnpmver}" ]]; then
- echo "Using pnpm version: ${_pnpmver}"
- # Use system pnpm directly (corepack has issues with pnpm 12.x ESM format)
- export PATH="$(dirname "$(which pnpm)"):${PATH}"
+ if [ -n "${_pnpmver}" ]; then
+ npm install -g "pnpm@${_pnpmver}" --prefix "${HOME}/.pnpm" \
+ --registry "${COREPACK_NPM_REGISTRY}"
fi
}
_ensure_local_nvm() {
@@ -98,13 +100,14 @@
nvm use "${_nodeversion}"
}
_get_electron_version() {
- _elec_ver=$(find "${srcdir}" -maxdepth 5 -name "package.json" ! -path "*/node_modules/*" \
- -exec grep -l '"electron"' {} + | xargs -I{} jq -r '(.devDependencies.electron // .dependencies.electron) // empty' {} 2>/dev/null | head -1)
- [[ -z "${_elec_ver}" ]] && return 1
- echo -e "The electron version is: \033[1;31m${_elec_ver%%.*}\033[0m"
+ _elec_ver=$(find "$(_get_project_dir)" -name "package.json" ! -path "*/node_modules/*" -print \
+ | xargs -I{} jq -r '(.devDependencies.electron // .dependencies.electron) // empty' {} 2>/dev/null \
+ | grep -v '^$' | sed 's/^[^0-9]*//' | head -1)
+ [[ -z "${_elec_ver}" ]] && return 1
+ echo -e "The electron version is: \033[1;31m${_elec_ver%%.*}\033[0m"
}
prepare() {
- cd "${srcdir}/${pkgname%-git}.git"
+ cd "$(_get_project_dir)"
_get_electron_version
sed -i -e "
s/@electronversion@/${_electronversion}/g
@@ -121,25 +124,7 @@
_ensure_local_nvm
_set_build_env
sed -i "s/\"electron\": \"[^\"]*\"/\"electron\": \"${SYSTEM_ELECTRON_VERSION}\"/g" package.json
- # Update better-sqlite3 release.json to match system electron version
- sed -i "s/\"electronVersion\": \"[^\"]*\"/\"electronVersion\": \"${SYSTEM_ELECTRON_VERSION}\"/g" \
- scripts/linux-native/release.json
- sed -i "s/electron-v[0-9]*\.[0-9]*\.[0-9]*/electron-v${SYSTEM_ELECTRON_VERSION}/g" \
- scripts/linux-native/release.json
find src -type f -exec sed -i "s/process.resourcesPath/\'\/usr\/lib\/${pkgname%-git}\'/g" {} +
-
- # Patch download.js to disable downloading (use prebuilt from source)
- sed -i '/const temporaryDir = /,/^}$/c\
- const verified = verifyReleaseArtifact({ artifactPaths, assets, expected })\
- return { ...verified, cached: true, ...artifactPaths }\
-}' scripts/linux-native/download.js
- # Patch before-pack.js to skip download-binaries.js (we use system binaries)
- sed -i '/Downloading bundled binaries/,+3c\
- console.log(`Using system binaries for ${platform}-${arch}...`);\
- // Skip download - using system binaries via symlinks' scripts/before-pack.js
- # Skip verifyBundledBinaries check (we use symlinks to system binaries)
- sed -i '/verifyBundledBinaries/s/^/\/\/ /' scripts/before-pack.js
- # Create placeholder binaries (will be replaced with symlinks in package())
local _arch_name
case "${CARCH}" in
x86_64) _arch_name="x64" ;;
@@ -149,56 +134,56 @@
mkdir -p "${_binaries_dir}"
# Create empty placeholder files (electron-builder needs these to exist during packaging)
touch "${_binaries_dir}/"{mise,bun,uv,uvx,rg}
- NODE_ENV=development pnpm install --ignore-scripts
- NODE_ENV=development pnpm add -w -D node-abi --ignore-scripts
-
- # Build dsh-bridge package (required for typecheck)
- NODE_ENV=development pnpm --filter @cherrystudio/dsh-bridge build
-
- # Build better-sqlite3 from source and prepare cached artifact
- source "${srcdir}/build-better-sqlite3.sh"
- build_better_sqlite3 "${SYSTEM_ELECTRON_VERSION}" "${CARCH}" "${srcdir}"
+ export NODE_ENV=development
+ pnpm install --ignore-scripts
+ sed -i '/"postinstall": "node \.\/script\/install"/d' node_modules/onnxruntime-node/package.json
+ node -e "const fs=require('fs'); const pkg=JSON.parse(fs.readFileSync('package.json','utf8')); pkg.devDependencies['node-abi']='4.33.0'; fs.writeFileSync('package.json', JSON.stringify(pkg, null, 2)+'\n')"
+ pnpm install --ignore-scripts
+ pnpm rebuild better-sqlite3 node-pty registry-js selection-hook sharp @napi-rs/canvas @napi-rs/system-ocr tesseract.js koffi esbuild @swc/core electron-winstaller @paymoapp/electron-shutdown-handler @sentry/cli unrs-resolver @j178/prek @deepseek-ai/dsh-subprocess-local
+ pnpm --filter @cherrystudio/dsh-bridge build
+ pnpm --filter @cherrystudio/remote-protocol build
+ pnpm --filter @cherrystudio/remote-transport build
}
build() {
- cd "${srcdir}/${pkgname%-git}.git"
+ cd "$(_get_project_dir)"
_ensure_local_nvm
_set_build_env
- NODE_ENV=production pnpm exec dotenv pnpm run build
- NODE_ENV=production pnpm -c exec "electron-builder --linux dir -c.electronDist=${ELECTRON_DIST} --config electron-builder.yml"
- local _arch_rem
- local _app_dir=$(_get_app_dir)
- case "${CARCH}" in
- aarch64) _arch_rem="x64-*" ;;
- x86_64) _arch_rem="arm64-*" ;;
- esac
- find "${_app_dir}/resources" -type d \( \
- -name "*darwin*" -o \
- -name "*win32*" -o \
- -name "${_arch_rem}" \
- \) -exec rm -rf {} +
+ export NODE_ENV=production
+ pnpm exec dotenv pnpm run build
+ pnpm -c exec "electron-builder --linux dir -c.electronDist=${ELECTRON_DIST} --config electron-builder.yml"
+ local _app_dir="$(_get_app_dir)"
+ find "${_app_dir}/resources" -type d -exec chmod 755 {} +
+ case "${CARCH}" in
+ aarch64) _archrem=x64 ;;
+ x86_64) _archrem=arm ;;
+ esac
+ find "${_app_dir}/resources/app.asar.unpacked" -type d \
+ \( -name "darwin*" -o -name "win32*" -o -name "*${_archrem}"* \) \
+ -exec rm -rf {} +
}
package() {
install -Dm755 "${srcdir}/${pkgname%-git}.sh" "${pkgdir}/usr/bin/${pkgname%-git}"
install -Dm755 -d "${pkgdir}/usr/lib/${pkgname%-git}"
- local _app_dir=$(_get_app_dir)
+ local _app_dir="$(_get_app_dir)"
cp -a "${_app_dir}/resources/." "${pkgdir}/usr/lib/${pkgname%-git}/"
rm -rf "${pkgdir}/usr/lib/${pkgname%-git}/default_app.asar"
# Replace placeholder binaries with symlinks to system binaries
local _arch_name
case "${CARCH}" in
- x86_64) _arch_name="x64" ;;
- aarch64) _arch_name="arm64" ;;
+ aarch64) _arch_name="linux-arm64" ;;
+ x86_64) _arch_name="linux-x64" ;;
esac
- local _binaries_dir="${pkgdir}/usr/lib/${pkgname%-git}/app.asar.unpacked/resources/binaries/linux-${_arch_name}"
+ local _binaries_dir="${pkgdir}/usr/lib/${pkgname%-git}/app.asar.unpacked/resources/binaries/${_arch_name}"
mkdir -p "${_binaries_dir}"
rm -rf "${_binaries_dir}/"{mise,bun,uv,uvx,rg}
ln -sf /usr/bin/mise "${_binaries_dir}/mise"
ln -sf /usr/bin/bun "${_binaries_dir}/bun"
ln -sf /usr/bin/uv "${_binaries_dir}/uv"
ln -sf /usr/bin/uvx "${_binaries_dir}/uvx"
- ln -sf /usr/bin/rg "${_binaries_dir}/rg"
- install -Dm644 "${srcdir}/${pkgname%-git}.git/${pkgname%-git}.desktop" -t "${pkgdir}/usr/share/applications"
- install -Dm644 "${srcdir}/${pkgname%-git}.git/build/icon.png" "${pkgdir}/usr/share/pixmaps/${pkgname%-git}.png"
- install -Dm644 "${srcdir}/${pkgname%-git}.git/LICENSE" -t "${pkgdir}/usr/share/licenses/${pkgname}"
+ ln -sf /usr/bin/rg "${_binaries_dir}/rg"
+ local _src="$(_get_project_dir)"
+ install -Dm644 "${_src}/${pkgname%-git}.desktop" -t "${pkgdir}/usr/share/applications"
+ install -Dm644 "${_src}/build/icon.png" "${pkgdir}/usr/share/icons/hicolor/256x256/apps/${pkgname%-git}.png"
+ install -Dm644 "${_src}/LICENSE.txt" -t "${pkgdir}/usr/share/licenses/${pkgname}"
}

Scan history

Scanned at (UTC)SeverityRules
2026-10-02 00:00:32 Low 1
2026-10-01 00:02:06 Low 1
2026-09-30 00:20:07 Low 1
2026-09-29 09:23:18 Low 1
2026-09-29 00:07:46 Low 2
2026-09-28 00:28:32 Low 2
2026-09-27 00:07:07 Low 2
2026-09-26 00:12:15 Low 2
2026-09-25 00:03:36 Low 2
2026-09-24 00:24:14 Low 2
2026-09-23 00:28:13 Low 2
2026-09-22 00:15:14 Low 2
2026-09-21 00:26:32 Low 2
2026-09-20 03:32:05 Medium 1
2026-09-20 00:25:31 Low 2
2026-09-19 00:25:36 Low 2
2026-09-18 00:17:11 Low 2
2026-09-17 00:27:14 Low 2
2026-09-16 00:03:17 Low 2
2026-09-15 00:25:31 Low 2

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion