linuxvr-viewshot

LOW
maintainer yakuda 0 votes scanned 2026-09-27 19:19:18.915602
View on AUR
Why flagged

Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.

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.

PKGBUILD

1# Maintainer: yakuda <yakuda@outlook.de>
2pkgname=linuxvr-viewshot
3pkgver=0.4.1
4pkgrel=1
5pkgdesc="Take photos in VR with a hand-frame gesture on Linux (WiVRn / Monado) - OpenXR API layer + desktop app"
6# Der OpenXR-Layer ist eine native .so (Rust) -> nicht 'any'
7arch=('x86_64')
8url="https://github.com/yakuda-stack/LinuxVR-ViewShot"
9license=('GPL-3.0-or-later')
10# Laufzeit: der Layer braucht libvulkan (dlopen), die App PyQt6.
11# xcb-util-cursor & Co: Qt >= 6.5 braucht sie fuer das xcb-Plugin (X11/XWayland).
12# python-setproctitle: Name "LinuxVR-ViewShot" im Taskmanager (ginge auch ohne).
13depends=('glibc' 'gcc-libs' 'vulkan-icd-loader'
14 'python' 'python-pyqt6' 'python-setproctitle'
15 'xcb-util-cursor' 'xcb-util-wm' 'xcb-util-image' 'xcb-util-keysyms'
16 'xcb-util-renderutil' 'libxkbcommon-x11')
17makedepends=('cargo')
18optdepends=('python-opencv: QR code detection in photos'
19 'python-onnxruntime-cpu: text recognition for the translation (plus "pip install --user rapidocr")'
20 'wayvr: open the app from the WayVR watch (Options -> General)'
21 'glib2: move deleted photos to the trash via gio (fallback)')
22# Git-Tag darf einen Bindestrich haben (v0.5.0-alpha), pkgver nicht
23_tag="v${pkgver/_/-}"
24source=("${pkgname}-${pkgver}.tar.gz::${url}/archive/refs/tags/${_tag}.tar.gz")
25sha256sums=('150b079f165ff61cc8611beede785169115ce0a418eba3abebeca4d242e70145')
26
27_srcdir() { echo "LinuxVR-ViewShot-${_tag#v}"; }
28
29prepare() {
30 cd "$(_srcdir)"
31 export RUSTUP_TOOLCHAIN=stable
32 cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
33}
34
35build() {
36 cd "$(_srcdir)"
37 export RUSTUP_TOOLCHAIN=stable
38 export CARGO_TARGET_DIR=target
39 cargo build --frozen --release
40}
41
42check() {
43 cd "$(_srcdir)"
44 export RUSTUP_TOOLCHAIN=stable
45 export CARGO_TARGET_DIR=target
46 cargo test --frozen --release
47}
48
49package() {
50 cd "$(_srcdir)"
51
52 # OpenXR-Layer + systemweites Manifest (gilt fuer alle Benutzer)
53 local lib="/usr/lib/${pkgname}/liblinuxvr_viewshot_layer.so"
54 install -Dm755 target/release/liblinuxvr_viewshot_layer.so "${pkgdir}${lib}"
55 install -dm755 "${pkgdir}/usr/share/openxr/1/api_layers/implicit.d"
56 sed "s|@LIBRARY_PATH@|${lib}|" manifest/linuxvr_viewshot.json.in \
57 > "${pkgdir}/usr/share/openxr/1/api_layers/implicit.d/linuxvr_viewshot.json"
58
59 # App nach /usr/share/linuxvr-viewshot/UI (Struktur bleibt, core/paths.py
60 # findet Icon & Co. relativ zu sich selbst). Ohne scripts/ erkennt die App,
61 # dass sie aus einem Paket kommt, und blendet "Neu bauen/Entfernen" aus.
62 local app="${pkgdir}/usr/share/${pkgname}/UI"
63 install -Dm644 UI/main.py "${app}/main.py"
64 install -Dm644 UI/starter.py "${app}/starter.py"
65 install -Dm755 UI/start.sh "${app}/start.sh"
66 cp -r UI/core UI/ui UI/assets "${app}/"
67 find "${app}" -name '__pycache__' -type d -exec rm -rf {} + 2>/dev/null || true
68
69 # Launcher (voller Pfad zu starter.py = Platz fuer den Prozessnamen)
70 install -dm755 "${pkgdir}/usr/bin"
71 cat > "${pkgdir}/usr/bin/${pkgname}" << 'LAUNCH'
72#!/usr/bin/env bash
73exec python3 /usr/share/linuxvr-viewshot/UI/starter.py "$@"
74LAUNCH
75 chmod 755 "${pkgdir}/usr/bin/${pkgname}"
76
77 # Desktop-Eintrag + Icon
78 sed "s|@START@|${pkgname}|" packaging/${pkgname}.desktop.in > "${srcdir}/${pkgname}.desktop"
79 install -Dm644 "${srcdir}/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop"
80 install -Dm644 UI/assets/${pkgname}.png "${pkgdir}/usr/share/icons/hicolor/512x512/apps/${pkgname}.png"
81
82 # Lizenz + Doku
83 install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
84 install -Dm644 README.md "${pkgdir}/usr/share/doc/${pkgname}/README.md"
85 install -Dm644 CHANGELOG.md "${pkgdir}/usr/share/doc/${pkgname}/CHANGELOG.md"
86}
87

Scan history

Scanned at (UTC)SeverityRules
2026-09-27 19:19:18 Low 1

Report a package

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

0 / 4000
Your suggestion