floatlyrics

LOW
maintainer nihildigit 1 votes scanned 2026-11-04 00:25:23.536954
View on AUR
Why flagged

The non-standard host lindera.dev hosts dictionary data used to build the application, not executable code; the source is checksummed and used only for generating static data in the binary.

Triggered rules

Low AI review downgraded a static finding llm_review

The static rules flagged this MEDIUM, but an AI model (qwen/qwen3-235b-a22b-2507) reviewed the full PKGBUILD and judged it LOW (confidence 95%): The non-standard host lindera.dev hosts dictionary data used to build the application, not executable code; the source is checksummed and used only for generating static data in the binary.

1 higher static finding superseded - not the current verdict (shown for transparency)
Medium source=() URL on a non-standard host source_untrusted_domain

One or more source=() URLs point to a host outside the trusted allowlist (github.com, gitlab.com, codeberg.org, pypi.org, …).

  • PKGBUILD:28 "mecab-ipadic-2.7.0-20250920.tar.gz::https://lindera.dev/mecab-ipadic-2.7.0-20250920.tar.gz"

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: ChouChiu
2# SPDX-FileCopyrightText: 2026 ChouChiu
3# SPDX-License-Identifier: AGPL-3.0-only
4
5pkgname=floatlyrics
6pkgver=1.3.1
7pkgrel=1
8pkgdesc='Floating synchronized lyrics for MPRIS players on Linux Wayland'
9arch=('x86_64')
10url='https://github.com/ChouChiu/FloatLyrics'
11license=('AGPL-3.0-only')
12depends=(
13 'cairo'
14 'glib2'
15 'glibc'
16 'gtk4'
17 'gtk4-layer-shell'
18 'libgcc'
19 'pango'
20 'webkitgtk-6.0'
21)
22makedepends=('bun' 'cargo')
23# The other sources are the dictionaries `lindera-ipadic` and `lindera-cc-cedict`
24# build the readings they embed into the binary from; pinned copies keep the build
25# from fetching them on its own.
26source=(
27 "$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz"
28 "mecab-ipadic-2.7.0-20250920.tar.gz::https://lindera.dev/mecab-ipadic-2.7.0-20250920.tar.gz"
29 "CC-CEDICT-MeCab-0.1.0-20200409.tar.gz::https://lindera.dev/CC-CEDICT-MeCab-0.1.0-20200409.tar.gz"
30)
31# The source archive comes first, then the dictionaries in the order above;
32# scripts/update-aur-checksum.sh replaces the first one on every release.
33sha256sums=(
34 'd799892565b49dcb24edddf1950ede89296f8af81a5c5e685c5d03f473be3edb'
35 'a7ba9f645ffe7094e56ae1c4a81d100df8fbb1e28bbe1792622e9728e162db3d'
36 'ed3cf9e3ec8a80647f0ec783dc09dad43b8ccad2e994f5eab6ff13a41d0916c8'
37)
38# A lindera dictionary crate looks for its archive in
39# "$LINDERA_BUILD_DICTIONARY_CACHE_DIR/<crate version>-fmt<dictionary format
40# version>"; both numbers are pinned by Cargo.lock, and a mismatch falls back to
41# the download the pinned copies are here to avoid.
42dictionary_cache="$srcdir/lindera-cache"
43dictionary_build="$dictionary_cache/6.0.0-fmt2"
44export LINDERA_BUILD_DICTIONARY_CACHE_DIR="$dictionary_cache"
45
46prepare() {
47 cd "FloatLyrics-$pkgver"
48 export RUSTUP_TOOLCHAIN=stable
49 cargo fetch --locked --target "$CARCH-unknown-linux-gnu"
50 install -Dm644 "$srcdir/mecab-ipadic-2.7.0-20250920.tar.gz" \
51 "$dictionary_build/mecab-ipadic-2.7.0-20250920.tar.gz"
52 install -Dm644 "$srcdir/CC-CEDICT-MeCab-0.1.0-20200409.tar.gz" \
53 "$dictionary_build/CC-CEDICT-MeCab-0.1.0-20200409.tar.gz"
54}
55
56build() {
57 cd "FloatLyrics-$pkgver"
58 export RUSTUP_TOOLCHAIN=stable
59 export LIBSQLITE3_SYS_USE_PKG_CONFIG=1
60 CFLAGS+=" -ffat-lto-objects"
61 export CFLAGS
62 CARGO_TARGET_DIR=target cargo build --frozen --release
63}
64
65check() {
66 cd "FloatLyrics-$pkgver"
67 export RUSTUP_TOOLCHAIN=stable
68 export LIBSQLITE3_SYS_USE_PKG_CONFIG=1
69 CFLAGS+=" -ffat-lto-objects"
70 export CFLAGS
71 CARGO_TARGET_DIR=target cargo test --frozen --all-targets --all-features
72}
73
74package() {
75 cd "FloatLyrics-$pkgver"
76 ./packaging/install.sh "$pkgdir" target/release/floatlyrics
77}
78

Scan history

Scanned at (UTC)SeverityRules
2026-11-04 00:25:23 Low 2
2026-11-03 00:01:00 Low 2
2026-11-02 00:26:00 Low 2
2026-11-01 00:21:48 Low 2
2026-10-31 00:07:41 Low 2
2026-10-30 00:29:30 Low 2
2026-10-29 00:13:55 Low 2
2026-10-28 00:06:54 Low 2
2026-10-27 00:23:28 Low 2
2026-10-26 00:12:40 Low 2
2026-10-25 00:20:48 Low 2
2026-10-24 00:14:55 Low 2
2026-10-23 00:02:19 Low 2
2026-10-22 00:13:10 Low 2
2026-10-21 00:12:50 Low 2
2026-10-20 00:10:31 Low 2
2026-10-19 00:03:55 Low 2
2026-10-18 00:06:55 Low 2
2026-10-17 00:21:55 Low 2
2026-10-16 00:12:47 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