aboutsummaryrefslogtreecommitdiff
path: root/apks/jellyfin/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'apks/jellyfin/APKBUILD')
-rw-r--r--apks/jellyfin/APKBUILD63
1 files changed, 63 insertions, 0 deletions
diff --git a/apks/jellyfin/APKBUILD b/apks/jellyfin/APKBUILD
new file mode 100644
index 0000000..80b8076
--- /dev/null
+++ b/apks/jellyfin/APKBUILD
@@ -0,0 +1,63 @@
+# Maintainer: Simon Zeni <simon@bl4ckb0ne.ca>
+pkgname=jellyfin
+pkgver=10.8.5
+pkgrel=0
+pkgdesc="The Free Software Media System"
+pkgusers="$pkgname"
+pkggroups="$pkgname"
+install="$pkgname.pre-install"
+url="https://jellyfin.org/"
+arch="x86_64 armv7 aarch64"
+license="GPL-2.0-only"
+makedepends="dotnet6-sdk"
+depends="aspnetcore6-runtime ffmpeg"
+subpackages="$pkgname-openrc"
+source="$pkgname-$pkgver.tar.gz::https://github.com/jellyfin/jellyfin/archive/refs/tags/v$pkgver.tar.gz
+ $pkgname.initd
+ $pkgname.confd"
+
+case $CARCH in
+ x86_64) _dotnet_arch=x64;;
+ aarch64) _dotnet_arch=arm64;;
+ armv7|armhf) _dotnet_arch=arm;;
+esac
+
+# parses RID from /etc/os-release depending on if edge or production release
+# to set _runtime_id
+# shellcheck disable=SC2034
+. /etc/os-release
+[ -n "${VERSION_ID//[^_]}" ] && _runtime_id="alpine.${VERSION_ID%_*}-$_dotnet_arch" || _runtime_id="alpine.${VERSION_ID%.*}-$_dotnet_arch"
+
+build() {
+ dotnet build --configuration Release Jellyfin.Server --no-self-contained --runtime $_runtime_id
+ dotnet publish --configuration Release Jellyfin.Server --no-self-contained --output publish --runtime $_runtime_id
+}
+
+check() {
+ # check on aarch64 is broken for dotnet6-sdk v6.0.1xx due to
+ # https://github.com/microsoft/vstest/issues/2566
+ if [ "$CARCH" = "aarch64" ]; then
+ return
+ fi
+
+ dotnet test --runtime $_runtime_id
+}
+
+package() {
+ mkdir -p "$pkgdir"/usr/lib
+ cp -dr publish "$pkgdir"/usr/lib/jellyfin
+
+ mkdir -p "$pkgdir"/usr/bin
+ ln -s /usr/lib/jellyfin/jellyfin "$pkgdir"/usr/bin/jellyfin
+
+ install -Dm755 "$srcdir"/$pkgname.initd \
+ "$pkgdir"/etc/init.d/$pkgname
+ install -Dm644 "$srcdir"/$pkgname.confd \
+ "$pkgdir"/etc/conf.d/$pkgname
+}
+
+sha512sums="
+a4c436919ae6b07fede95b98d6a16c6405c5a8efd8457c522cf5dd273fa0edb9d33e582f59c3ac4377a19129512530c344de58d81807adbd83af16b41dea8e1d jellyfin-10.8.5.tar.gz
+364a70a953d921048a249fd370642c1782e434c850334cd55e35bbb10d1bb93482d37faa1c11da5d7acba96a084d9832e5db212b65b0fa9907c7d3afe553aaf9 jellyfin.initd
+d35eb07d11d711b8ad35c7726e151a8096609712fee3bfea00c9adeff8e56660e3cde3d9b0b2dc8a847514af4d2b32340e2b29b77facfab4f8921ba15ba671b0 jellyfin.confd
+"