pw-mpris-visualcard-git
LOW
maintainer ZokuTe
0 votes
scanned 2026-09-28 09:20:32.001266
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: ZokuTe <zokute@zlinux.live>
2
# AUR: pw-mpris-visualcard-git
3
#
4
# Upstream builds with plain make; every dependency is a distribution library
5
# (cairo / pango / gdk-pixbuf / PipeWire / sdbus-c++ / libcurl), no language
6
# package manager is involved.
7
8
_pkgname=pw-mpris-visualcard
9
pkgname=$_pkgname-git
10
pkgver=r1.c44bdf8
11
pkgrel=1
12
pkgdesc='Render the currently playing MPRIS track as a PipeWire video node (album art, progress ring, synced lyrics)'
13
arch=('x86_64' 'aarch64')
14
url='https://github.com/zlinux-live-util/pw-mpris-visualcard'
15
license=('MIT')
16
depends=('cairo' 'pango' 'gdk-pixbuf2' 'glib2' 'libpipewire' 'sdbus-cpp' 'curl' 'pipewire')
17
makedepends=('git')
18
optdepends=(
19
'obs-pwvideo: OBS source plugin able to pick this PipeWire node (the bundled linux-pipewire plugin cannot)'
20
'noto-fonts-cjk: CJK glyphs for titles and lyrics (any font covering the text works)'
21
)
22
provides=("$_pkgname")
23
conflicts=("$_pkgname")
24
install="$pkgname.install"
25
source=("$pkgname::git+$url.git")
26
sha256sums=('SKIP')
27
28
pkgver() {
29
cd "$pkgname"
30
local _desc
31
if _desc=$(git describe --long --tags --abbrev=7 2>/dev/null); then
32
sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' <<<"$_desc"
33
else
34
printf 'r%s.%s' "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
35
fi
36
}
37
38
build() {
39
cd "$pkgname"
40
# PORTABLE=1 drops -march=native: the default flags bind the binary to the
41
# builder's instruction set, which must not happen for a distributed package.
42
# CXXFLAGS/LDLIBS are passed through the environment rather than as make
43
# arguments, because command-line variables would suppress the Makefile's own
44
# appends (-std=c++20, -Wall, pkg-config --cflags/--libs).
45
CXXFLAGS="$CXXFLAGS -O3 -funroll-loops" LDLIBS="$LDFLAGS" make PORTABLE=1
46
}
47
48
package() {
49
cd "$pkgname"
50
51
install -Dm755 pw-mpris-visualcard-native "$pkgdir/usr/bin/pw-mpris-visualcard-native"
52
53
install -Dm644 LICENSE README.md README.zh-CN.md docs/internals.md docs/*.png \
54
-t "$pkgdir/usr/share/doc/$_pkgname/"
55
56
# Ship the upstream systemd user unit rendered. It is a template carrying
57
# @REPO@ / @ARGS@ placeholders, and systemd refuses to load it unrendered
58
# ("WorkingDirectory= path is not absolute"). For a packaged binary there is no
59
# checkout to point at, so the template-comment header (which only documents
60
# rendering it by hand), WorkingDirectory, and the checkout-relative ExecStart
61
# are replaced by a /usr/bin invocation; @REPO@ is then only meaningful in the
62
# Documentation= lines.
63
install -d "$pkgdir/usr/lib/systemd/user"
64
sed -n '/^\[Unit\]/,$p' pw-mpris-visualcard.service |
65
sed -e '/^WorkingDirectory=/d' \
66
-e 's|^ExecStart=.*|ExecStart=/usr/bin/pw-mpris-visualcard-native @ARGS@|' \
67
-e "s|@REPO@|/usr/share/doc/$_pkgname|g" \
68
-e 's|@ARGS@|--node pw-mpris-visualcard --size 460x690 --fps 30 --lyrics 3|' \
69
>"$pkgdir/usr/lib/systemd/user/pw-mpris-visualcard.service"
70
}
71
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-09-28 09:20:32 | Low | 1 |