readarr-develop

LOW
maintainer txtsd 2 votes scanned 2026-09-17 00:27:14.276658
View on AUR
Why flagged

The yarn install in prepare() is part of building the project's own frontend from its official GitHub source, which is a normal and expected step in the build process for this application; the package does not introduce undeclared external dependencies or execute untrusted code.

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-07-25) reviewed the full PKGBUILD and judged it LOW (confidence 90%): The yarn install in prepare() is part of building the project's own frontend from its official GitHub source, which is a normal and expected step in the build process for this application; the package does not introduce undeclared external dependencies or execute untrusted code.

1 higher static finding superseded - not the current verdict (shown for transparency)
Medium npm/yarn/pnpm install of an undeclared external package npm_install_external

Runs `npm/yarn/pnpm install <package>` for a package not in source=(), pulling unpinned, unreviewed code at build time. Severity downgraded: the package declares/looks like a Node.js consumer, where build-time installs are expected.

  • PKGBUILD:79 yarn install --frozen-lockfile --network-timeout 120000

PKGBUILD

1 offending line(s) highlighted
1# Maintainer: txtsd <aur.archlinux@ihavea.quest>
2# Maintainer: Donald Webster <fryfrog@gmail.com>
3# Helpful URL: https://readarr.servarr.com/v1/update/develop?version=0.0.0.0&os=linux&runtime=netcore&arch=x64&includeMajorVersion=true
4
5pkgname=readarr-develop
6_pkgname=Readarr
7pkgver=0.4.18.2805
8pkgrel=1
9pkgdesc='Ebook and audiobook collection manager for newsgroup and torrent users (develop branch)'
10arch=(x86_64 aarch64 armv7h)
11url='https://readarr.com'
12license=('GPL-3.0-or-later')
13groups=(servarr-develop)
14depends=(
15 aspnet-runtime-6.0
16 gcc-libs
17 glibc
18 sqlite
19)
20makedepends=(dotnet-sdk-6.0 yarn)
21optdepends=(
22 'postgresql: postgresql database'
23 'sabnzbd: usenet downloader'
24 'nzbget: usenet downloader'
25 'qbittorrent: torrent downloader'
26 'deluge: torrent downloader'
27 'rtorrent: torrent downloader'
28 'nodejs-flood: torrent downloader'
29 'vuze: torrent downloader'
30 'aria2: torrent downloader'
31 'transmission-cli: torrent downloader (CLI and daemon)'
32 'transmission-gtk: torrent downloader (GTK+)'
33 'transmission-qt: torrent downloader (Qt)'
34 'jackett: torrent indexer proxy'
35 'nzbhydra2: torznab and usenet indexer proxy'
36 'prowlarr: torrent and usenet indexer proxy'
37 'autobrr: irc, torrent and usenet indexer proxy'
38)
39provides=(readarr)
40conflicts=(readarr)
41install=readarr.install
42source=(
43 "${pkgname}-${pkgver}.tar.gz::https://github.com/Readarr/Readarr/archive/refs/tags/v${pkgver}.tar.gz"
44 package_info
45 readarr.service
46 readarr.sysusers
47 readarr.tmpfiles
48)
49sha256sums=('35296a098f9581521cf4109154aef0022d7c1ec90684869d9527687d4776ec45'
50 '12235af27b47fe1a353bc79fdfdf8c0e03fca5c0eb08f9eb57c0b66532c37648'
51 'ce5d3c5263792f7099ca5b87acee8a5c7573cc90931cc37a31da459d20b5cfa0'
52 'fcfa28c1be4f67cfa641dc6076780ee07ab973e55bf676174315e417f73003ad'
53 'a4cfdf882ab62dea54d85dfae4a633cf21bce597a19c3287d90c024e3ff399ce')
54
55case ${CARCH} in
56 x86_64) _CARCH='x64' ;;
57 aarch64) _CARCH='arm64' ;;
58 armv7h) _CARCH='arm' ;;
59esac
60
61_framework='net6.0'
62_runtime="linux-${_CARCH}"
63_output="_output"
64_artifacts="${_output}/${_framework}/${_runtime}/publish"
65_branch='develop'
66
67prepare() {
68 cd "${_pkgname}-${pkgver}"
69
70 # Prepare backend
71 export DOTNET_CLI_TELEMETRY_OPTOUT=1
72 export DOTNET_NOLOGO=1
73 export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
74 dotnet restore src/${_pkgname}.sln \
75 --runtime ${_runtime} \
76 --locked-mode
77
78 # Prepare frontend
79 yarn install --frozen-lockfile --network-timeout 120000
80}
81
82build() {
83 cd "${_pkgname}-${pkgver}"
84
85 # Build backend
86 export DOTNET_CLI_TELEMETRY_OPTOUT=1
87 export DOTNET_NOLOGO=1
88 export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
89 dotnet build src/${_pkgname}.sln \
90 --framework ${_framework} \
91 --runtime ${_runtime} \
92 --no-self-contained \
93 --no-restore \
94 --configuration Release \
95 -p:Platform=Posix \
96 -p:AssemblyVersion=${pkgver} \
97 -p:AssemblyConfiguration=${_branch} \
98 -p:RuntimeIdentifiers=${_runtime} \
99 -t:PublishAllRids
100
101 # Remove Service Helpers, Update, and Windows files
102 rm "${_artifacts}/ServiceInstall"*
103 rm "${_artifacts}/ServiceUninstall"*
104 rm "${_artifacts}/Readarr.Windows."*
105
106 # Build frontend
107 yarn run build --env production
108}
109
110package() {
111 cd "${_pkgname}-${pkgver}"
112 install -dm755 "${pkgdir}/usr/lib/readarr/bin/UI"
113
114 # Copy backend
115 cp -dr "${_artifacts}/"* "${pkgdir}/usr/lib/readarr/bin"
116 # Copy frontend
117 cp -dr "${_output}/UI/"* "${pkgdir}/usr/lib/readarr/bin/UI"
118
119 # License
120 install -Dm644 LICENSE.md "${pkgdir}/usr/share/licenses/${pkgname}"
121
122 # Disable built in updater.
123 cd "${srcdir}"
124 install -Dm644 package_info "${pkgdir}/usr/lib/readarr"
125 echo "PackageVersion=${pkgver}-${pkgrel}" >> "${pkgdir}/usr/lib/readarr/package_info"
126
127 # Systemd
128 install -Dm644 readarr.service "${pkgdir}/usr/lib/systemd/system/readarr.service"
129 install -Dm644 readarr.sysusers "${pkgdir}/usr/lib/sysusers.d/readarr.conf"
130 install -Dm644 readarr.tmpfiles "${pkgdir}/usr/lib/tmpfiles.d/readarr.conf"
131}
132

Scan history

Scanned at (UTC)SeverityRules
2026-09-17 00:27:14 Low 2
2026-09-16 00:03:17 Low 2
2026-09-15 00:25:31 Low 2
2026-09-14 00:27:57 Low 2
2026-09-13 00:19:54 Low 2
2026-09-12 00:25:17 Low 2
2026-09-11 00:19:22 Low 2
2026-09-10 00:22:44 Low 2
2026-09-09 00:04:09 Low 2
2026-09-08 00:18:08 Low 2
2026-09-07 00:30:15 Low 2
2026-09-06 00:17:06 Low 2
2026-09-05 00:16:27 Low 2
2026-09-04 00:03:13 Low 2
2026-09-03 00:15:47 Low 2
2026-09-02 00:02:31 Low 2
2026-09-01 00:11:19 Low 2
2026-08-31 00:19:57 Low 2
2026-08-30 00:04:14 Low 2
2026-08-29 00:29:17 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