qemu-3dfx

maintainer kharovtobi · 0 votes · scanned 2026-08-03 00:08:14.047287
LOW
View on AUR ↗
Why flagged The source uses a non-whitelisted host (download.qemu.org) for the QEMU tarball, but this is the official upstream release site; the package builds from verifiable source and the checksum is provided, so the risk is low despite the analyzer flag.

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 source uses a non-whitelisted host (download.qemu.org) for the QEMU tarball, but this is the official upstream release site; the package builds from verifiable source and the checksum is provided, so the risk is low despite the analyzer flag.

1 higher static finding superseded - not the current verdict (shown for transparency)
MEDIUM source=() URL on a non-standard host source_untrusted_domain

One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).

  • PKGBUILD:103 "https://download.qemu.org/qemu-${_pkgver}.tar.xz"

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: kharovtobi <tugboat_khatov at outlook dot com>
2
3pkgname=qemu-3dfx
4_pkgver=9.2.2
5pkgver=9.2.2.r466.a2d25b3
6pkgrel=1
7pkgdesc="MESA GL/3Dfx Glide pass-through for QEMU"
8arch=('x86_64')
9url="https://github.com/kjliew/qemu-3dfx"
10license=('GPL-2.0')
11depends=('qemu-base' 'seabios')
12makedepends=(
13 "alsa-lib"
14 "brltty"
15 "bzip2"
16 "cairo"
17 "capstone"
18 "cdrtools"
19 "coreutils"
20 "curl"
21 "djgpp-binutils"
22 "djgpp-djcrx"
23 "djgpp-gcc"
24 "dos2unix"
25 "dtc"
26 "fuse3"
27 "gcc-libs"
28 "gdk-pixbuf2"
29 "git"
30 "glib2"
31 "glibc"
32 "glib2-devel"
33 "glusterfs"
34 "gnutls"
35 "gtk3"
36 "jack"
37 "keyutils"
38 "libaio"
39 "libbpf"
40 "libcacard"
41 "libcap-ng"
42 "libepoxy"
43 "libiscsi"
44 "libnfs"
45 "libpipewire"
46 "libpng"
47 "libpulse"
48 "libsasl"
49 "libseccomp"
50 "libslirp"
51 "libssh"
52 "liburing"
53 "libusb"
54 "libx11"
55 "libxdp"
56 "libxkbcommon"
57 "libxml2"
58 "lzo"
59 "mesa"
60 "meson"
61 "multipath-tools"
62 "mingw-w64-binutils"
63 "mingw-w64-gcc"
64 "mingw-w64-tools"
65 "ncurses"
66 "ninja"
67 "ndctl"
68 "openwatcom-v2"
69 "numactl"
70 "patch"
71 "pam"
72 "pcre2"
73 "python"
74 "python-setuptools"
75 "python-distlib"
76 "python-pip"
77 "python-sphinx"
78 "python-sphinx_rtd_theme"
79 "pixman"
80 "rsync"
81 "sdl2"
82 "sdl2_image"
83 "snappy"
84 "spice"
85 "spice-protocol"
86 "systemd"
87 "usbredir"
88 "vde2"
89 "virglrenderer"
90 "vte3"
91 "xxd"
92 "zlib"
93 "zstd"
94)
95optdepends=(
96 "qemu-docs: for documentation and learning invocation"
97 "openglide-3dfx: for host openglide support"
98)
99provides=('qemu-3dfx')
100conflicts=('qemu-3dfx')
101source=(
102 "git+https://github.com/kjliew/qemu-3dfx.git"
103 "https://download.qemu.org/qemu-${_pkgver}.tar.xz"
104 "${pkgname}.install"
105)
106noextract=("qemu-${_pkgver}.tar.xz")
107sha256sums=(
108 'SKIP'
109 '752eaeeb772923a73d536b231e05bcc09c9b1f51690a41ad9973d900e4ec9fbf'
110 'b94ec59a18f2fc8c0eda31860d2eeed2bf92fe66db773b917de311dece796bf0'
111)
112install=${pkgname}.install
113
114pkgver() {
115 cd "$srcdir"/"$pkgname"
116 echo ${_pkgver}.r$(git rev-list --count HEAD).$(git rev-parse --short=7 HEAD)
117}
118
119prepare() {
120 cd "$srcdir"/
121 tar xf qemu-${_pkgver}.tar.xz -C "$pkgname"
122 cd "$pkgname"/qemu-${_pkgver}
123 rsync -r ../qemu-0/hw/3dfx ../qemu-1/hw/mesa ./hw/
124
125 # Change patch per major release
126 patch -p0 -i ../00-qemu92x-mesa-glide.patch
127
128 bash ../scripts/sign_commit
129 rm -rf "$srcdir"/"$pkgname"/build
130 mkdir -p "$srcdir"/"$pkgname"/build
131}
132
133build() {
134 # Build QEMU
135 cd "$srcdir"/"$pkgname"/build
136 ../qemu-${_pkgver}/configure --target-list="i386-softmmu" --prefix=/usr --disable-xen --extra-cflags="-march=native -mtune=native -O3 -flto=auto"
137 make clean
138 make qemu-system-i386
139
140 # Build Wrappers
141 source /opt/watcom/owsetenv.sh
142 cd ../wrappers/3dfx
143 rm -rf build && mkdir build && cd build
144 bash ../../../scripts/conf_wrapper
145 sed -i 's/^DXEGEN=dxe3gen$/DXEGEN=i686-pc-msdosdjgpp-dxe3gen/' ../dxe/Makefile
146 sed -i '/CFLAGS=/s/-mfpmath=sse /-mfpmath=sse -msse2 /' Makefile
147 make && make clean
148 cd ../../mesa
149 rm -rf build && mkdir build && cd build
150 bash ../../../scripts/conf_wrapper
151
152 # Add wglinfo.exe to makefile (and fix sse2 problem)
153 sed -i 's/^TOOLS=$/TOOLS=wglinfo.exe/' Makefile
154 sed -i '/CFLAGS=/s/-mfpmath=sse /-mfpmath=sse -msse2 /' Makefile
155 make && make clean
156
157 # Package Wrappers
158 cd ../../
159 rm -rf iso && mkdir iso && cd iso
160 mkdir wrapfx wrapgl
161 cp -rf ../3dfx/build/*.{vxd,sys,dll,dxe,ovl,exe} ./wrapfx/
162 cp -rf ../mesa/build/*.{dll,exe} ./wrapgl/
163 cp ../../LICENSE license.txt
164 echo ${pkgver} > commit\ id.txt
165 unix2dos commit\ id.txt license.txt
166 mkisofs -JR -V "VMWRAPPER-$(git log --format="%h" -n 1)" -o ../wrappers.iso ../iso
167}
168
169package() {
170 install -Dm644 "$srcdir"/"$pkgname"/LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
171 install -Dm644 "$srcdir"/"$pkgname"/wrappers/wrappers.iso "$pkgdir"/usr/share/"$pkgname"/wrappers.iso
172 install -Dm755 "$srcdir"/"$pkgname"/build/qemu-system-i386 "$pkgdir"/usr/bin/qemu-3dfx-system-i386
173 mkdir -p "$pkgdir"/usr/share/man/man1/
174 ln -sf /usr/share/man/man1/qemu.1.gz "$pkgdir"/usr/share/man/man1/qemu-3dfx-system-i386.1.gz
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