greenboost

maintainer evorster · 1 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The pip install is from a local source within the project's own source tree, not an external download, and the package builds its own code from a trusted project host (GitLab); the flagged external install is part of a standard venv setup for the project's CLI.

Triggered rules

LOW AI review downgraded a static finding llm_review

The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The pip install is from a local source within the project's own source tree, not an external download, and the package builds its own code from a trusted project host (GitLab); the flagged external install is part of a standard venv setup for the project's CLI.

2 higher static findings superseded - not the current verdict (shown for transparency)
MEDIUM pip install of an external package pip_install_external

`pip install <package>` fetches an unpinned package from PyPI at build time, outside source=() and makepkg's checksums.

  • PKGBUILD:66 uv pip install "./greenboost-cli" --no-build-isolation
MEDIUM External install via pipx/uv/poetry/cargo/go/gem alt_pkg_manager_install

A non-pip/npm package manager (pipx, uv, poetry, cargo install, go install, gem, conda…) fetches and builds an external package at build time, outside source=() and makepkg's checksums.

  • PKGBUILD:66 uv pip install "./greenboost-cli" --no-build-isolation

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: Evert Vorster <superchief@evertvorster.com>
2
3pkgname=greenboost
4pkgver=3.2
5pkgrel=3
6pkgdesc="CUDA memory orchestrator for NVIDIA GPUs — unified VRAM + System RAM + SSD pool"
7arch=('x86_64')
8url="https://gitlab.com/IsolatedOctopi/greenboost"
9license=('GPL-2.0-or-later')
10depends=(
11 'dkms'
12 'python'
13 'python-numpy'
14 'python-yaml'
15 'python-aiohttp'
16 'python-mcp'
17 'python-rich'
18 'python-prompt_toolkit'
19 'python-httpx'
20 'python-openai'
21 'python-huggingface-hub'
22)
23makedepends=('uv')
24optdepends=(
25 'cuda: for TurboQuant KV cache compression'
26 'lib32-glibc: needed if 32-bit audit library is shipped (built automatically when multilib is present)'
27 'python-pytorch-cuda: for quantization and ML tools'
28 'python-scipy: for advanced quantization algorithms'
29 'python-transformers: for HuggingFace model tools'
30)
31provides=('greenboost')
32conflicts=('greenboost-git')
33install=greenboost.install
34source=("${url}/-/archive/v${pkgver}/${pkgname}-v${pkgver}.tar.gz")
35sha256sums=('5fe82212a44f91ac2f52ae35ab8bb9bd4216c38cb16e85d8c7f63e49d915e073')
36
37build() {
38 cd "$srcdir/${pkgname}-v${pkgver}"
39
40 local _relro="-Wl,-z,relro -Wl,-z,now"
41
42 # ── C libraries ────────────────────────────────────────────────────
43 msg2 "Building CUDA shim..."
44 make shim \
45 SHIM_INSTALL_PATH=/usr/lib/libgreenboost_cuda.so \
46 SHIM_LDFLAGS="-Wl,--gc-sections -lzstd -Wl,--as-needed ${_relro}"
47
48 msg2 "Building LD_AUDIT injector..."
49 make audit \
50 SHIM_INSTALL_PATH=/usr/lib/libgreenboost_cuda.so
51
52 msg2 "Building 32-bit audit library (skipped if multilib missing)..."
53 make audit32 SHIM_INSTALL_PATH=/usr/lib/libgreenboost_cuda.so 2>/dev/null || true
54
55 msg2 "Building network daemon..."
56 make netd SHIM_INSTALL_PATH=/usr/lib/libgreenboost_cuda.so
57
58 msg2 "Building VMM override (Blackwell support)..."
59 make vmm_override
60
61 # ── Python CLI venv ────────────────────────────────────────────────
62 msg2 "Creating CLI virtual environment..."
63 uv venv --system-site-packages --clear cli-venv
64 # shellcheck disable=SC1091
65 source cli-venv/bin/activate
66 uv pip install "./greenboost-cli" --no-build-isolation
67}
68
69package() {
70 cd "$srcdir/${pkgname}-v${pkgver}"
71
72 # ── DKMS source tree ──────────────────────────────────────────────
73 local _dkms_dir="$pkgdir/usr/src/${pkgname}-${pkgver}"
74 install -dm755 "$_dkms_dir"
75 install -m644 greenboost.c \
76 greenboost_ioctl.h \
77 Kbuild \
78 Makefile \
79 dkms.conf \
80 "$_dkms_dir/"
81 cp -r features "$_dkms_dir/"
82
83 sed -i \
84 -e 's|M=\${build_dir}|M=\${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build|g' \
85 -e '/^MAKE\[0\]=/ s/modules"/KCFLAGS=-Wno-error=ignored-optimization-argument &/' \
86 "$_dkms_dir/dkms.conf"
87
88 # ── Userspace libraries ────────────────────────────────────────────
89 install -dm755 "$pkgdir/usr/lib"
90 install -m755 libgreenboost_cuda.so "$pkgdir/usr/lib/"
91 install -m755 libgreenboost_audit.so "$pkgdir/usr/lib/"
92
93 if [[ -f libgreenboost_audit32.so ]]; then
94 install -dm755 "$pkgdir/usr/lib32"
95 install -m755 libgreenboost_audit32.so \
96 "$pkgdir/usr/lib32/libgreenboost_audit.so"
97 fi
98
99 install -m755 libgreenboost_netd_capture.so "$pkgdir/usr/lib/"
100 install -m755 libgreenboost_vmm_override.so "$pkgdir/usr/lib/"
101
102 # ── System binaries ────────────────────────────────────────────────
103 install -dm755 "$pkgdir/usr/bin"
104 install -m755 greenboost-netd "$pkgdir/usr/bin/"
105
106 # greenboost-run: LD_PRELOAD shim wrapper
107 cat > "$pkgdir/usr/bin/greenboost-run" <<'WRAPEOF'
108#!/bin/sh
109LD_PRELOAD="/usr/lib/libgreenboost_cuda.so" exec "$@"
110WRAPEOF
111 chmod 755 "$pkgdir/usr/bin/greenboost-run"
112
113 # greenboost: Python tool dispatcher
114 cat > "$pkgdir/usr/bin/greenboost" <<'GBEOF'
115#!/bin/bash
116_GB_LIBDIR="/usr/share/greenboost/lib"
117export PYTHONPATH="${_GB_LIBDIR}:${PYTHONPATH}"
118
119cmd="$1"
120shift 2>/dev/null || true
121
122case "${cmd}" in
123 "")
124 echo "GreenBoost v$(cat /usr/share/greenboost/dkms-version 2>/dev/null)"
125 echo "Usage: greenboost <command> [args]"
126 echo ""
127 echo "Commands:"
128 echo " status Show tiering status"
129 echo " dataflux-ui Launch dataflux web UI"
130 echo " monitor Show live telemetry"
131 echo " pilot Show evidence-backed tuning advice"
132 echo " mcp Start MCP server"
133 echo " faults Show memory migration activity"
134 echo " top Show per-buffer residency (hottest first)"
135 echo " residency Show hot/warm/cold byte breakdown"
136 echo " capabilities Show installed feature manifest"
137 echo " profile create Create hardware profile for DDR speed detection"
138 echo " run <cmd> Wrap command with shim (alias: greenboost-run)"
139 echo ""
140 echo "Cluster commands:"
141 echo " cluster Manage cluster feeders"
142 echo " connect <ip> Connect to a feeder machine"
143 ;;
144 run)
145 LD_PRELOAD="/usr/lib/libgreenboost_cuda.so" exec "$@"
146 ;;
147 status)
148 cat /sys/class/greenboost/greenboost/status 2>/dev/null \
149 || echo "GreenBoost module not loaded (try: sudo modprobe greenboost)"
150 ;;
151 dataflux-ui)
152 exec python3 "${_GB_LIBDIR}/gb_dataflux.py" serve "$@"
153 ;;
154 monitor)
155 exec python3 "${_GB_LIBDIR}/gb_monitor.py" "$@"
156 ;;
157 pilot)
158 exec python3 "${_GB_LIBDIR}/gb_pilot.py" "$@"
159 ;;
160 mcp)
161 exec python3 "${_GB_LIBDIR}/gb_mcp.py" "$@"
162 ;;
163 dataflux-mcp)
164 exec python3 "${_GB_LIBDIR}/gb_dataflux_mcp.py" "$@"
165 ;;
166 cluster)
167 exec python3 "${_GB_LIBDIR}/gb_cluster.py" "$@"
168 ;;
169 faults|top|residency|capabilities)
170 exec python3 "${_GB_LIBDIR}/gb_monitor.py" "${cmd}" "$@"
171 ;;
172 profile)
173 case "${1:-}" in
174 create)
175 if [ "$(id -u)" -ne 0 ]; then
176 echo "root required to read DDR speed from dmidecode"
177 echo "Try: sudo greenboost profile create"
178 exit 1
179 fi
180 install -d /etc/greenboost/profiles 2>/dev/null || mkdir -p /etc/greenboost/profiles
181 {
182 echo "# GreenBoost hardware profile"
183 echo "# Generated: $(date -Is)"
184 echo ""
185 dmidecode --type memory 2>/dev/null | grep -E 'Speed|Type|Manufacturer' | head -10
186 } > /etc/greenboost/profiles/default.md
187 echo "Profile written to /etc/greenboost/profiles/default.md"
188 ;;
189 *)
190 echo "Usage: greenboost profile create"
191 exit 1
192 ;;
193 esac
194 ;;
195 help|--help|-h)
196 echo "See: https://gitlab.com/IsolatedOctopi/greenboost"
197 echo "Full docs: /usr/share/doc/greenboost/"
198 ;;
199 *)
200 echo "Unknown command: ${cmd}"
201 echo "Run 'greenboost' for usage."
202 exit 1
203 ;;
204esac
205GBEOF
206 chmod 755 "$pkgdir/usr/bin/greenboost"
207
208 # ── Python library scripts ─────────────────────────────────────────
209 local _libdir="$pkgdir/usr/share/${pkgname}/lib"
210 install -dm755 "$_libdir"
211 install -m755 gb_*.py "$_libdir/"
212 install -m755 lib/gb_*.sh "$_libdir/"
213
214 # ── CLI venv ───────────────────────────────────────────────────────
215 local _cli_optdir="$pkgdir/opt/${pkgname}/cli-venv"
216 install -dm755 "$(dirname "$_cli_optdir")"
217 cp -r cli-venv "$_cli_optdir"
218
219 # Relocate venv paths from build dir to install path
220 find "$_cli_optdir" -type f \( -name '*.cfg' -o -name 'activate*' -o -name '*.nu' \
221 -o -name '*.bat' -o -name '*.csh' -o -name '*.fish' \) \
222 -exec sed -i "s|${srcdir}/${pkgname}-v${pkgver}/cli-venv|/opt/${pkgname}/cli-venv|g" {} + 2>/dev/null || true
223 sed -i "s|${srcdir}/${pkgname}-v${pkgver}/cli-venv|/opt/${pkgname}/cli-venv|g" \
224 "$_cli_optdir/bin"/* 2>/dev/null || true
225
226 # Clean up caches and srcdir references
227 rm -rf "$_cli_optdir/cache"
228 find "$_cli_optdir" -name '__pycache__' -type d -exec rm -rf {} + 2>/dev/null || true
229 find "$_cli_optdir" -name 'direct_url.json' -delete 2>/dev/null || true
230
231 # CLI wrapper scripts
232 for _cli_cmd in gb greenboost-cli; do
233 cat > "$pkgdir/usr/bin/${_cli_cmd}" <<'CLIEOF'
234#!/bin/bash
235exec /opt/greenboost/cli-venv/bin/python -m greenboost_cli.__main__ "$@"
236CLIEOF
237 chmod 755 "$pkgdir/usr/bin/${_cli_cmd}"
238 done
239
240 # ── Version stamp ──────────────────────────────────────────────────
241 install -dm755 "$pkgdir/usr/share/$pkgname"
242 echo "$pkgver" > "$pkgdir/usr/share/$pkgname/dkms-version"
243
244 # ── Documentation ──────────────────────────────────────────────────
245 install -dm755 "$pkgdir/usr/share/doc/$pkgname"
246 install -m644 README.md CHANGELOG.md "$pkgdir/usr/share/doc/$pkgname/"
247 for doc in ARCHITECTURE.md DOCUMENTATION.md CONTAINER_VM_MODE.md \
248 GREENBOOST_COMMANDS.md GREENBOOST_PROTON.md; do
249 [[ -f "$doc" ]] && install -m644 "$doc" "$pkgdir/usr/share/doc/$pkgname/"
250 done
251
252 # ── udev rule ──────────────────────────────────────────────────────
253 install -dm755 "$pkgdir/usr/lib/udev/rules.d"
254 cat > "$pkgdir/usr/lib/udev/rules.d/99-greenboost.rules" <<'RULEEOF'
255SUBSYSTEM=="greenboost", MODE="0660", GROUP="video"
256RULEEOF
257 chmod 644 "$pkgdir/usr/lib/udev/rules.d/99-greenboost.rules"
258
259 # ── License ────────────────────────────────────────────────────────
260 install -dm755 "$pkgdir/usr/share/licenses/$pkgname"
261 install -m644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/"
262}
263

Changes since previous scan

--- PKGBUILD @ 2026-07-23 00:14
+++ PKGBUILD @ 2026-08-03 00:08
@@ -2,7 +2,7 @@
pkgname=greenboost
pkgver=3.2
-pkgrel=2
+pkgrel=3
pkgdesc="CUDA memory orchestrator for NVIDIA GPUs — unified VRAM + System RAM + SSD pool"
arch=('x86_64')
url="https://gitlab.com/IsolatedOctopi/greenboost"
@@ -32,7 +32,7 @@
conflicts=('greenboost-git')
install=greenboost.install
source=("${url}/-/archive/v${pkgver}/${pkgname}-v${pkgver}.tar.gz")
-sha256sums=('79147851e8d348df7065eb0816b2488650676b77ec058b93b93f4dcaa35bb97c')
+sha256sums=('5fe82212a44f91ac2f52ae35ab8bb9bd4216c38cb16e85d8c7f63e49d915e073')
build() {
cd "$srcdir/${pkgname}-v${pkgver}"

Scan history

Scanned at (UTC)SeverityRules
2026-08-03 00:08:14 LOW 3
2026-08-02 00:16:08 LOW 3
2026-08-01 00:11:18 LOW 3
2026-07-31 00:14:10 LOW 3
2026-07-30 00:17:23 LOW 3
2026-07-29 00:25:53 LOW 3
2026-07-28 00:07:28 LOW 3
2026-07-27 00:24:32 LOW 4
2026-07-26 00:07:32 LOW 4
2026-07-25 00:13:44 LOW 4
2026-07-24 00:02:28 LOW 4
2026-07-23 05:22:32 MEDIUM 3
2026-07-23 00:14:47 LOW 4
2026-07-22 07:20:00 MEDIUM 3
2026-07-22 00:29:32 LOW 4
2026-07-21 00:24:15 LOW 4
2026-07-20 00:19:49 LOW 4
2026-07-19 00:17:08 LOW 4
2026-07-18 00:14:48 LOW 4
2026-07-17 00:06:16 LOW 4

Report a package

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

0 / 4000
Your suggestion