wallpaperd-bin

LOW
maintainer wenmou 0 votes scanned 2026-10-06 18:03:40.155073
View on AUR
Why flagged

The package is a binary release from GitHub with a verifiable checksum, but has few votes and was recently uploaded, which is common for new AUR packages; it does not execute untrusted remote code or exhibit malicious behavior.

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 95%): The package is a binary release from GitHub with a verifiable checksum, but has few votes and was recently uploaded, which is common for new AUR packages; it does not execute untrusted remote code or exhibit malicious behavior.

PKGBUILD

1# shellcheck shell=bash
2# shellcheck disable=SC2034,SC2154
3pkgname=wallpaperd-bin
4pkgver=0.1.0
5pkgrel=1
6pkgdesc='Session wallpaper daemon with image, video, shader and Wallpaper Engine backends'
7arch=('x86_64')
8url='https://github.com/mengdehong/Misari'
9license=('GPL-3.0-or-later' 'BSD-3-Clause' 'LicenseRef-Chromium')
10depends=(
11 'alsa-lib' 'at-spi2-core' 'cairo' 'dbus' 'expat' 'glib2' 'glibc'
12 'libcups' 'libgcc' 'libglvnd' 'libpulse' 'libstdc++' 'libx11' 'libxcb'
13 'libxcomposite' 'libxdamage' 'libxext' 'libxfixes' 'libxkbcommon' 'libxrandr'
14 'mesa' 'mpv' 'nspr' 'nss' 'pango' 'shaderc' 'systemd-libs' 'wayland'
15 'pulse-native-provider' 'ttf-font'
16 # These libraries are loaded at runtime and are absent from ELF NEEDED entries.
17 'libmpv.so=2-64' 'libEGL.so=1-64' 'libGLESv2.so=2-64'
18)
19provides=("wallpaperd=$pkgver")
20conflicts=('wallpaperd')
21makedepends=('python')
22options=('!debug' '!strip')
23source=("https://github.com/mengdehong/Misari/releases/download/wallpaperd-v0.1.0/wallpaperd-0.1.0-1-x86_64.pkg.tar.zst")
24sha256sums=('9f5c705e64e7876b1228801630786fe774b0d60da838b1712782075fa850030a')
25
26_check_runtime() {
27 python - "$@" <<'PY'
28import ctypes
29import os
30from pathlib import Path
31import subprocess
32import sys
33
34binary, runtime = (Path(arg).resolve() for arg in sys.argv[1:])
35for name in (
36 "libcef.so", "libvk_swiftshader.so", "libvulkan.so.1",
37 "chrome_100_percent.pak", "chrome_200_percent.pak", "resources.pak",
38 "icudtl.dat", "v8_context_snapshot.bin", "vk_swiftshader_icd.json",
39 "chrome-sandbox", "locales/en-US.pak", "LICENSE.txt", "CREDITS.html",
40):
41 if not (runtime / name).is_file():
42 sys.exit(f"missing CEF runtime file: {runtime / name}")
43
44mpv = ctypes.CDLL("libmpv.so.2")
45mpv.mpv_client_api_version.argtypes = []
46mpv.mpv_client_api_version.restype = ctypes.c_ulonglong
47version = mpv.mpv_client_api_version()
48if version >> 16 != 2:
49 sys.exit(f"libmpv client API must be 2.x, found {version >> 16}.{version & 0xffff}")
50for library, symbol in (
51 ("libEGL.so.1", "eglGetProcAddress"),
52 ("libGLESv2.so.2", "glGetString"),
53 ("libpulse.so.0", "pa_get_library_version"),
54 ("libpulse-simple.so.0", "pa_simple_new"),
55):
56 getattr(ctypes.CDLL(library), symbol)
57
58env = os.environ.copy()
59env.pop("LD_LIBRARY_PATH", None)
60env.pop("LD_PRELOAD", None)
61for path in (binary, runtime / "libcef.so"):
62 linked = subprocess.run(
63 ["ldd", str(path)], env=env, check=True, capture_output=True, text=True,
64 ).stdout
65 if "not found" in linked:
66 sys.exit(f"unresolved runtime dependencies for {path}:\n{linked}")
67# CEF is loaded with dlopen on demand, so it has no ELF NEEDED entry.
68# Match the runtime search used by we-web and verify that CEF can load.
69if binary.parent == runtime:
70 located = binary.parent / "libcef.so"
71else:
72 located = binary.parent / "../lib/wallpaperd/web/libcef.so"
73if located.resolve() != runtime / "libcef.so":
74 sys.exit(f"unexpected CEF runtime layout: {located}")
75cef = ctypes.CDLL(str(runtime / "libcef.so"))
76getattr(cef, "cef_execute_process")
77subprocess.run([str(binary), "--help"], env=env, check=True, stdout=subprocess.DEVNULL)
78print(f"wallpaperd runtime OK: libmpv {version >> 16}.{version & 0xffff}, EGL/GLES, PulseAudio, CEF")
79PY
80}
81
82check() {
83 _check_runtime "$srcdir/usr/bin/wallpaperd" "$srcdir/usr/lib/wallpaperd/web"
84}
85
86package() {
87 cp -a "$srcdir/usr" "$pkgdir/"
88 mv "$pkgdir/usr/share/licenses/wallpaperd" "$pkgdir/usr/share/licenses/$pkgname"
89 _check_runtime "$pkgdir/usr/bin/wallpaperd" "$pkgdir/usr/lib/wallpaperd/web"
90}
91

Scan history

Scanned at (UTC)SeverityRules
2026-10-06 18:03:40 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