Files
jellyfin/fedora
AJ Jordan d251c701b9 Use systemd-run(1) in restart.sh
systemd-run(1) runs `systemctl restart` in an isolated systemd unit
that is not subject to process termination as jellyfin.service is shut
down. We adjust the sudoers configuration for this new usage, removing
the old config, since restart.sh is the only user of the sudoers
policy.

Additionally we change `systemctl start` to `systemctl restart` since
there was a race condition where jellyfin.service was not fully
stopped by the time this ran, so `systemctl start` became a noop.
`systemctl restart` on the other hand works whether jellyfin.service is
stopped or not.

The at(1) hack (and the usage of `start` instead of `restart`) is left
in for other init systems since I cannot test on those systems, and
because I don't know of any systemd-run(1) equivalent (although it may
be a non-issue since alternate init systems do not keep track of daemon
children nearly as aggressively as systemd does).
2020-12-04 16:18:26 -08:00
..
2020-11-29 04:15:11 -05:00
2020-03-24 00:01:48 -04:00
2020-12-04 16:18:26 -08:00

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