bettbox-compatible-pre

LOW
maintainer VillagerTom 0 votes scanned 2026-09-29 05:22:53.434583
View on AUR
Why flagged

Package builds from source hosted on a plausible project-owned GitHub repository, uses standard Flutter tooling, and installs only project binaries and data; flagged pattern relates to metadata (few votes, recent upload) with no evidence of malicious behavior.

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.

Low AI review llm_review

An AI model (qwen/qwen3-235b-a22b-2507) reviewed this and agrees it is LOW (confidence 95%): Package builds from source hosted on a plausible project-owned GitHub repository, uses standard Flutter tooling, and installs only project binaries and data; flagged pattern relates to metadata (few votes, recent upload) with no evidence of malicious behavior.

PKGBUILD

1# Maintainer: VillagerTom <villager-tom at proton dot me>
2
3pkgname=bettbox-compatible-pre
4_pkgname=Bettbox
5pkgver=1.19.4pre1
6pkgrel=1
7_pkgver="${pkgver/pre/-pre}"
8pkgdesc="A multi-platform proxy client powered by the Mihomo (Clash Meta) core, refactored based on early versions of FlClash. (Build with GOAMD64=v1)"
9arch=('x86_64')
10options=('!lto')
11url="https://github.com/appshubcc/${_pkgname}"
12license=('GPL-3.0-or-later')
13conflicts=('bettbox' 'bettbox-pre' 'bettbox-compatible' 'bettbox-compatible-bin' 'bettbox-compatible-pre-bin' 'bettbox-bin')
14provides=("${pkgname%-compatible-pre}=${pkgver}")
15depends=(
16 'gtk3'
17 'libayatana-appindicator'
18 'libkeybinder3'
19)
20makedepends=('git' 'clang' 'cmake' 'ninja' 'go' 'rustup' 'fvm' 'patchelf')
21source=("${_pkgname}-${_pkgver}.tar.gz::${url}/archive/v${_pkgver}.tar.gz" "restart-bettbox.hook" "bettbox.desktop")
22sha256sums=('2d057a1b6361746f033798a515c4d92948f83aec64d5ce76feb3fbeb8c1557ae'
23 '03d4aadb32c7a3876ac3dbafeb3d2ecd38b0fc87d19ff57d5dc46d452fd026a2'
24 'd7b7bdb64b1aabcedc8092a1498d743fad66d34b7f592194f805d039004d3e0f')
25prepare() {
26 cd "${_pkgname}-${_pkgver}"
27 fvm use 3.44.9
28 fvm flutter --disable-analytics
29 fvm flutter --no-version-check pub get
30}
31
32build () {
33 cd "${_pkgname}-${_pkgver}"
34 # cargokit (code_forge plugin) requires FLUTTER_ROOT for its dart
35 export FLUTTER_ROOT="$(pwd)/.fvm/flutter_sdk"
36 local app_env=stable
37 [[ "${pkgver}" == *pre* ]] && app_env=pre
38 fvm dart run build_runner build -d
39 fvm dart ./setup.dart linux --arch amd64 --out core --compatible
40 fvm flutter build linux --no-pub --release --target-platform linux-x64 --dart-define=APP_ENV="$app_env"
41}
42
43# Waiting for https://github.com/appshubcc/Bettbox/pull/159
44# Once merged, setup.dart gains --out app --build-only (-B) which builds the
45# core, sets setuid, and runs flutter build in one step (with --env for APP_ENV).
46# --arch is omitted since setup.dart now auto-detects the host CPU architecture
47# (ArchExt.same). With --build-only, flutter build runs inside setup.dart, which
48# derives --target-platform from the auto-detected arch automatically.
49# Replace the build() above with:
50# build() {
51# cd "${_pkgname}-${_pkgver}"
52# export FLUTTER_ROOT="$(pwd)/.fvm/flutter_sdk"
53# local app_env=stable
54# [[ "${pkgver}" == *pre* ]] && app_env=pre
55# fvm dart run build_runner build -d
56# fvm dart ./setup.dart linux --compatible --build-only --env "$app_env"
57# }
58
59package () {
60 cd "${_pkgname}-${_pkgver}"
61 pushd "build/linux/x64/release"
62 install -Dm755 "bundle/${_pkgname}" -t "${pkgdir}/usr/lib/${pkgname%-compatible-pre}/"
63 install -Dm755 "bundle/BettboxCore" -t "${pkgdir}/usr/lib/${pkgname%-compatible-pre}/"
64 # Install lib/ and data/ from the bundle; `cmake -P` bakes $pkgdir into CMakeCache.txt, breaking `makepkg -f`.
65 install -dm755 "${pkgdir}/usr/lib/${pkgname%-compatible-pre}/lib"
66 cp -a bundle/lib/. "${pkgdir}/usr/lib/${pkgname%-compatible-pre}/lib/"
67 install -dm755 "${pkgdir}/usr/lib/${pkgname%-compatible-pre}/data"
68 cp -a bundle/data/. "${pkgdir}/usr/lib/${pkgname%-compatible-pre}/data/"
69 popd
70
71 # Reset RPATH
72 patchelf --set-rpath '$ORIGIN' ${pkgdir}/usr/lib/${pkgname%-compatible-pre}/lib/*.so
73
74 # Set setuid on BettboxCore for TUN mode (to avoid password prompt)
75 chmod u+sx "${pkgdir}/usr/lib/${pkgname%-compatible-pre}/BettboxCore"
76
77 # Symlink
78 install -dm755 "${pkgdir}/usr/bin"
79 ln -s "/usr/lib/${pkgname%-compatible-pre}/${_pkgname}" "${pkgdir}/usr/bin/bettbox"
80
81 # Hook
82 install -Dm644 -t "${pkgdir}/usr/share/libalpm/hooks/" "${srcdir}/restart-bettbox.hook"
83
84 # Desktop file
85 install -Dm644 "${srcdir}/bettbox.desktop" -t "${pkgdir}/usr/share/applications/"
86
87 cd assets
88 install -Dm644 images/icon.png "${pkgdir}/usr/share/icons/hicolor/128x128/apps/bettbox.png"
89 install -Dm644 images/icon.png "${pkgdir}/usr/share/icons/hicolor/256x256/apps/bettbox.png"
90}
91

Scan history

Scanned at (UTC)SeverityRules
2026-09-29 05:22:53 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