add working version of jellyfin
This commit is contained in:
		
							
								
								
									
										9
									
								
								www-apps/jellyfin-bin/Manifest
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								www-apps/jellyfin-bin/Manifest
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,9 @@
 | 
			
		||||
AUX jellyfin.confd 620 BLAKE2B 6e34eee798741ca3057f1f2163a4281f96cf1c0063ccfddb72d34a1d8f079e6b4a8c20e26d9c281a885a0810cddfef276c60382f3a2095aa27c469a7da321023 SHA512 ac70b53422fda386a3b6a871055b38b98c2c0b17dfd15973d9e0f8822cb3bd843cbc52dc3407c76231f8b58846b0a7618c8ecb427b2dc6dc49264ea99471784d
 | 
			
		||||
AUX jellyfin.init-r1 864 BLAKE2B 6e63339c0018b2db6a9661836c1665ff932738ee3509a0b3f39ebd1f344d3c9c69d3a824832fc21dc7c825c7fd3efc462b6270be27300b843d533dfe6785d982 SHA512 f221aa9806c37d8f3214c7305bc4589487f462c07058a71fbf0129a1e6ea0544956c752108cfc34d8e89494e91e1313fc5a96c75f194575284f65591fe324d00
 | 
			
		||||
AUX jellyfin.service 859 BLAKE2B 2eba62033723ca123b3078d4b760d8e8f5bb1cb3316c3cbec541b8b74279115969bff1dea7f40bc32973c2d6bad1e8b40c40caa96fc5154005becd5221a6a7a8 SHA512 4c63747afc63796d58d2e2679f3316a2fcd464240c8897aafc708815c866f067fa075350270151ce76f3166f2c61f3da43e7106d1d91a518fe43d45b163ada65
 | 
			
		||||
DIST jellyfin_10.11.0-amd64-musl.tar.xz 85862604 BLAKE2B 176301918816ca9b05e4fb758b00d6ca0ce193f95f6ca772118c75c64a8105c026d6514c6f4a8fa68f0a51a646c3162780aef5dffc399c49c1807d18e1876b09 SHA512 927677ddb7b8bdb9684fc52853615b52d423a878175c6958d8be288c2c1bf022ba6db8898cb16a5a246f5a8304d6b268194a841288766392af63403cdd6e740a
 | 
			
		||||
DIST jellyfin_10.11.0-amd64.tar.xz 85772524 BLAKE2B 467ff024f636a232a3ba0a67bb4994025964dd0c8a654078b818eb239b4818b42dbfe28ff67aede0e7b1687a8fbd798da3d740ae69015c17c151a4baf91af71a SHA512 a979fa1a51b367cf667c1531a0af5da11e448466ab3d82a8b0b6a0488c496dd79f8001701f3809742a24a98bc011d41c7e27865813f9d1db23d1b1331efd956e
 | 
			
		||||
DIST jellyfin_10.11.0-arm64-musl.tar.xz 81416376 BLAKE2B 77ec9c6cf4d9b64f78bb6383c6e0bbdaaf2da576d1f61b309991370bd2f6ff78be864adbfa9e51081b92667ab13b0187bb442f31db651d0636f9992c24c54da9 SHA512 391126529848066e3fbd6b7c29bd0dd07b772b1b7d6e1ecd885d7eb26e14b10953f8c23b67e28c343750668df60cdb354b598a15dc2dab1f7390881e7cc330be
 | 
			
		||||
DIST jellyfin_10.11.0-arm64.tar.xz 81374520 BLAKE2B 51e05339198d5a7695c8bcea4b62a55f1402d9abd20f19c6c64ec511f2cdd52d8ee0ee0eaa41bbe0a805f5b1e6d5288b557a7e498b65c6604ea1af766244fb2e SHA512 5853b81df338a943863fc43e200fe7cae2bfe96dc23fb635b0a1de4fe543f8b8e79cd425ed82bd6d37900c5b07ef5b4382aaec1e6067af1d61152d54c2dc4596
 | 
			
		||||
EBUILD jellyfin-bin-10.11.0.ebuild 3178 BLAKE2B f3777493c75a755139a29b16701fa5fc3efa14b0cddeabf7919781384f0299be0d41753ee8ee2acf509dd3769e1f4baf27e000256b9027e04b01fc791d532929 SHA512 730b694df6c5c58b2dedfbfa59b039bfea0f85116b06cf8be36c5ca7734987314ca943538b6eaeb7f936c8af879e436ab9d1879985bb2486bbb6c50a2a068524
 | 
			
		||||
