mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-09-29 15:31:04 -04:00
* Remove additional dotnet-preview repo from Makefile
* Repo doesn't seem maintained, and maintainers actively discourage
the usage in production in its description
* Considering this, we should build with stable .NET releases, which
Fedora and RHEL 8+ repos already provide
* Use Fedora-version-specific runtime-identifier for `dotnet publish`
* This has no actual effect right now judging by the [RID
catalog](3efd59151a/docs/core/rid-catalog.md
),
so this is just future proofing.
* Remove AutoReqProv
* There's rarely a reason to use this feature, this is not one of them
* In the [proposal of this
feature](https://fedoraproject.org/wiki/AutoReqProv_(draft)#Usage)
it is stated that this is not to be used on packages with binaries
in /usr/bin and others, which is the case in this package.
* also didn't seem to work since we were still having dependency
issues with implicit dependencies (see jellyfin/jellyfin#7471 )
* Removed DOTNET_SKIP_FIRST_TIME_EXPERIENCE as it is unused in .NET SDK
* see dotnet/sdk#9945
* it's already merged for removal in future versions
* Move building process `dotnet publish` to %build section
* Also removed `--output` from this due to an outstanding bug on SDK's
side. This also separates building and installing as intended
* define LICENSE as %license, which automatically puts it in a
standardised directory
Jellyfin RPM
Build Fedora Package with docker
Change into this directory cd rpm-package
Run the build script ./build-fedora-rpm.sh
.
Resulting RPM and src.rpm will be in ../../jellyfin-*.rpm
ffmpeg
The RPM package for Fedora/CentOS requires some additional repositories as ffmpeg is not in the main repositories.
# ffmpeg from RPMfusion free
# Fedora
$ sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
# CentOS 7
$ sudo yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
ISO mounting
To allow Jellyfin to mount/umount ISO files uncomment these two lines in /etc/sudoers.d/jellyfin-sudoers
# %jellyfin ALL=(ALL) NOPASSWD: /bin/mount
# %jellyfin ALL=(ALL) NOPASSWD: /bin/umount
Building with dotnet
Jellyfin is build with --self-contained
so no dotnet required for runtime.
# dotnet required for building the RPM
# Fedora
$ sudo dnf copr enable @dotnet-sig/dotnet
# CentOS
$ sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
TODO
- OpenSUSE