deepseek-reasonix-studio
LOW
maintainer jinzhongjia
0 votes
scanned 2026-10-07 06:05:09.924014
Why flagged
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
Triggered rules
Low
Few votes, recently uploaded
zero_votes_recent
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
PKGBUILD
1
# Maintainer: jinzhongjia <mail@nvimer.org>
2
pkgname=deepseek-reasonix-studio
3
_pkgname=reasonix-studio
4
pkgver=2.30.0
5
pkgrel=1
6
pkgdesc="Reasonix Studio - desktop window around the DeepSeek-native AI coding agent (2.x line)"
7
arch=('x86_64' 'aarch64')
8
url="https://github.com/esengine/DeepSeek-Reasonix"
9
# The SPA bundles Inter, IBM Plex Mono and Noto Sans SC.
10
license=('MIT' 'OFL-1.1')
11
# Keep in sync with desktop/electron/package.json devDependencies.electron;
12
# prepare() refuses a different major.
13
_electron=electron44
14
depends=("$_electron" 'hicolor-icon-theme' 'xdg-utils')
15
makedepends=('go' 'nodejs>=24' 'pnpm')
16
optdepends=('bubblewrap: sandbox for agent shell commands')
17
provides=("$_pkgname")
18
conflicts=("$_pkgname")
19
# The kernel is built with -s -w like upstream's release, so there is nothing
20
# for a split debug package.
21
options=('!debug')
22
source=("$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/studio-v$pkgver.tar.gz"
23
"$_pkgname.sh"
24
"$_pkgname.desktop")
25
sha256sums=('a9b11a887baf1c5c5f950686422bcbc6cb54506e6fe9ef92a9708c9bedd93b2c'
26
'052e14d748355592e4b60f3e81f87537daf3cf18082be73ff7e1a3e80233f806'
27
'87b009437ac5b35743a9624da2b1598623a15c89dfc2c1c62409a8baaf8137e7')
28
29
prepare() {
30
cd "DeepSeek-Reasonix-studio-v$pkgver"
31
local _upstream
32
_upstream="$(node -p "require('./desktop/electron/package.json').devDependencies.electron.match(/\d+/)[0]")"
33
if [[ "electron$_upstream" != "$_electron" ]]; then
34
error "upstream pins electron $_upstream, PKGBUILD depends on $_electron"
35
return 1
36
fi
37
# pacman owns this install. The kernel only registers its self-update
38
# routes when the shell names the application file and process it would
39
# replace; keep stating the version (remote kernels are installed by it)
40
# and never the application, so there is no updater to offer or run.
41
node <<'JS'
42
const fs = require('node:fs');
43
const f = 'desktop/electron/src/main.js';
44
let s = fs.readFileSync(f, 'utf8');
45
const from = ` if (app.isPackaged) {
46
args.push("-studio-version", app.getVersion());`;
47
const tail = ` args.push("-studio-app", process.execPath, "-studio-app-pid", String(process.pid));
48
}`;
49
if (!s.includes(from) || !s.includes(tail)) throw new Error('upstream host arguments changed');
50
s = s.replace(from, ` {
51
args.push("-studio-version", app.getVersion());`).replace(tail, ' }');
52
fs.writeFileSync(f, s);
53
JS
54
# Upstream's pnpm 10 skips esbuild's postinstall with a warning; pnpm 11
55
# fails on it. Vite runs the prebuilt @esbuild/* binary either way.
56
pnpm --dir desktop/frontend-next install --frozen-lockfile \
57
--config.strict-dep-builds=false --store-dir "$srcdir/.pnpm-store"
58
}
59
60
build() {
61
cd "DeepSeek-Reasonix-studio-v$pkgver"
62
pnpm --dir desktop/frontend-next build
63
# What desktop/electron/packaging/build-host.js runs, plus -trimpath.
64
CGO_ENABLED=0 go build -buildvcs=false -trimpath \
65
-ldflags "-s -w -X main.version=v$pkgver" \
66
-o desktop/electron/bin/reasonix-studio-host ./cmd/reasonix-studio-host
67
# electron-builder injects the release version the same way; package.json
68
# carries 0.0.0 in the tree. desktopName ties a native Wayland window to
69
# the installed .desktop entry.
70
node -e "
71
const fs = require('node:fs');
72
const f = 'desktop/electron/package.json';
73
const p = JSON.parse(fs.readFileSync(f, 'utf8'));
74
p.version = process.argv[1];
75
p.desktopName = 'reasonix-studio.desktop';
76
fs.writeFileSync(f, JSON.stringify(p, null, 2) + '\n');
77
" "$pkgver"
78
}
79
80
package() {
81
cd "DeepSeek-Reasonix-studio-v$pkgver"
82
local _lib="$pkgdir/usr/lib/$_pkgname"
83
# The shell has no runtime npm dependencies; these are electron-builder's
84
# `files`.
85
install -d "$_lib/app"
86
cp -r --no-preserve=ownership desktop/electron/{src,assets,package.json} "$_lib/app/"
87
install -Dm755 desktop/electron/bin/reasonix-studio-host "$_lib/bin/reasonix-studio-host"
88
install -d "$_lib/frontend-next"
89
cp -r --no-preserve=ownership desktop/frontend-next/dist "$_lib/frontend-next/"
90
91
sed "s|@ELECTRON@|$_electron|" "$srcdir/$_pkgname.sh" | install -Dm755 /dev/stdin "$pkgdir/usr/bin/$_pkgname"
92
install -Dm644 "$srcdir/$_pkgname.desktop" "$pkgdir/usr/share/applications/$_pkgname.desktop"
93
install -Dm644 desktop/electron/assets/icon.png "$pkgdir/usr/share/icons/hicolor/512x512/apps/$_pkgname.png"
94
install -Dm644 desktop/electron/assets/icon.svg "$pkgdir/usr/share/icons/hicolor/scalable/apps/$_pkgname.svg"
95
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
96
}
97
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-10-07 06:05:09 | Low | 1 |