libfprint-betterlife-347d-git

LOW
maintainer arqueon 0 votes scanned 2026-10-30 17:56:37.877434
View on AUR
Why flagged

The package builds from source using git repositories linked to the maintainer's own projects, with no remote code execution or untrusted prebuilt binaries; skipped checksums are a quality issue but do not introduce significant risk as the sources are plausibly legitimate and the build process is transparent.

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%): The package builds from source using git repositories linked to the maintainer's own projects, with no remote code execution or untrusted prebuilt binaries; skipped checksums are a quality issue but do not introduce significant risk as the sources are plausibly legitimate and the build process is transparent.

PKGBUILD

1# Maintainer: arqueon <66568719+arqueon@users.noreply.github.com>
2pkgname=libfprint-betterlife-347d-git
3pkgver=1.94.10.r1.g1b644d7
4pkgrel=1
5pkgdesc="libfprint-2 with native Blestech Betterlife 347d:0302 (MOC) and 347d:0304 (MOH) USB fingerprint sensor support"
6arch=('x86_64' 'aarch64')
7url="https://github.com/arqueon/betterlife-347d-libfprint"
8license=('LGPL-2.1-or-later')
9groups=('fprint')
10depends=(
11 'glib2'
12 'glibc'
13 'libgcc'
14 'libgudev'
15 'libgusb'
16 'libusb'
17 'opencv'
18 'openssl'
19 'pixman'
20)
21optdepends=(
22 'fprintd: D-Bus daemon and PAM module for fingerprint authentication'
23 'python-gobject: for betterlife-fprintd multi-reader enrollment and PAM status CLI'
24)
25makedepends=(
26 'cmake'
27 'git'
28 'glib2-devel'
29 'meson'
30 'ninja'
31 'pkgconf'
32)
33provides=(
34 "libfprint=${pkgver}"
35 'libfprint-2.so'
36 'libfprint-betterlife-347d'
37 'libfprint-cs9711'
38)
39conflicts=(
40 'libfprint'
41 'libfprint-cs9711-rebase-git'
42)
43source=(
44 'libfprint-CS9711::git+https://github.com/archeYR/libfprint-CS9711.git#branch=cs9711-rebase'
45 'betterlife-347d-libfprint::git+https://github.com/arqueon/betterlife-347d-libfprint.git'
46)
47sha256sums=(
48 'SKIP'
49 'SKIP'
50)
51
52pkgver() {
53 cd "${srcdir}/libfprint-CS9711"
54 local _base _rev _hash
55 _base="$(meson introspect --projectinfo meson.build 2>/dev/null | sed -n 's/.*"version": *"\([^"]*\)".*/\1/p')"
56 [[ -z "${_base}" ]] && _base="1.94.10"
57 cd "${srcdir}/betterlife-347d-libfprint"
58 _rev="$(git rev-list --count HEAD)"
59 _hash="$(git rev-parse --short=7 HEAD)"
60 printf '%s.r%s.g%s' "${_base}" "${_rev}" "${_hash}"
61}
62
63prepare() {
64 cd "${srcdir}/libfprint-CS9711"
65 git checkout -- .
66 patch -Np1 -i "${srcdir}/betterlife-347d-libfprint/patches/0001-betterlife347d-cs9711.patch"
67 for _f in betterlife347d_moc.c betterlife347d.c betterlife347d-proto.c betterlife347d-proto.h sm3.c sm3.h sm4.c sm4.h; do
68 install -Dm644 "${srcdir}/betterlife-347d-libfprint/drivers/betterlife347d/${_f}" \
69 "libfprint/drivers/betterlife347d/${_f}"
70 done
71}
72
73build() {
74 local _gir_opt="-Dintrospection=false"
75 if [[ -x /usr/bin/g-ir-scanner ]]; then
76 _gir_opt="-Dintrospection=true"
77 fi
78
79 arch-meson "${srcdir}/libfprint-CS9711" build \
80 "${_gir_opt}" \
81 -Dudev_hwdb=enabled \
82 -Dinstalled-tests=false \
83 -Ddoc=false \
84 -Dgtk-examples=false
85
86 meson compile -C build
87
88 local _drvdir="${srcdir}/betterlife-347d-libfprint/drivers/betterlife347d"
89 # shellcheck disable=SC2046,SC2086
90 cc ${CFLAGS} ${CPPFLAGS} -O2 -Wall -Wextra -I"${_drvdir}" \
91 "${srcdir}/betterlife-347d-libfprint/tools/betterlife347d-probe.c" \
92 "${_drvdir}/betterlife347d-proto.c" \
93 "${_drvdir}/sm3.c" \
94 "${_drvdir}/sm4.c" \
95 -o "${srcdir}/betterlife347d-probe" \
96 $(pkg-config --cflags --libs glib-2.0 libusb-1.0 openssl) ${LDFLAGS}
97}
98
99check() {
100 meson test -C build --suite unit-tests --print-errorlogs
101 ./build/libfprint/fprint-list-supported-devices | grep -q "347d:0302"
102 ./build/libfprint/fprint-list-supported-devices | grep -q "347d:0304"
103}
104
105package() {
106 meson install -C build --destdir "${pkgdir}"
107 install -Dm755 "${srcdir}/betterlife347d-probe" \
108 "${pkgdir}/usr/bin/betterlife347d-probe"
109 install -Dm755 "${srcdir}/betterlife-347d-libfprint/tools/fprintd-multi" \
110 "${pkgdir}/usr/bin/fprintd-multi"
111 ln -s fprintd-multi "${pkgdir}/usr/bin/betterlife-fprintd"
112 install -Dm644 "${srcdir}/betterlife-347d-libfprint/udev/70-betterlife-347d-libfprint.rules" \
113 "${pkgdir}/usr/lib/udev/rules.d/70-betterlife-347d-libfprint.rules"
114}
115

Scan history

Scanned at (UTC)SeverityRules
2026-10-30 17:56:37 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