deshader-git

maintainer OSDVF · 0 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The external download of bun and vcpkg occurs during prepare() but both are build tools used to compile the project's own source; the final binaries are built from the git source and the downloads are from official, well-known domains (bun.sh, github.com/microsoft/vcpkg), posing minimal supply-chain risk.

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-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The external download of bun and vcpkg occurs during prepare() but both are build tools used to compile the project's own source; the final binaries are built from the git source and the downloads are from official, well-known domains (bun.sh, github.com/microsoft/vcpkg), posing minimal supply-chain risk.

1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM External download from an untrusted host, not in source=() external_download_not_in_source

curl/wget fetches a URL on a non-allowlisted host that is not part of source=(), so it is not checksum-verified by makepkg.

  • PKGBUILD:126 curl -fsSL https://bun.sh/install | BUN_INSTALL="$srcdir/dep" bash

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: o.s.dv.f@seznam.cz
2pkgname=deshader-git
3pkgver=rb5aee41
4pkgrel=1
5pkgdesc="Shader debugging via GLSL code instrumentation. This is preliminary package, does not coply with all package guidelines."
6arch=(armv7h
7 aarch64
8 x86_64
9 i686)
10url="https://github.com/OSDVF/deshader"
11depends=('gtk3'
12 'webkit2gtk')
13makedepends=('git'
14 'zig=0.14.0'
15 'binutils'
16 'unzip'
17 'curl'
18 'zip'
19 'tar'
20 'pkgconf'
21 )
22optdepends=()
23options=(!lto !strip)
24provides=("deshader=$pkgver"
25 "deshader-run=$pkgver"
26 "libdeshader.so")
27conflicts=('deshader'
28 'deshader-run')
29source=('deshader.desktop'
30 '48.png'
31 '256.png'
32 'scalable.svg'
33 'git+https://github.com/OSDVF/deshader.git')
34sha256sums=('fba58063082fef9ea30cb88a73ac1877360abcca0cef36859a3ee096528fcd12'
35 '00bcebeeb6423504e5b877c398751bfa15df23266131ffe1fb3058e2f1511de4'
36 'dd20694f4cc973e44ce5df87a7da166515aa9df6a8045fa13df726980308aa92'
37 '067392a62f68bf6354c9fefc34788b9a350f56e19ac899248da1142df7541e4b'
38 'SKIP')
39license=('GPL-3.0-or-later')
40
41pkgver() {
42 cd "$srcdir/${pkgname%-git}" || exit 1
43 MAYBE_TAG=$(git describe --tags --abbrev=0 --exact-match 2>/dev/null || echo "")
44 if [[ "$MAYBE_TAG" != "" ]] && [[ $MAYBE_TAG =~ ^[[:digit:]] ]]; then
45 echo $MAYBE_TAG # tag that begins with a digit => release version, use tag name
46 else
47 printf "r%s" "$(git rev-parse --short HEAD)" # no tag or dev tag => development version, use commit hash
48 fi
49}
50
51build_deshader() {
52 zig build deshader --release=safe # do not override build flags by makepkg
53}
54
55build_launcher() {
56 zig build launcher --release=safe # do not override build flags by makepkg
57}
58
59build() {
60 # do not override build flags by makepkg -- will corrupt the build for use with Zig
61 export CFLAGS=""
62 export CXXFLAGS=""
63 export CPPFLAGS=""
64 if [[ "$OSTYPE" == "linux*" ]]; then
65 export LDFLAGS="-z,itb,-z,shstk"
66 fi
67
68 cd "$srcdir/${pkgname%-git}" || exit 1
69 if ! build_deshader; then # must be ran twice to fix the C import
70 sh fix_c_import.sh
71 echo "Retrying build"
72 if ! build_deshader; then # maybe three times
73 sh fix_c_import.sh
74 echo "Retrying build third time"
75 build_deshader
76 fi
77 fi
78 if ! build_launcher; then # must be ran twice to fix the C import
79 sh fix_c_import.sh
80 echo "Retrying launcher build"
81 if ! build_launcher; then # maybe three times
82 sh fix_c_import.sh
83 echo "Retrying launcher build third time"
84 build_launcher
85 fi
86 fi
87}
88
89check() {
90 pass=false
91 if [[ "$OSTYPE" == darwin* ]]; then
92 LIBEXT=dylib
93 else
94 LIBEXT=so
95 fi
96 output=`DESHADER_LIB="$srcdir/${pkgname%-git}/zig-out/lib/libdeshader.$LIBEXT" "$srcdir/${pkgname%-git}/zig-out/bin/deshader-run" --version`
97 for line in $output
98 do
99 if [ "$pkgver" == "$line" ] || [ $pkgver == "r$line" ]; then
100 pass=true
101 echo "Built $pkgver matches"
102 break
103 fi
104 done
105 if ! $pass; then
106 echo "Version $pkgver does not match $output"
107 exit 1
108 fi
109}
110
111prepare() {
112 export PATH="$srcdir/dep/bin:$srcdir/vcpkg:$PATH"
113 export ZIG_GLOBAL_CACHE_DIR="$srcdir/dep/.zig-cache"
114 export VCPKG_DEFAULT_BINARY_CACHE_DIR="$srcdir/dep/.vcpkg-cache"
115 export VCPKG_DISABLE_METRICS=1
116
117 # get the submodules
118 cd "$srcdir/${pkgname%-git}" || exit 1
119
120 git submodule update --init --recursive
121
122 cd "$srcdir" || exit 1
123 # check for bun in the path
124 if ! command -v bun; then
125 # download bun
126 curl -fsSL https://bun.sh/install | BUN_INSTALL="$srcdir/dep" bash
127 fi
128
129 # check for VCPKG
130 if ! command -v vcpkg; then
131 # check for downloaded VCPKG repository
132 if [ -d "$srcdir/vcpkg" ]; then
133 # check if it is a git repository
134 if [ -d "$srcdir/vcpkg/.git" ]; then
135 # update VCPKG
136 cd "$srcdir/vcpkg" || exit 1
137 git pull
138 else
139 # remove the directory
140 rm -rf "$srcdir/vcpkg"
141 fi
142
143 else
144 # download VCPKG
145 git clone https://github.com/microsoft/vcpkg.git
146 fi
147 cd "$srcdir/vcpkg" || exit 1
148 chmod +x ./bootstrap-vcpkg.sh
149 ./bootstrap-vcpkg.sh
150 fi
151}
152
153package() {
154 install -d "${pkgdir}/usr/bin"
155 install -d "${pkgdir}/usr/lib"
156 install -d "${pkgdir}/usr/share/applications"
157 install -d "${pkgdir}/usr/share/icons/hicolor/48x48/apps"
158 install -d "${pkgdir}/usr/share/icons/hicolor/256x256/apps"
159 install -d "${pkgdir}/usr/share/icons/hicolor/scalable/apps"
160
161 install -m755 "$srcdir/${pkgname%-git}/zig-out/bin/deshader-run" "$pkgdir/usr/bin/deshader-run"
162 install -m755 "$srcdir/${pkgname%-git}/zig-out/lib/libdeshader.so" "$pkgdir/usr/lib/libdeshader.so"
163
164 #install headers
165 install -d "${pkgdir}/usr/include/deshader"
166 for h in "$srcdir/${pkgname%-git}/zig-out/include/deshader/"*; do
167 install -m644 "$h" "$pkgdir/usr/include/deshader/"
168 done
169
170 #install desktop file and icons
171 install -m644 "$srcdir/deshader.desktop" "$pkgdir/usr/share/applications/deshader.desktop"
172 install -m644 "$srcdir/48.png" "$pkgdir/usr/share/icons/hicolor/48x48/apps/deshader.png"
173 install -m644 "$srcdir/256.png" "$pkgdir/usr/share/icons/hicolor/256x256/apps/deshader.png"
174 install -m644 "$srcdir/scalable.svg" "$pkgdir/usr/share/icons/hicolor/scalable/apps/deshader.svg"
175}
176

Scan history

Scanned at (UTC)SeverityRules
2026-08-03 00:08:14 LOW 2
2026-08-02 00:16:08 LOW 2
2026-08-01 00:11:18 LOW 2
2026-07-31 00:14:10 LOW 2
2026-07-30 00:17:23 LOW 2
2026-07-29 00:25:53 LOW 2
2026-07-28 00:07:28 LOW 2
2026-07-27 00:24:32 LOW 2
2026-07-26 00:07:32 LOW 2
2026-07-25 00:13:44 LOW 2
2026-07-24 00:02:28 LOW 2
2026-07-23 00:14:47 LOW 2
2026-07-22 00:29:32 LOW 2
2026-07-21 00:24:15 LOW 2
2026-07-20 00:19:49 LOW 2
2026-07-19 00:17:08 LOW 2
2026-07-18 00:14:48 LOW 2
2026-07-17 00:06:16 LOW 2
2026-07-16 00:05:41 LOW 2
2026-07-15 00:09:25 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