-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Package Request: Jellyfin #6684
Comments
They have their own build script which is kind of horrible. https://github.com/jellyfin/jellyfin/blob/master/build I‘ll see what I can do. |
Please do check out the debian packaging I linked. The build script is intended to support many platforms and thus it is indeed complicated. |
Tried packaging The Arch PKGBUILD as reference: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=jellyfin |
DotNet is packaged, I‘ll get to jellyfin soon. |
hi @Anachron, have you had a chance to review? |
Oh well since |
For everyone wondering what the progress is: The build fails as following:
dotnet-sdk template:
jellyfin template:
|
An update. I was able to get jellyfin to build with #20147 and the following template file for jellyfin.
|
How did you get it to run? I receive:
Edit: It seems like it just need the symlink mentioned here: |
This works on I'll check later if EDIT: NEW WIP: # Template file for 'jellyfin'
pkgname=jellyfin
version=10.5.0
revision=1
wrksrc="${pkgname}-${version}"
create_wrksrc=yes
archs="i686 x86_64 aarmv7l aarch64"
build_style=meta
hostmakedepends="dotnet-sdk-bin yarn"
makedepends="icu-devel libssl47 git"
depends="ffmpeg sqlite"
short_desc="Free Software Media System "
maintainer="Abel Tesfaye <abel-tesfaye@hotmail.com>"
license="GPL-2.0-or-later"
homepage="https://jellyfin.readthedocs.io"
distfiles="
https://github.com/${pkgname}/${pkgname}/archive/v${version}.tar.gz>${pkgname}-${version}.tar.gz
https://github.com/${pkgname}/${pkgname}-web/archive/v${version}.tar.gz>${pkgname}-web-${version}.tar.gz"
checksum="
f5631758c2a175ae04bedd6d8f8566b2222b14254261bdf29019ecdffde0dddd
e50b280e805469367bedfef41c32070907e191d4a856b92049e6f6fd558e1dea"
nopie=yes
system_accounts="jellyfin"
jellyfin_homedir="/var/lib/jellyfin"
do_build() {
cd jellyfin-web-${version}
yarn install
# https://docs.microsoft.com/de-de/dotnet/core/rid-catalog#linux-rids
case "${XBPS_TARGET_MACHINE}" in
i686) _build_arch="x86";;
x86_64) _build_arch="x64";;
armv7l) _build_arch="arm";;
aarch64) _build_arch="arm64";;
esac
cd ../jellyfin-${version}
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export CLR_OPENSSL_VERSION_OVERRIDE=47
dotnet build -r "linux-${_build_arch}" --configuration Release Jellyfin.Server
dotnet publish -r "linux-${_build_arch}" --configuration Release Jellyfin.Server --output "$PWD"/publish
rm -rfv publish/runtimes/{alpine-*,osx*,tizen-*,win*,linux-musl-x64,linux-armel}
test "${XBPS_TARGET_MACHINE}" = 'i686' || rm -rfv publish/runtimes/linux-x86
test "${XBPS_TARGET_MACHINE}" = 'x86_64' || rm -rfv publish/runtimes/linux-x64
test "${XBPS_TARGET_MACHINE}" = 'armv7l' || rm -rfv publish/runtimes/linux-arm
test "${XBPS_TARGET_MACHINE}" = 'aarch64' || rm -rfv publish/runtimes/linux-arm64
mkdir publish/jellyfin-web
cp -rv ../jellyfin-web-${version}/dist/. publish/jellyfin-web
}
do_install() {
vmkdir usr/lib/jellyfin
#vmkdir etc/default
#vcopy "${FILESDIR}/jellyfin.default" etc/default/jellyfin
vcopy "${pkgname}-${version}/publish/." usr/lib/jellyfin
#vsv jellyfin
}
|
Unfortunately, Jellyfin doesn't support x86 since Microsoft doesn't provide x86 .net binaries for Linux |
Yep but can be built from source it seems: I'll see if I can get it working. |
https://gist.github.com/tesfaye/9f9b37a67948860111049f55ed6f60d8 |
Building from source still pulls in random binaries, some of them link against OpenSSL (e.g. libgit), which is most likely the issue you see right now. |
I'll get back to this,- I'm currently packaging 10.5.5 and plan to retry building dotnet from source (maybe its easier now). |
WIP of This work on both # Template file for 'jellyfin-bin'
pkgname=jellyfin-bin
version=10.7.6
revision=1
archs="x86_64 aarch64"
wrksrc="jellyfin-${version}"
create_wrksrc=yes
build_style=meta
depends="ffmpeg sqlite icu"
short_desc="Free Software Media System"
maintainer="Anachron <gith@cron.world>"
license="GPL-3.0-or-later"
homepage="https://jellyfin.org"
distfiles="https://repo.jellyfin.org/releases/server/linux/stable/web/jellyfin-web_${version}_portable.tar.gz"
checksum="c714c6357176ce44ca4e3d354875ad7c11578af358cb5fa520a5f29626e5fe00"
system_accounts="_jellyfin"
_jellyfin_homedir="/var/lib/jellyfin"
case "${XBPS_TARGET_MACHINE}" in
x86_64)
distfiles+=" https://repo.jellyfin.org/releases/server/linux/stable/server/jellyfin-server_${version}_linux-amd64.tar.gz"
checksum+=" 883f30229fd97bc6fc8a421dd3c7d358dd821363fd8d9c5ea0283c514dae3cc9"
;;
aarch64)
distfiles+=" https://repo.jellyfin.org/releases/server/linux/stable/server/jellyfin-server_${version}_linux-arm64.tar.gz"
checksum+=" ace584ffdde02b685d0d8b9b45a50e84e86422e86c23f11193b56d2a3e43d673"
;;
esac
post_extract() {
mv jellyfin-server_*/* .
rmdir jellyfin-server_*
mv jellyfin-web_* jellyfin-web
}
do_install() {
vmkdir usr/lib/jellyfin
vcopy . usr/lib/jellyfin
vsv jellyfin
}
|
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as off-topic.
This comment was marked as off-topic.
I've been using this template on my https://git.sr.ht/~anachron/void-package-templates/tree/master/item/srcpkgs/jellyfin-bin So if you are like me and don't want to wait another eternity for |
The github website is: https://github.com/jellyfin/jellyfin
Thanks!
The text was updated successfully, but these errors were encountered: