sonarr-develop
The yarn install is part of building the project's own frontend from source, using a frozen lockfile, and does not involve installing undeclared external packages at runtime or executing untrusted code.
Triggered rules
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 yarn install is part of building the project's own frontend from source, using a frozen lockfile, and does not involve installing undeclared external packages at runtime or executing untrusted code.
1 higher static finding superseded - not the current verdict (shown for transparency)
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:95
yarn install --frozen-lockfile --network-timeout 120000
PKGBUILD
1 offending line(s) highlighted# Maintainer: txtsd <aur.archlinux@ihavea.quest>
# Maintainer: Donald Webster <fryfrog@gmail.com>
# Contributor: Daniel Egeberg <daniel.egeberg@gmail.com>
# Contributor: Justin Dray <justin@dray.be>
# Helpful URL: https://services.sonarr.tv/v1/releases
pkgname=sonarr-develop
_pkgname=Sonarr
pkgver=5.0.0.2907
pkgrel=1
pkgdesc='Smart PVR for newsgroup and torrent users (develop branch)'
arch=(x86_64 aarch64 armv7h)
url='https://sonarr.tv'
license=('GPL-3.0-or-later')
groups=(servarr-develop)
depends=(
aspnet-runtime-10.0
gcc-libs
glibc
sqlite
)
makedepends=(
dotnet-sdk-10.0
aspnet-targeting-pack-10.0
yarn)
optdepends=(
'postgresql: postgresql database'
'sabnzbd: usenet downloader'
'nzbget: usenet downloader'
'qbittorrent: torrent downloader'
'deluge: torrent downloader'
'rtorrent: torrent downloader'
'nodejs-flood: torrent downloader'
'vuze: torrent downloader'
'aria2: torrent downloader'
'transmission-cli: torrent downloader (CLI and daemon)'
'transmission-gtk: torrent downloader (GTK+)'
'transmission-qt: torrent downloader (Qt)'
'jackett: torrent indexer proxy'
'nzbhydra2: torznab and usenet indexer proxy'
'prowlarr: torrent and usenet indexer proxy'
'autobrr: irc, torrent and usenet indexer proxy'
)
provides=(sonarr)
conflicts=(sonarr)
install=sonarr.install
source=(
"${pkgname}-${pkgver}.tar.gz::https://github.com/Sonarr/Sonarr/archive/refs/tags/v${pkgver}.tar.gz"
package_info
sonarr.service
sonarr.sysusers
sonarr.tmpfiles
)
sha256sums=('848939933162a461c46024018a4142309a3ed8baeb8d34512705b49ffcd881aa'
'a6b37e75143a309b1d8c163c3f90f7f0275fd730015c3f74e3ad27c278b1ae90'
'a5fc162aeafb2c6322176db736a503047a39f2740eea4dead05438ed47187fbd'
'00141d4cbf34daa6d91b26179d4847ec970e2767382e18fdf9af2ec84a0ff43e'
'd6b18a83dd9c213470d984f71ddcefcd64d12bb87f68225cc4ebf5fa4a831703')
case ${CARCH} in
x86_64) _CARCH='x64' ;;
aarch64) _CARCH='arm64' ;;
armv7h) _CARCH='arm' ;;
esac
_framework='net10.0'
_runtime="linux-${_CARCH}"
_output='_output'
_artifacts="${_output}/${_framework}/${_runtime}/publish"
_branch='develop'
prepare() {
cd "${_pkgname}-${pkgver}"
# Remove upstream dotnet version
rm global.json
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export DOTNET_NOLOGO=1
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
dotnet new globaljson --sdk-version 10.0.112 --roll-forward latestFeature
# Patch vulnerabilities
if ! grep -q -i 'System.Security.Cryptography.Pkcs' src/NzbDrone.Core/Sonarr.Core.csproj; then
dotnet package add System.Security.Cryptography.Pkcs --version 10.0.13 --project src/NzbDrone.Core/Sonarr.Core.csproj
dotnet package add Microsoft.AspNetCore.SignalR.Common --version 10.0.13 --project src/NzbDrone.Core/Sonarr.Core.csproj
fi
# Prepare backend
dotnet restore "src/${_pkgname}.sln" \
--runtime "${_runtime}" \
--locked-mode
# Prepare frontend
yarn install --frozen-lockfile --network-timeout 120000
}
build() {
cd "${_pkgname}-${pkgver}"
# Build backend
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export DOTNET_NOLOGO=1
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
dotnet build "src/${_pkgname}.sln" \
--framework "${_framework}" \
--runtime "${_runtime}" \
--no-self-contained \
--no-restore \
--configuration Release \
-p:Platform=Posix \
-p:AssemblyVersion=${pkgver} \
-p:AssemblyConfiguration=${_branch} \
-p:RuntimeIdentifiers="${_runtime}" \
-t:PublishAllRids \
&& dotnet build-server shutdown # Build servers do not terminate automatically
# Build frontend
yarn run build
}
package() {
cd "${_pkgname}-${pkgver}"
install -dm755 "${pkgdir}/usr/lib/sonarr/bin/UI"
# Remove Service Helpers, Update, and Windows files
rm "${_artifacts}/ServiceInstall"*
rm "${_artifacts}/ServiceUninstall"*
rm "${_artifacts}/Sonarr.Windows."*
rm -rf "${_output}/Sonarr.Update"
# Copy backend
cp -dr "${_artifacts}/"* "${pkgdir}/usr/lib/sonarr/bin"
# Copy frontend
cp -dr "${_output}/UI/"* "${pkgdir}/usr/lib/sonarr/bin/UI"
# Set executable permissions
chmod 755 "${pkgdir}/usr/lib/sonarr/bin/ffprobe"
# License
install -Dm644 LICENSE.md "${pkgdir}/usr/share/licenses/${pkgname}"
# Disable built in updater.
cd "${srcdir}"
install -Dm644 package_info "${pkgdir}/usr/lib/sonarr"
echo "PackageVersion=${pkgver}-${pkgrel}" >> "${pkgdir}/usr/lib/sonarr/package_info"
# Systemd
install -Dm644 sonarr.service "${pkgdir}/usr/lib/systemd/system/sonarr.service"
install -Dm644 sonarr.sysusers "${pkgdir}/usr/lib/sysusers.d/sonarr.conf"
install -Dm644 sonarr.tmpfiles "${pkgdir}/usr/lib/tmpfiles.d/sonarr.conf"
}
Changes since previous scan
--- PKGBUILD @ 2026-10-31 00:07+++ PKGBUILD @ 2026-11-01 00:21@@ -6,7 +6,7 @@ pkgname=sonarr-develop _pkgname=Sonarr-pkgver=5.0.0.2870+pkgver=5.0.0.2907 pkgrel=1 pkgdesc='Smart PVR for newsgroup and torrent users (develop branch)' arch=(x86_64 aarch64 armv7h)@@ -51,7 +51,7 @@ sonarr.sysusers sonarr.tmpfiles )-sha256sums=('d93c24dff7e24fcf26f082f2b1033de0a74e76519164f618d2b4bf97b46c23b8'+sha256sums=('848939933162a461c46024018a4142309a3ed8baeb8d34512705b49ffcd881aa' 'a6b37e75143a309b1d8c163c3f90f7f0275fd730015c3f74e3ad27c278b1ae90' 'a5fc162aeafb2c6322176db736a503047a39f2740eea4dead05438ed47187fbd' '00141d4cbf34daa6d91b26179d4847ec970e2767382e18fdf9af2ec84a0ff43e'Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-11-01 00:21:48 | Low | 2 |
| 2026-10-31 21:59:05 | Medium | 1 |
| 2026-10-31 00:07:41 | Low | 2 |
| 2026-10-30 05:55:14 | Medium | 1 |
| 2026-10-30 00:29:30 | Low | 2 |
| 2026-10-29 00:13:55 | Low | 2 |
| 2026-10-28 05:49:54 | Medium | 1 |
| 2026-10-28 00:06:54 | Low | 2 |
| 2026-10-27 00:23:28 | Low | 2 |
| 2026-10-26 03:43:44 | Medium | 1 |
| 2026-10-26 00:12:40 | Low | 2 |
| 2026-10-25 01:41:32 | Medium | 1 |
| 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 05:30:25 | Medium | 1 |
| 2026-10-21 00:12:50 | Low | 2 |
| 2026-10-20 01:27:05 | Medium | 1 |
| 2026-10-20 00:10:31 | Low | 2 |