waydroid-a17-nvidia-bin

LOW
maintainer cagedbird043 0 votes scanned 2026-10-24 13:40:12.894744
View on AUR
Why flagged

Package builds from source code hosted on GitHub repositories, applies patches, and bundles prebuilt components from the same trusted upstream; no evidence of malicious payloads or remote code execution, and the flagged low votes and recent upload are mitigated by transparent source and build process.

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 source code hosted on GitHub repositories, applies patches, and bundles prebuilt components from the same trusted upstream; no evidence of malicious payloads or remote code execution, and the flagged low votes and recent upload are mitigated by transparent source and build process.

PKGBUILD

1# Maintainer: cagedbird043 <cagedbird043@gmail.com>
2# waydroid-a17-nvidia-bin — Waydroid for Android 17 (WayDroid-ATV LineageOS 24.0) on NVIDIA GPUs.
3#
4# Ships the host side of waydroid-nvidia (Shiro836/waydroid-nvidia v0.2.0-rc10) with the patches of
5# https://github.com/cagedbird043/waydroid-a17-nvidia (A17 vendor support, KernelSU seccomp, hwcomposer
6# clipboard, host folder sharing), the nvidia-prolapse vendor image built from that repository
7# (NVK + ANGLE, NVDEC, freeform cards, host IME), the native bundle it was built against (rc10 with a
8# dual-queue NVK) and a KWin script that reopens cards where they were closed.
9# The Android system image is not included: waydroid-nvidia-setup downloads it (see post_install).
10
11pkgname=waydroid-a17-nvidia-bin
12pkgver=20261024.4
13pkgrel=1
14_tag=a17-20261024-4
15_wn_sha=29ffa3a237b0d79a751748bd9bb82c50dd577808 # waydroid-nvidia v0.2.0-rc10 release notes commit
16_wn_tag=v0.2.0-rc10
17_waydroid_sha=a33a5c0b31d89d6ce687381104b30aff4dd2d330
18pkgdesc="Waydroid for Android 17 (WayDroid-ATV) with NVIDIA acceleration: NVK + ANGLE vendor image, freeform cards, host IME and clipboard"
19arch=('x86_64')
20url="https://github.com/cagedbird043/waydroid-a17-nvidia"
21license=('GPL-3.0-or-later' 'Apache-2.0' 'MIT')
22depends=(
23 # waydroid runtime (matches extra/waydroid)
24 'lxc' 'python' 'python-gbinder>=1.3.0' 'python-gobject' 'nftables' 'dnsmasq'
25 'gtk3' 'python-dbus' 'pulse-native-provider'
26 'binutils' # readelf: the setup checks guest ABI and SONAMEs
27 'e2fsprogs' # debugfs: the release gate reads the bionic runtime from system.img
28 'util-linux' # unshare (gate), mount idmap (shared folders)
29 # host Venus renderer (venus driver mode)
30 'libepoxy' 'libdrm' 'mesa' 'libx11' 'expat' 'vulkan-icd-loader'
31)
32makedepends=('zstd')
33optdepends=(
34 'nvidia-open: the NVIDIA open kernel module the vendor image runs on'
35 'kernelsu-dkms: root in the container (see the repository kernelsu/README.md)'
36)
37provides=('waydroid')
38conflicts=('waydroid' 'waydroid-nvidia-bin')
39options=('!strip' '!debug')
40install=waydroid-a17-nvidia.install
41_wn_rel=https://github.com/Shiro836/waydroid-nvidia/releases/download/$_wn_tag
42_rel=$url/releases/download/$_tag
43source=(
44 "waydroid-nvidia-$_wn_sha.tar.gz::https://github.com/Shiro836/waydroid-nvidia/archive/$_wn_sha.tar.gz"
45 "waydroid-a17-nvidia-$_tag.tar.gz::$url/archive/refs/tags/$_tag.tar.gz"
46 "waydroid-$_waydroid_sha.tar.gz::https://github.com/waydroid/waydroid/archive/$_waydroid_sha.tar.gz"
47 "$_wn_rel/waydroid-nvidia-host-x86_64-$_wn_tag.tar.zst"
48 "$_wn_rel/waydroid-nvidia-guest-android-x86_64-$_wn_tag.tar.zst"
49 "$_wn_rel/waydroid-nvidia-guest-prebuilts-$_wn_tag.tar.zst"
50 "waydroid-a17-nvidia-native-x86_64-$_tag.tar.zst::$_rel/waydroid-a17-nvidia-native-x86_64.tar.zst"
51 "vendor-$_tag.img.zst.part00::$_rel/vendor.img.zst.part00"
52 "vendor-$_tag.img.zst.part01::$_rel/vendor.img.zst.part01"
53 "vendor-$_tag.img.zst.part02::$_rel/vendor.img.zst.part02"
54 "vendor-$_tag.img.zst.part03::$_rel/vendor.img.zst.part03"
55 "vendor-$_tag.img.zst.part04::$_rel/vendor.img.zst.part04"
56)
57noextract=(
58 "waydroid-nvidia-host-x86_64-$_wn_tag.tar.zst"
59 "waydroid-nvidia-guest-android-x86_64-$_wn_tag.tar.zst"
60 "waydroid-nvidia-guest-prebuilts-$_wn_tag.tar.zst"
61 "waydroid-a17-nvidia-native-x86_64-$_tag.tar.zst"
62)
63sha256sums=('4dc67241bf35189d4490306611f7f52e49117d04511a60999e96328f010dd84f'
64 '83409e32bad61942b59c7b697853e0b8e3f977d946468aa2c03bdfa129c9b27b'
65 'e7817beac7e26f7d54b2d9f49c847dab8e137c92e403825829e7abbd0b63c411'
66 '124106f95e1b35c75eed8a966ab66284760fd6d02c79ad9fadd88355d4e3a2d7'
67 '5fa325de02c2ef9c13f972efba98e27cdf4d2d48c0a33cf9a884ade8eaa74c50'
68 '3fe5822ca2b9ed3aa6fcd9c9627679a04592837b947d7754911c3ab4c1007ec2'
69 '6494c5558637acf291486bc3a578a67e9af478afa68f3b213fa8fbc62039b103'
70 'e3b831072fd231aff930a72e72cf11ec61d210a8badebcd8b1199abbf0d96d0a'
71 'daa7d3be8209ae087e66625cf3dd79474185d2f914688a015e89b262def2f6d2'
72 '25395f1abb41b1e81c7a4f2b1a49d767cc2f8f4acc31ee1f9fced492ad8796b7'
73 'abeaf813ef4d140dd519ee1423cd450249fc129a6c9822128465f4310608329b'
74 '02af76ee40021611e111179489c8b415b3f08ff56fd03f3a514fe65a059d4945')
75
76prepare() {
77 local wn="$srcdir/waydroid-nvidia-$_wn_sha" a17="$srcdir/waydroid-a17-nvidia-$_tag" p
78 for p in "$a17"/patches/waydroid-nvidia/*.patch; do
79 patch -s -d "$wn" -p1 < "$p"
80 done
81
82 cd "$srcdir/waydroid-$_waydroid_sha"
83 patch -s -p1 < "$wn/patches/waydroid/0001-nvidia-integration.patch"
84 for p in "$wn"/waydroid/000[1-9]-*.patch; do
85 patch -s -p1 < "$p"
86 done
87 cmp "$wn/waydroid/nvidia_native.py" tools/helpers/nvidia_native.py
88
89 cd "$srcdir"
90 mkdir -p host guest
91 bsdtar -C host -xf "waydroid-nvidia-host-x86_64-$_wn_tag.tar.zst"
92 bsdtar -C guest -xf "waydroid-nvidia-guest-android-x86_64-$_wn_tag.tar.zst"
93 bsdtar -C guest -xf "waydroid-nvidia-guest-prebuilts-$_wn_tag.tar.zst"
94}
95
96build() {
97 cd "$srcdir"
98 # the native bundle the vendor image names in ro.vendor.nvidia_prolapse.build_record
99 rm -rf native && mkdir native
100 bsdtar -C native -xf "waydroid-a17-nvidia-native-x86_64-$_tag.tar.zst"
101 cat vendor-$_tag.img.zst.part0[0-4] | zstd -dq -o vendor.img -f
102 rm -rf vendor-ota && mkdir vendor-ota
103 python "waydroid-nvidia-$_wn_sha/packaging/vendor-ota.py" vendor.img native/BUILD-RECORD.json vendor-ota \
104 --tag "$_wn_tag-a17" --repo cagedbird043/waydroid-a17-nvidia
105 rm -f vendor.img
106}
107
108package() {
109 local wn="$srcdir/waydroid-nvidia-$_wn_sha" aur="$srcdir/waydroid-nvidia-$_wn_sha/packaging/aur/waydroid-nvidia-bin"
110
111 # 1. patched waydroid (same layout as extra/waydroid)
112 make -C "waydroid-$_waydroid_sha" install DESTDIR="$pkgdir" USE_NFTABLES=1
113 # the system interpreter, which has the dbus/gobject/gbinder bindings: `env python3` follows the
114 # caller's PATH (pyenv, conda, linuxbrew) and waydroid then fails on `import dbus`
115 sed -i '1s|^#!.*python3.*$|#!/usr/bin/python3|' "$pkgdir/usr/lib/waydroid/waydroid.py"
116
117 # 2. host Venus renderer (private libdir; unit sets LD_LIBRARY_PATH)
118 install -Dm755 host/virgl_test_server host/virgl_render_server host/libvirglrenderer.so.1 \
119 -t "$pkgdir/usr/lib/waydroid-nvidia"
120
121 # 3. guest stack of the venus mode, Android-relative paths kept
122 local rel
123 for rel in vendor/lib/hw/vulkan.virtio.so vendor/lib/egl/libEGL_angle.so vendor/lib/egl/libGLESv1_CM_angle.so \
124 vendor/lib/egl/libGLESv2_angle.so vendor/lib64/hw/vulkan.virtio.so vendor/lib64/egl/libEGL_angle.so \
125 vendor/lib64/egl/libGLESv1_CM_angle.so vendor/lib64/egl/libGLESv2_angle.so \
126 vendor/lib64/libgbm_mesa_wrapper.so vendor/lib64/hw/hwcomposer.waydroid.so; do
127 install -Dm644 "guest/$rel" "$pkgdir/usr/lib/waydroid-nvidia/guest/$rel"
128 done
129 install -Dm755 guest/system/bin/surfaceflinger "$pkgdir/usr/lib/waydroid-nvidia/guest/system/bin/surfaceflinger"
130
131 # 4. nvidia-prolapse: vendor image, the native bundle it was built against, gate/install tools
132 bash "$wn/packaging/native/install-native.sh" "$wn" "$srcdir/waydroid-a17-nvidia-native-x86_64-$_tag.tar.zst" \
133 vendor-ota/waydroid-nvidia-vendor-x86_64-$_wn_tag-a17.zip vendor-ota/waydroid-nvidia-vendor-ota-$_wn_tag-a17.json \
134 "$pkgdir" "$_wn_tag"
135 install -Dm644 "$aur/waydroid-nvidia-driver.hook" "$pkgdir/usr/share/libalpm/hooks/90-waydroid-nvidia-driver.hook"
136 install -Dm755 "$aur/driver-update-note" "$pkgdir/usr/lib/waydroid-nvidia/driver-update-note"
137
138 # 5. host integration
139 install -Dm644 "$aur/wd-venus.service" "$pkgdir/usr/lib/systemd/user/wd-venus.service"
140 install -Dm644 "$aur/waydroid-venus.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/waydroid-venus.conf"
141 install -Dm755 "$aur/waydroid-nvidia-setup" "$pkgdir/usr/bin/waydroid-nvidia-setup"
142 install -Dm644 "$aur/waydroid-nvidia.rules" "$pkgdir/usr/lib/udev/rules.d/70-waydroid-nvidia.rules"
143 install -Dm644 "$aur/waydroid-nvidia-gpu.rules" "$pkgdir/usr/lib/udev/rules.d/70-waydroid-nvidia-gpu.rules"
144
145 # 6. KWin script: cards reopen where they were closed (enable in System Settings > Window Management > KWin Scripts)
146 install -d "$pkgdir/usr/share/kwin/scripts"
147 cp -r --no-preserve=ownership,mode "waydroid-a17-nvidia-$_tag/host/kwin-waydroid-placement" \
148 "$pkgdir/usr/share/kwin/scripts/waydroid-placement"
149}
150

Scan history

Scanned at (UTC)SeverityRules
2026-10-24 13:40:12 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