mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-04-05 09:27:19 +02:00
118 lines
3.5 KiB
Text
118 lines
3.5 KiB
Text
# Contributor: Fabricio Silva <hi@fabricio.dev>
|
|
maintainer="Fabricio Silva <hi@fabricio.dev>"
|
|
pkgname=sonarr
|
|
pkgver=4.0.14.2939
|
|
pkgrel=0
|
|
pkgdesc="TV download automation for usenet and torrents."
|
|
url="https://github.com/Sonarr/Sonarr"
|
|
arch="x86_64 aarch64 armv7" # limited by dotnet
|
|
license="GPL-3.0-only"
|
|
options="net" # net for nuget and yarn
|
|
depends="aspnetcore6-runtime sqlite-libs"
|
|
makedepends="dotnet6-sdk yarn"
|
|
subpackages="$pkgname-openrc"
|
|
install="$pkgname.pre-install"
|
|
source="
|
|
$pkgname-$pkgver.tar.gz::https://github.com/Sonarr/Sonarr/archive/refs/tags/v$pkgver.tar.gz
|
|
0001-disable-restart.patch
|
|
sonarr.initd
|
|
sonarr.confd
|
|
package_info
|
|
"
|
|
builddir="$srcdir/Sonarr-$pkgver"
|
|
pkgusers="sonarr"
|
|
pkggroups="sonarr"
|
|
|
|
# secfixes:
|
|
# 4.0.5.1710-r0:
|
|
# - CVE-2024-32655
|
|
|
|
# map arch to dotnet
|
|
case $CARCH in
|
|
x86_64) _dotnet_arch="x64" ;;
|
|
aarch64) _dotnet_arch="arm64" ;;
|
|
armv7) _dotnet_arch="arm" ;;
|
|
*) _dotnet_arch="$CARCH" ;;
|
|
esac
|
|
|
|
# custom variables
|
|
_runtime="linux-musl-$_dotnet_arch"
|
|
_framework="net6.0"
|
|
_output="_output"
|
|
_artifacts="$_output/$_framework/$_runtime/publish"
|
|
|
|
prepare() {
|
|
default_prepare
|
|
|
|
export BROWSERSLIST_IGNORE_OLD_DATA=true
|
|
yarn install --frozen-lockfile --network-timeout 120000
|
|
|
|
# remove upstream dotnet version
|
|
rm global.json
|
|
}
|
|
|
|
build() {
|
|
# increase max opened files
|
|
ulimit -n 4096
|
|
|
|
dotnet build src \
|
|
-p:AssemblyConfiguration="master" \
|
|
-p:AssemblyVersion="$pkgver" \
|
|
-p:RuntimeIdentifiers="$_runtime" \
|
|
-p:Configuration=Release \
|
|
-p:SelfContained=false \
|
|
-t:PublishAllRids
|
|
yarn build --env production --no-stats
|
|
|
|
# fix ffprobe permissions
|
|
chmod +x "$_artifacts"/ffprobe
|
|
|
|
# cleanup
|
|
find "$_artifacts" \( \
|
|
-name "ServiceUninstall.*" -o \
|
|
-name "ServiceInstall.*" -o \
|
|
-name "Sonarr.Windows.*" \) -delete
|
|
|
|
mv "$_output"/UI "$_artifacts"
|
|
}
|
|
|
|
check() {
|
|
local _filters="Category!=ManualTest&Category!=AutomationTest&Category!=WINDOWS"
|
|
|
|
# skipping:
|
|
# IntegrationTest: broken
|
|
# DiskTransferServiceFixture: CI fails due disk permission
|
|
_filters="$_filters&Category!=IntegrationTest&FullyQualifiedName!~DiskTransferServiceFixture"
|
|
|
|
# link build to tests
|
|
ln -sf ../../../$_artifacts _tests/$_framework/$_runtime/bin
|
|
mkdir -p ~/.config/Sonarr
|
|
|
|
dotnet test src \
|
|
--runtime "$_runtime" \
|
|
--configuration Release \
|
|
--filter "$_filters" \
|
|
--no-build
|
|
}
|
|
|
|
package() {
|
|
local destdir="$pkgdir"/usr/lib/sonarr
|
|
|
|
# use package_info to disable update feature
|
|
install -Dm644 "$srcdir"/package_info "$destdir"/package_info
|
|
echo "PackageVersion=$pkgver-r$pkgrel" >>"$destdir"/package_info
|
|
|
|
cp -af "$_artifacts" "$destdir"/bin
|
|
chown -R "$pkgusers:$pkggroups" "$destdir"
|
|
|
|
install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
|
|
install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
|
|
}
|
|
|
|
sha512sums="
|
|
5d60cf7681a8d091ec71e6c40d3b5ca5ac846f7c2bf4336ef4f5521d0cbd2f329121910440db7ffe023a4e7e77601d3e17d86ebeda8af84ba623caadfe0fb22b sonarr-4.0.14.2939.tar.gz
|
|
753520379a6c5f2899b4ddfd820d5573598a32cb105f74c6fd978a3f2c98895cf709ef2d9afe2bae8c4856da86cb6a1364f5713ea7ef6a36bb21b5a5840c1471 0001-disable-restart.patch
|
|
6cda2b7afc5f61dc8460b9e6a1683d8a04b705cf0dfaf8ef79845b797bdf1b4bb582cf217c83f02717d7daaaf337112da8720c400ab1d374f8a6b04a7ee07286 sonarr.initd
|
|
d1cf825905ee8847f8094ec27d1b43df51558f0e94b17071cc15d019438c3c7d0c884fcc22876690e8b49d0f9dd3c2893ffcdab0c215282db27e24d0c8c6ec29 sonarr.confd
|
|
91274754046fe7b7aade722af2c0a1e00265cb0b43808ad757bb55e780794f2c9466d1036841bb2a6f2e114784585ebef8ad6378cee72197e27a7d2963e022ba package_info
|
|
"
|