Răsfoiți Sursa

Add a small Bash script to launch Jellyfin, instead of a symlink.
- The symlink causes a problem with SELinux because it understands symlinks.
- This shell script automatically gets the correct SELinux context.

Gandihar 1 an în urmă
părinte
comite
0e6f955912
2 a modificat fișierele cu 6 adăugiri și 1 ștergeri
  1. 3 0
      fedora/jellyfin-selinux-launcher.sh
  2. 3 1
      fedora/jellyfin.spec

+ 3 - 0
fedora/jellyfin-selinux-launcher.sh

@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec /usr/lib64/jellyfin/jellyfin ${@}

+ 3 - 1
fedora/jellyfin.spec

@@ -14,6 +14,7 @@ License:        GPLv2
 URL:            https://jellyfin.org
 URL:            https://jellyfin.org
 # Jellyfin Server tarball created by `make -f .copr/Makefile srpm`, real URL ends with `v%%{version}.tar.gz`
 # Jellyfin Server tarball created by `make -f .copr/Makefile srpm`, real URL ends with `v%%{version}.tar.gz`
 Source0:        jellyfin-server-%{version}.tar.gz
 Source0:        jellyfin-server-%{version}.tar.gz
+Source10:       jellyfin-selinux-launcher.sh
 Source11:       jellyfin.service
 Source11:       jellyfin.service
 Source12:       jellyfin.env
 Source12:       jellyfin.env
 Source13:       jellyfin.override.conf
 Source13:       jellyfin.override.conf
@@ -73,7 +74,7 @@ dotnet publish --configuration Release --self-contained --runtime %{dotnet_runti
 # Jellyfin files
 # Jellyfin files
 %{__mkdir} -p %{buildroot}%{_libdir}/jellyfin %{buildroot}%{_bindir}
 %{__mkdir} -p %{buildroot}%{_libdir}/jellyfin %{buildroot}%{_bindir}
 %{__cp} -r Jellyfin.Server/bin/Release/net7.0/%{dotnet_runtime}/publish/* %{buildroot}%{_libdir}/jellyfin
 %{__cp} -r Jellyfin.Server/bin/Release/net7.0/%{dotnet_runtime}/publish/* %{buildroot}%{_libdir}/jellyfin
-ln -srf %{_libdir}/jellyfin/jellyfin %{buildroot}%{_bindir}/jellyfin
+%{__install} -D %{SOURCE10} %{buildroot}%{_bindir}/jellyfin
 
 
 # Jellyfin config
 # Jellyfin config
 %{__install} -D Jellyfin.Server/Resources/Configuration/logging.json %{buildroot}%{_sysconfdir}/jellyfin/logging.json
 %{__install} -D Jellyfin.Server/Resources/Configuration/logging.json %{buildroot}%{_sysconfdir}/jellyfin/logging.json
@@ -106,6 +107,7 @@ ln -srf %{_libdir}/jellyfin/jellyfin %{buildroot}%{_bindir}/jellyfin
 %attr(755,root,root) %{_libdir}/jellyfin/createdump
 %attr(755,root,root) %{_libdir}/jellyfin/createdump
 %attr(755,root,root) %{_libdir}/jellyfin/jellyfin
 %attr(755,root,root) %{_libdir}/jellyfin/jellyfin
 %{_libdir}/jellyfin/*
 %{_libdir}/jellyfin/*
+%attr(755,root,root) %{_bindir}/jellyfin
 
 
 # Jellyfin config
 # Jellyfin config
 %config(noreplace) %attr(644,jellyfin,jellyfin) %{_sysconfdir}/jellyfin/logging.json
 %config(noreplace) %attr(644,jellyfin,jellyfin) %{_sysconfdir}/jellyfin/logging.json