easycliproxyapi-git

LOW
maintainer doudou 0 votes scanned 2026-09-24 03:41:46.078749
View on AUR
Why flagged

The package builds from a public git repository and downloads a prebuilt core component from GitHub Releases of the same project, which is a normal pattern for hybrid applications; the core binary is not executed directly in the build process and comes from the project's own trusted release infrastructure, making the risk low despite the unverifiable checksum.

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%): The package builds from a public git repository and downloads a prebuilt core component from GitHub Releases of the same project, which is a normal pattern for hybrid applications; the core binary is not executed directly in the build process and comes from the project's own trusted release infrastructure, making the risk low despite the unverifiable checksum.

PKGBUILD

1# Maintainer: doudou <951028382@qq.com>
2
3pkgname=easycliproxyapi-git
4pkgver=0.3.2.r531.6c64fc0
5pkgrel=1
6pkgdesc='Cross-platform GUI desktop management client for CLIProxyAPI with Linux system tray patch'
7arch=('x86_64' 'aarch64')
8url='https://github.com/router-for-me/EasyCLIProxyAPI'
9license=('MIT')
10depends=(
11 'cairo'
12 'dbus'
13 'gdk-pixbuf2'
14 'glib2'
15 'gtk3'
16 'hicolor-icon-theme'
17 'libayatana-appindicator'
18 'libsoup3'
19 'webkit2gtk-4.1'
20)
21makedepends=(
22 'bun'
23 'cargo'
24 'git'
25)
26provides=('easycliproxyapi')
27conflicts=('easycliproxyapi' 'easycliproxyapi-bin')
28
29source=(
30 'EasyCLIProxyAPI::git+https://github.com/router-for-me/EasyCLIProxyAPI.git#branch=main'
31 '0001-enable-linux-tray.patch'
32 'easycliproxyapi.sh'
33 'easycliproxyapi.desktop'
34)
35b2sums=(
36 'SKIP'
37 '9bbfbf35ca84ec60d78696de9ab7e1fa4ff7de1a4f4e292da0a14c78cceb3ae93f8e9dab02f256b8e8420418e636a6658502181005ce6dc99319ca7a81516dbc'
38 '95d5332bdfa5b2662e1bfef7b3febd8a1c8df9f1c830883e3c0d3076019ebd07e1b36beaae0f6f617db654de7eab675511559a5b7ba18e386a866566b56efb71'
39 'fe6d941b1de9807605cf15086b7f38355a4c2b8fc4662668f958989b536b2957baccab71aad45a5b9713a91bf94f421066191f7ad1d0d177b9a962c8b38893e6'
40)
41
42pkgver() {
43 cd "$srcdir/EasyCLIProxyAPI"
44 local version
45 version=$(git describe --tags --abbrev=0 2>/dev/null || true)
46 version="${version#v}"
47 [ -z "$version" ] && version="0.3.2"
48 printf '%s.r%s.%s' \
49 "$version" \
50 "$(git rev-list --count HEAD)" \
51 "$(git rev-parse --short=7 HEAD)"
52}
53
54prepare() {
55 cd "$srcdir/EasyCLIProxyAPI"
56 git reset --hard HEAD
57 git apply --check "$srcdir/0001-enable-linux-tray.patch"
58 git apply "$srcdir/0001-enable-linux-tray.patch"
59 bun install --frozen-lockfile
60
61 local _core_ver
62 _core_ver=$(<core-version.txt)
63 _core_ver="${_core_ver#v}"
64 local _arch
65 case "$CARCH" in
66 x86_64) _arch="amd64" ;;
67 aarch64) _arch="aarch64" ;;
68 esac
69 local _core_archive="CLIProxyAPI_${_core_ver}_linux_${_arch}.tar.gz"
70 mkdir -p cpa-core
71 if [[ ! -f "cpa-core/${_core_archive}" ]]; then
72 curl -sSL -o "cpa-core/${_core_archive}" \
73 "https://github.com/router-for-me/CLIProxyAPI/releases/download/v${_core_ver}/${_core_archive}"
74 fi
75}
76
77build() {
78 cd "$srcdir/EasyCLIProxyAPI"
79 bun tauri build --no-bundle
80}
81
82package() {
83 cd "$srcdir/EasyCLIProxyAPI"
84
85 local _arch
86 case "$CARCH" in
87 x86_64) _arch="amd64" ;;
88 aarch64) _arch="aarch64" ;;
89 esac
90 local _core_ver
91 _core_ver=$(<core-version.txt)
92 _core_ver="${_core_ver#v}"
93
94 # Install main binary
95 install -dm755 "${pkgdir}/usr/lib/easycliproxyapi"
96 install -Dm755 "src-tauri/target/release/cpa-gui" "${pkgdir}/usr/lib/easycliproxyapi/EasyCLIProxyAPI"
97 install -Dm644 "core-version.txt" "${pkgdir}/usr/lib/easycliproxyapi/core-version.txt"
98
99 # Generate portable-app.json
100 cat > "${pkgdir}/usr/lib/easycliproxyapi/portable-app.json" <<EOF
101{
102 "schemaVersion": 1,
103 "application": "EasyCLIProxyAPI",
104 "version": "${pkgver%%.r*}",
105 "platform": "linux",
106 "arch": "${_arch}",
107 "autoUpdate": false
108}
109EOF
110 chmod 644 "${pkgdir}/usr/lib/easycliproxyapi/portable-app.json"
111
112 # Install bundled cpa-core
113 install -dm755 "${pkgdir}/usr/lib/easycliproxyapi/cpa-core"
114 local _core_file="CLIProxyAPI_${_core_ver}_linux_${_arch}.tar.gz"
115 install -Dm644 "cpa-core/${_core_file}" "${pkgdir}/usr/lib/easycliproxyapi/cpa-core/${_core_file}"
116
117 # Install launcher script and symlinks
118 install -Dm755 "${srcdir}/easycliproxyapi.sh" "${pkgdir}/usr/bin/easycliproxyapi"
119 ln -sf easycliproxyapi "${pkgdir}/usr/bin/EasyCLIProxyAPI"
120
121 # Install desktop entry
122 install -Dm644 "${srcdir}/easycliproxyapi.desktop" "${pkgdir}/usr/share/applications/easycliproxyapi.desktop"
123
124 # Install icon
125 install -Dm644 "src-tauri/icons/icon.png" "${pkgdir}/usr/share/icons/hicolor/1024x1024/apps/easycliproxyapi.png"
126 install -Dm644 "src-tauri/icons/icon.png" "${pkgdir}/usr/share/pixmaps/easycliproxyapi.png"
127
128 # Install license
129 install -Dm644 "LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
130}
131

Scan history

Scanned at (UTC)SeverityRules
2026-09-24 03:41:46 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