MISC metadata.xml 649 BLAKE2B 29ce34c89c1300d32c3ff30990ec92e49cfab21d74340d1cd6893650ffda87920348ac5feda5ee68feff3e8adbd8cd6e58548d73879025a206dc82756a99c383 SHA512 d8a36b27ee99f29cf9dfea5cc4a9735732bb11cc5931adb4bfe1d1942378d2477f63417b6a2a694e9691c217d20c5ce84bc8d46af5155c46b99b850c0f561315
 | 
			
		||||
							
								
								
									
										15
									
								
								www-apps/jellyfin-bin/files/jellyfin.confd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								www-apps/jellyfin-bin/files/jellyfin.confd
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,15 @@
 | 
			
		||||
# This is the directory that will hold all Jellyfin data, and is also used as a default base directory for some other paths below.
 | 
			
		||||
#JELLYFIN_DATA_DIR=/var/lib/jellyfin
 | 
			
		||||
 | 
			
		||||
# This is the directory where the Jellyfin logs will be stored.
 | 
			
		||||
#JELLYFIN_LOG_DIR=/var/log/jellyfin
 | 
			
		||||
 | 
			
		||||
# This is the directory containing the server cache.
 | 
			
		||||
#JELLYFIN_CACHE_DIR=/var/cache/jellyfin
 | 
			
		||||
 | 
			
		||||
# This is the directory containing the server configuration files.
 | 
			
		||||
#JELLYFIN_CONFIG_DIR=/etc/jellyfin
 | 
			
		||||
 | 
			
		||||
# To configure Jellyfin to use a proxy, set http_proxy and/or https_proxy
 | 
			
		||||
# export http_proxy=192.168.33.10:3128
 | 
			
		||||
# export https_proxy=192.168.33.10:3129
 | 
			
		||||
							
								
								
									
										24
									
								
								www-apps/jellyfin-bin/files/jellyfin.init-r1
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								www-apps/jellyfin-bin/files/jellyfin.init-r1
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,24 @@
 | 
			
		||||
#!/sbin/openrc-run
 | 
			
		||||
 | 
			
		||||
: ${JELLYFIN_CACHE_DIR:=/var/cache/jellyfin}
 | 
			
		||||
: ${JELLYFIN_LOG_DIR:=/var/log/jellyfin}
 | 
			
		||||
: ${JELLYFIN_DATA_DIR:=/var/lib/jellyfin}
 | 
			
		||||
: ${JELLYFIN_CONFIG_DIR:=/etc/jellyfin}
 | 
			
		||||
 | 
			
		||||
pidfile="/run/${RC_SVCNAME}.pid"
 | 
			
		||||
command="/opt/jellyfin/jellyfin"
 | 
			
		||||
command_args="--logdir ${JELLYFIN_LOG_DIR} --cachedir ${JELLYFIN_CACHE_DIR} --configdir ${JELLYFIN_CONFIG_DIR} --datadir ${JELLYFIN_DATA_DIR}"
 | 
			
		||||
command_user="${RC_SVCNAME}:${RC_SVCNAME}"
 | 
			
		||||
command_background=true
 | 
			
		||||
 | 
			
		||||
