ait-git
LOW
maintainer oowl
0 votes
scanned 2026-10-19 17:26:05.698413
Why flagged
Package builds from a legitimate Git source with no obfuscated or untrusted remote code execution; low severity due to few votes and recent upload, but source is verifiable and build process is transparent.
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 90%): Package builds from a legitimate Git source with no obfuscated or untrusted remote code execution; low severity due to few votes and recent upload, but source is verifiable and build process is transparent.
PKGBUILD
1
# Maintainer: Ait contributors <https://github.com/ait-app/ait>
2
3
pkgname=ait-git
4
pkgver=0.1.9.r648.g808b9bc
5
pkgrel=1
6
pkgdesc='Local-first multi-agent manager with an Electron desktop and Rust daemon (Git main)'
7
arch=('x86_64')
8
url='https://github.com/ait-app/ait'
9
license=('Apache-2.0')
10
depends=(
11
'alsa-lib' 'at-spi2-core' 'bash' 'cairo' 'coreutils' 'dbus' 'expat'
12
'libgcc' 'libstdc++' 'git' 'glib2' 'glibc' 'grep' 'gtk3' 'hicolor-icon-theme'
13
'libcups' 'libnotify' 'libxcb' 'libxcomposite' 'libxdamage' 'libxext'
14
'libxfixes' 'libxkbcommon' 'libxrandr' 'libx11' 'mesa' 'nspr' 'nss'
15
'pango' 'systemd-libs' 'util-linux' 'xdg-utils'
16
)
17
makedepends=('rust' 'nodejs>=22.22.2' 'npm' 'python' 'cmake' 'clang' 'pkgconf')
18
optdepends=(
19
'libsecret: desktop credential storage'
20
'org.freedesktop.secrets: Secret Service provider for credential storage'
21
)
22
provides=("ait=${pkgver}")
23
conflicts=('ait')
24
# GCC LTO objects in native Rust dependencies cannot be linked by Rust's lld.
25
options=('!strip' '!debug' '!lto')
26
source=("ait::git+${url}.git#branch=main")
27
sha256sums=('SKIP')
28
29
pkgver() {
30
cd "$srcdir/ait"
31
local version
32
version="$(node -p "require('./package.json').version")"
33
printf '%s.r%s.g%s' "${version//-/.}" \
34
"$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
35
}
36
37
_build_env() {
38
export npm_config_cache="$srcdir/npm-cache"
39
export ELECTRON_CACHE="$srcdir/electron-cache"
40
export ELECTRON_BUILDER_CACHE="$srcdir/electron-builder-cache"
41
export CARGO_TARGET_DIR="$srcdir/target"
42
export AIT_SERVER_BIN="$CARGO_TARGET_DIR/release/daemon"
43
export CI=1 EXPO_NO_TELEMETRY=1
44
}
45
46
prepare() {
47
cd "$srcdir/ait"
48
_build_env
49
npm ci --no-audit --no-fund
50
cargo fetch --locked --target x86_64-unknown-linux-gnu
51
}
52
53
build() {
54
cd "$srcdir/ait"
55
_build_env
56
cargo build --locked --release -p daemon --bin daemon
57
npm run build:desktop-assets
58
node apps/desktop/scripts/prepare-daemon.mjs
59
npm run build:main --workspace=@ait/desktop
60
# Build the app directory; pacman supplies the installer.
61
cd apps/desktop
62
npm exec -- electron-builder --config electron-builder.yml --linux --x64 --dir --publish never
63
}
64
65
package() {
66
local app="$srcdir/ait/apps/desktop/release/linux-unpacked"
67
68
install -dm755 "$pkgdir/usr/lib/ait" "$pkgdir/usr/bin"
69
cp -a --no-preserve=ownership "$app/." "$pkgdir/usr/lib/ait/"
70
chmod 4755 "$pkgdir/usr/lib/ait/chrome-sandbox"
71
ln -s /usr/lib/ait/Ait "$pkgdir/usr/bin/ait"
72
install -Dm644 "$srcdir/ait/packaging/aur/ait-bin/ait.desktop" \
73
"$pkgdir/usr/share/applications/ait.desktop"
74
install -Dm644 "$app/resources/icon.png" \
75
"$pkgdir/usr/share/pixmaps/ait.png"
76
install -Dm644 "$srcdir/ait/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
77
ln -s /usr/lib/ait/LICENSE.electron.txt \
78
"$pkgdir/usr/share/licenses/$pkgname/LICENSE.electron.txt"
79
ln -s /usr/lib/ait/LICENSES.chromium.html \
80
"$pkgdir/usr/share/licenses/$pkgname/LICENSES.chromium.html"
81
}
82
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-10-19 17:26:05 | Low | 2 |