addpkg: jellyfin-server 10.7.7-1

This commit is contained in:
George Rawlinson 2021-09-22 07:31:04 +00:00
parent 7a361e2f49
commit d3139e9665
Signed by: grawlinson
GPG key ID: E0959FEA8B550539
4 changed files with 108 additions and 0 deletions

58
jellyfin-server/PKGBUILD Normal file
View file

@ -0,0 +1,58 @@
# Maintainer:
pkgname=jellyfin-server
_pkgname=jellyfin
pkgver=10.7.7
pkgrel=1
pkgdesc='Jellyfin server backend'
arch=('x86_64')
url='https://jellyfin.org'
_url="https://github.com/jellyfin/jellyfin"
license=('GPL2' 'GPL3')
depends=('dotnet-runtime' 'aspnet-runtime' 'ffmpeg' 'sqlite' 'fontconfig')
makedepends=('dotnet-sdk')
optdepends=('jellyfin-web: to run web-app on the same machine')
source=(
"$pkgname-$pkgver.tar.gz::$_url/archive/v$pkgver.tar.gz"
'systemd.service'
'sysusers.conf'
'tmpfiles.conf'
)
b2sums=('589f9f811dc1f0b5cc7ade6aae34386a846856ffe0bc62fe18ebb0c0a234b00ff87e6f7e1007bce0fac0772350fca219e584d03f95fc777be4f6eaf78b7f55df'
'a85349afe83be5b0c563fc2d1712825df858b859df450e64450b5ac8b62792908e6127403008b3d13bf1b90bd57647a9179900acaa1f9d87a59f75f9cf02630b'
'f73c72e1d66480c410dbe71be1af91a2bd76206dfed76e64b8264ee3537f6eb477bcba905ce69a0ec8b273e33c2e46439b9b32ce21543a48d98d80434a46a781'
'76d92a78a6600885841a19e8629ccc39aab485416b51541c351f04b4c1350f898257e47db77121e0364ee3a1e1924a73aa82ce8dcec8d4ddee6947ac1e0395ea')
prepare() {
cd "$_pkgname-$pkgver"
mkdir -p publish
}
build(){
cd "$_pkgname-$pkgver"
# Disable dotnet telemetry
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
export DOTNET_NOLOGO=1
dotnet publish Jellyfin.Server \
--configuration Release \
--output=publish \
--self-contained \
--runtime linux-x64 \
"-p:DebugSymbols=false;DebugType=none"
}
package() {
# systemd integration
install -vDm644 systemd.service "$pkgdir/usr/lib/systemd/system/$_pkgname.service"
install -vDm644 sysusers.conf "$pkgdir/usr/lib/sysusers.d/$_pkgname.conf"
install -vDm644 tmpfiles.conf "$pkgdir/usr/lib/tmpfiles.d/$_pkgname.conf"
cd "$_pkgname-$pkgver"
install -vd "$pkgdir/usr/lib"
cp -dr --no-preserve='ownership' publish "$pkgdir/usr/lib/$_pkgname"
}
# vim: ts=2 sw=2 et:

View file

@ -0,0 +1,45 @@
[Unit]
Description=Jellyfin Media Server
After=network-online.target
[Service]
WorkingDirectory=/var/lib/jellyfin
ExecStart=/usr/lib/jellyfin/jellyfin ${JELLYFIN_WEB_OPT} ${JELLYFIN_RESTART_OPT} ${JELLYFIN_FFMPEG_OPT} ${JELLYFIN_SERVICE_OPT} ${JELLYFIN_NOWEBAPP_OPT}
TimeoutSec=15
Restart=on-failure
User=jellyfin
Group=jellyfin
# Environment variables
# To override these variables, use a drop-in systemd file.
# See `man 5 systemd.unit` for details.
# Program directories
Environment="JELLYFIN_DATA_DIR=/var/lib/jellyfin"
Environment="JELLYFIN_CONFIG_DIR=/etc/jellyfin"
Environment="JELLYFIN_LOG_DIR=/var/log/jellyfin"
Environment="JELLYFIN_CACHE_DIR=/var/cache/jellyfin"
# [OPTIONAL] Web client path
#Environment="JELLYFIN_WEB_OPT=--webdir=/usr/share/jellyfin-web"
# [OPTIONAL] In-App service control
#Environment="JELLYFIN_RESTART_OPT=--restartpath=/usr/lib/jellyfin/restart.sh"
# [OPTIONAL] ffmpeg binary paths, overriding the UI-configured values
#Environment="JELLYFIN_FFMPEG_OPT=--ffmpeg=/usr/bin/ffmpeg"
# [OPTIONAL] run Jellyfin as a headless service
#Environment="JELLYFIN_SERVICE_OPT=--service"
# [OPTIONAL] run Jellyfin without the web app
#Environment="JELLYFIN_NOWEBAPP_OPT=--noautorunwebapp"
# [OPTIONAL] run Jellyfin with ASP.NET Server Garbage Collection (uses more RAM and less CPU than Workstation GC)
# 0 = Workstation
# 1 = Server
#Environment="COMPlus_gcServer=1"
[Install]
WantedBy=multi-user.target

View file

@ -0,0 +1 @@
u jellyfin - "Jellyfin default user" /var/lib/jellyfin

View file

@ -0,0 +1,4 @@
d /var/cache/jellyfin 0750 jellyfin jellyfin
d /var/lib/jellyfin 0750 jellyfin jellyfin
d /var/log/jellyfin 0750 jellyfin jellyfin
d /etc/jellyfin 0750 jellyfin jellyfin