start_pre() {
 | 
			
		||||
	# Ensure that our dirs are correct
 | 
			
		||||
	checkpath --directory --owner jellyfin:jellyfin --mode 0775 \
 | 
			
		||||
		${JELLYFIN_LOG_DIR}
 | 
			
		||||
	checkpath --directory --owner jellyfin:jellyfin --mode 0775 \
 | 
			
		||||
		${JELLYFIN_CACHE_DIR}
 | 
			
		||||
	checkpath --directory --owner jellyfin:jellyfin --mode 0775 \
 | 
			
		||||
		${JELLYFIN_CONFIG_DIR}
 | 
			
		||||
	checkpath --directory --owner jellyfin:jellyfin --mode 0775 \
 | 
			
		||||
		${JELLYFIN_DATA_DIR}
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										39
									
								
								www-apps/jellyfin-bin/files/jellyfin.service
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								www-apps/jellyfin-bin/files/jellyfin.service
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,39 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description = Jellyfin Media Server
 | 
			
		||||
After=syslog.target network.target
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
User=jellyfin
 | 
			
		||||
Group=jellyfin
 | 
			
		||||
 | 
			
		||||
Type=simple
 | 
			
		||||
StateDirectory=jellyfin
 | 
			
		||||
CacheDirectory=jellyfin
 | 
			
		||||
LogsDirectory=jellyfin
 | 
			
		||||
ConfigurationDirectory=jellyfin
 | 
			
		||||
ExecStart=/opt/jellyfin/jellyfin --logdir "$LOGS_DIRECTORY" --cachedir "$CACHE_DIRECTORY" --configdir "$CONFIGURATION_DIRECTORY" --datadir "$STATE_DIRECTORY"
 | 
			
		||||
TimeoutStopSec=20
 | 
			
		||||
KillMode=process
 | 
			
		||||
Restart=always
 | 
			
		||||
 | 
			
		||||
PrivateTmp=yes
 | 
			
		||||
PrivateMounts=yes
 | 
			
		||||
ProtectHome=yes
 | 
			
		||||
ProtectSystem=full
 | 
			
		||||
NoNewPrivileges=yes
 | 
			
		||||
ProtectHostname=yes
 | 
			
		||||
ProtectClock=yes
 | 
			
		||||
ProtectKernelTunables=yes
 | 
			
		||||
ProtectKernelModules=yes
 | 
			
		||||
ProtectKernelLogs=yes
 | 
			
		||||
ProtectControlGroups=yes
 | 
			
		||||
RemoveIPC=true
 | 
			
		||||
RestrictRealtime=yes
 | 
			
		||||
DeviceAllow=char-drm rw
 | 
			
		||||
DeviceAllow=char-nvidia-frontend rw
 | 
			
		||||
DeviceAllow=char-nvidia-uvm rw
 | 
			
		||||
DeviceAllow=char-nvidia rw
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=multi-user.target
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										104
									
								
								www-apps/jellyfin-bin/jellyfin-bin-10.11.0.ebuild
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										104
									
								
								www-apps/jellyfin-bin/jellyfin-bin-10.11.0.ebuild
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,104 @@
 | 
			
		||||
# Copyright 2022-2025 Gentoo Authors
 | 
			
		||||
# Distributed under the terms of the GNU General Public License v2
 | 
			
		||||
 | 
			
		||||
EAPI=8
 | 
			
		||||
 | 
			
		||||
inherit pax-utils systemd tmpfiles eapi9-ver
 | 
			
		||||
 | 
			
		||||
DESCRIPTION="Jellyfin puts you in control of managing and streaming your media"
 | 
			
		||||
HOMEPAGE="https://jellyfin.org/
 | 
			
		||||
	https://github.com/jellyfin/jellyfin/"
 | 
			
		||||
MY_PV="${PV//_rc/-rc}"
 | 
			
		||||
MINOR_VER=$(ver_cut 1-2)
 | 
			
		||||
if [[ ${PV} == *rc* ]]; then
 | 
			
		||||
	MY_TYPE="preview"
 | 
			
		||||
else
 | 
			
		||||
	MY_TYPE="stable"
 | 
			
		||||
	KEYWORDS="-* ~amd64 ~arm64"
 | 
			
		||||
fi
 | 
			
		||||
SRC_URI="
 | 
			
		||||
	arm64? (
 | 
			
		||||
		elibc_glibc? (
 | 
			
		||||
			https://repo.jellyfin.org/files/server/linux/${MY_TYPE}/v${MY_PV}/arm64/jellyfin_${MY_PV}-arm64.tar.xz
 | 
			
		||||
		)
 | 
			
		||||
		elibc_musl? (
 | 
			
		||||
			https://repo.jellyfin.org/files/server/linux/${MY_TYPE}/v${MY_PV}/arm64-musl/jellyfin_${MY_PV}-arm64-musl.tar.xz
 | 
			
		||||
		)
 | 
			
		||||
	)
 | 
			
		||||
	amd64? (
 | 
			
		||||
		elibc_glibc? (
 | 
			
		||||
			https://repo.jellyfin.org/files/server/linux/${MY_TYPE}/v${MY_PV}/amd64/jellyfin_${MY_PV}-amd64.tar.xz
 | 
			
		||||
		)
 | 
			
		||||
		elibc_musl? (
 | 
			
		||||
			https://repo.jellyfin.org/files/server/linux/${MY_TYPE}/v${MY_PV}/amd64-musl/jellyfin_${MY_PV}-amd64-musl.tar.xz
 | 
			
		||||
		)
 | 
			
		||||
	)"
 | 
			
		||||
 | 
			
		||||
LICENSE="GPL-2"
 | 
			
		||||
SLOT="0"
 | 
			
		||||
RESTRICT="mirror test"
 | 
			
		||||
 | 
			
		||||
DEPEND="acct-user/jellyfin
 | 
			
		||||
	media-libs/fontconfig
 | 
			
		||||
	sys-libs/zlib"
 | 
			
		||||
RDEPEND="${DEPEND}
 | 
			
		||||
	dev-libs/icu
 | 
			
		||||
	media-video/ffmpeg[vpx,x264]"
 | 
			
		||||
BDEPEND="acct-user/jellyfin"
 | 
			
		||||
 | 
			
		||||
INST_DIR="/opt/jellyfin"
 | 
			
		||||
QA_PREBUILT="${INST_DIR#/}/*.so ${INST_DIR#/}/*.so.* ${INST_DIR#/}/jellyfin ${INST_DIR#/}/createdump"
 | 
			
		||||
 | 
			
		||||
src_unpack() {
 | 
			
		||||
	unpack ${A}
 | 
			
		||||
	mv jellyfin ${P} || die
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
src_prepare() {
 | 
			
		||||
	default
 | 
			
		||||
 | 
			
		||||
	# https://github.com/jellyfin/jellyfin/issues/7471
 | 
			
		||||
	# https://github.com/dotnet/runtime/issues/57784
 | 
			
		||||
	rm libcoreclrtraceptprovider.so || die
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
src_install() {
 | 
			
		||||
	keepdir /var/log/jellyfin
 | 
			
		||||
	fowners jellyfin:jellyfin /var/log/jellyfin
 | 
			
		||||
	keepdir /etc/jellyfin
 | 
			
		||||
	fowners jellyfin:jellyfin /etc/jellyfin
 | 
			
		||||
	insinto ${INST_DIR}
 | 
			
		||||
	dodir ${INST_DIR}
 | 
			
		||||
	doins -r "${S}"/*
 | 
			
		||||
	newtmpfiles - jellyfin.conf <<<"d /var/cache/jellyfin 0775 jellyfin jellyfin -"
 | 
			
		||||
	chmod 755 "${D}${INST_DIR}/jellyfin"
 | 
			
		||||
	newinitd "${FILESDIR}/jellyfin.init-r1" "jellyfin"
 | 
			
		||||
	newconfd "${FILESDIR}"/jellyfin.confd "jellyfin"
 | 
			
		||||
	systemd_dounit "${FILESDIR}/jellyfin.service"
 | 
			
		||||
	pax-mark -m "${ED}${INST_DIR}/jellyfin"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pkg_preinst() {
 | 
			
		||||
	if ver_replacing -gt $MINOR_VER.99; then
 | 
			
		||||
		eerror "Downgrading jellyfin from one minor version to a previous one is not supported."
 | 
			
		||||
		eerror "If you wish to downgrade you must uninstall jellyfin-bin, restore the database"
 | 
			
		||||
		eerror "from a backup and then reinstall jellyfin-bin."
 | 
			
		||||
		die "Downgrade path not supported"
 | 
			
		||||
	fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pkg_postinst() {
 | 
			
		||||
	tmpfiles_process jellyfin.conf
 | 
			
		||||
 | 
			
		||||
	if ver_replacing -lt $MINOR_VER; then
 | 
			
		||||
		ewarn "Jellyfin usually makes backward incompatible database changes in new minor"
 | 
			
		||||
		ewarn "releases. At first startup after an upgrade jellyfin will start a database"
 | 
			
		||||
		ewarn "migration. This may take a long time but must not be aborted or the database"
 | 
			
		||||
		ewarn "could be left in an inconsistant state and must be recreated or restored from"
 | 
			
		||||
		ewarn "backup. Once the migration has started it is no longer possible to downgrade"
 | 
			
		||||
		ewarn "jellyfin without restoring the database from a backup."
 | 
			
		||||
		ewarn ""
 | 
			
		||||
		ewarn "The migration progress can be followed in the startup UI in the web browser"
 | 
			
		||||
		ewarn "or in the jellyfin logs."
 | 
			
		||||
	fi
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										20
									
								
								www-apps/jellyfin-bin/metadata.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								www-apps/jellyfin-bin/metadata.xml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,20 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8"?>
 | 
			
		||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
 | 
			
		||||
<pkgmetadata>
 | 
			
		||||
	<maintainer type="person" proxied="yes">
 | 
			
		||||
		<email>gentoo@wb9.se</email>
 | 
			
		||||
		<name>Fredrik Eriksson</name>
 | 
			
		||||
	</maintainer>
 | 
			
		||||
	<maintainer type="project" proxied="proxy">
 | 
			
		||||
		<email>proxy-maint@gentoo.org</email>
 | 
			
		||||
		<name>Proxy Maintainers</name>
 | 
			
		||||
	</maintainer>
 | 
			
		||||
	<maintainer type="person">
 | 
			
		||||
		<email>candrews@gentoo.org</email>
 | 
			
		||||
		<name>Craig Andrews</name>
 | 
			
		||||
	</maintainer>
 | 
			
		||||
	<upstream>
 | 
			
		||||
		<remote-id type="github">jellyfin/jellyfin</remote-id>
 | 
			
		||||
		<bugs-to>https://github.com/jellyfin/jellyfin/issues</bugs-to>
 | 
			
		||||
	</upstream>
 | 
			
		||||
</pkgmetadata>
 | 
			
		||||
		Reference in New Issue
	
	Block a user