summaryrefslogtreecommitdiff
path: root/www-apps/jellyfin-bin
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-03-24 01:01:06 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-03-24 01:01:06 +0000
commitf52562a45d967e193210737b55de5f0ff9018b76 (patch)
tree909caa133f3a538fde8ed9dfd9efa42a2c7a0507 /www-apps/jellyfin-bin
parent36fc50e36ed1a4686bb7202aeaff3170b2206124 (diff)
gentoo auto-resync : 24:03:2024 - 01:01:06
Diffstat (limited to 'www-apps/jellyfin-bin')
-rw-r--r--www-apps/jellyfin-bin/Manifest7
-rw-r--r--www-apps/jellyfin-bin/files/jellyfin.confd15
-rw-r--r--www-apps/jellyfin-bin/files/jellyfin.init-r124
-rw-r--r--www-apps/jellyfin-bin/files/jellyfin.service38
-rw-r--r--www-apps/jellyfin-bin/jellyfin-bin-10.8.13.ebuild70
-rw-r--r--www-apps/jellyfin-bin/metadata.xml20
6 files changed, 174 insertions, 0 deletions
diff --git a/www-apps/jellyfin-bin/Manifest b/www-apps/jellyfin-bin/Manifest
new file mode 100644
index 000000000000..141d32e288d6
--- /dev/null
+++ b/www-apps/jellyfin-bin/Manifest
@@ -0,0 +1,7 @@
+AUX jellyfin.confd 620 BLAKE2B 6e34eee798741ca3057f1f2163a4281f96cf1c0063ccfddb72d34a1d8f079e6b4a8c20e26d9c281a885a0810cddfef276c60382f3a2095aa27c469a7da321023 SHA512 ac70b53422fda386a3b6a871055b38b98c2c0b17dfd15973d9e0f8822cb3bd843cbc52dc3407c76231f8b58846b0a7618c8ecb427b2dc6dc49264ea99471784d
+AUX jellyfin.init-r1 864 BLAKE2B 6e63339c0018b2db6a9661836c1665ff932738ee3509a0b3f39ebd1f344d3c9c69d3a824832fc21dc7c825c7fd3efc462b6270be27300b843d533dfe6785d982 SHA512 f221aa9806c37d8f3214c7305bc4589487f462c07058a71fbf0129a1e6ea0544956c752108cfc34d8e89494e91e1313fc5a96c75f194575284f65591fe324d00
+AUX jellyfin.service 832 BLAKE2B e09a02c41f33aeabf5846946df1738e04516acf414041dc84cb8e107cedd546014ae1700af7994aa9643d26cc1edc99190615814353aad846af99d727702bb59 SHA512 f79b13cc2b0de47a31727affd633e9afde04d215fc28b82a6593e9aeaa8ff9c15796ab9aab4651922d2c14d2761e381c9d30c98ee56eeba57cf708bfde3ee73d
+DIST jellyfin_10.8.13_amd64.tar.gz 99122530 BLAKE2B 38c5cdb8f0cb5b20f12d6e682277a87d5bf00d083ce346a97d43e77f69dbe99ab2a7f03cc88c94ce9fee365c79d932ce4e5c62c2a820f3b007f32b5b95b5b101 SHA512 a7c468ec3500ebe5b4eb18d2dfb75f4c41c237e9e61577eab431021b6c7e173375519ba9f163b1c0fc1f7603771067c60b085c15de09b7db8276e33bffe2aa36
+DIST jellyfin_10.8.13_arm64.tar.gz 96059100 BLAKE2B 7b0efda60fa8cd93b0f4dc769d032840da6b2e139fa1a6496fb20270e9bbff7eff6adfdac73fe4a2a9529eb258f7943c50bbb57e4886cc6bf40951fc6b760414 SHA512 b964f1850f2e60e853a6620e957bd67922c0fc823813c193108350cbb7c0d30b4afec80bddb36db4fdc45078f67e1f3398c134fe7ac4a8cd7f38b9bbbbcc3080
+EBUILD jellyfin-bin-10.8.13.ebuild 1941 BLAKE2B 304a91c80ab532e46081479667f076280a755dc539d27a1396efc949b6e1a4b312759eb6c973299d05b02989a50152aadaa248b2b65e4fed16251f2996b92b45 SHA512 7efe7d41b27feb4dc8eab3208e81604b4cce0afdae651c2aa1497ab87acdf0cd6d77ddba8f574ad90c6d6545343833edf1aca6b1732ab8aba026d77a5bcef432
+MISC metadata.xml 649 BLAKE2B 29ce34c89c1300d32c3ff30990ec92e49cfab21d74340d1cd6893650ffda87920348ac5feda5ee68feff3e8adbd8cd6e58548d73879025a206dc82756a99c383 SHA512 d8a36b27ee99f29cf9dfea5cc4a9735732bb11cc5931adb4bfe1d1942378d2477f63417b6a2a694e9691c217d20c5ce84bc8d46af5155c46b99b850c0f561315
diff --git a/www-apps/jellyfin-bin/files/jellyfin.confd b/www-apps/jellyfin-bin/files/jellyfin.confd
new file mode 100644
index 000000000000..310bef364b90
--- /dev/null
+++ b/www-apps/jellyfin-bin/files/jellyfin.confd
@@ -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
diff --git a/www-apps/jellyfin-bin/files/jellyfin.init-r1 b/www-apps/jellyfin-bin/files/jellyfin.init-r1
new file mode 100644
index 000000000000..c45a532d5c0c
--- /dev/null
+++ b/www-apps/jellyfin-bin/files/jellyfin.init-r1
@@ -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}
+}
diff --git a/www-apps/jellyfin-bin/files/jellyfin.service b/www-apps/jellyfin-bin/files/jellyfin.service
new file mode 100644
index 000000000000..f20bfeb3e352
--- /dev/null
+++ b/www-apps/jellyfin-bin/files/jellyfin.service
@@ -0,0 +1,38 @@
+[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
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/www-apps/jellyfin-bin/jellyfin-bin-10.8.13.ebuild b/www-apps/jellyfin-bin/jellyfin-bin-10.8.13.ebuild
new file mode 100644
index 000000000000..ab927c16c0e6
--- /dev/null
+++ b/www-apps/jellyfin-bin/jellyfin-bin-10.8.13.ebuild
@@ -0,0 +1,70 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit pax-utils systemd tmpfiles
+
+DESCRIPTION="Jellyfin puts you in control of managing and streaming your media"
+HOMEPAGE="https://jellyfin.readthedocs.io/en/latest/
+ https://github.com/jellyfin/jellyfin/"
+
+SRC_URI="
+ arm64? (
+ https://repo.jellyfin.org/releases/server/linux/versions/stable/combined/${PV}/jellyfin_${PV}_arm64.tar.gz
+ https://repo.jellyfin.org/archive/linux/stable/${PV}/combined/jellyfin_${PV}_arm64.tar.gz
+ )
+ amd64? (
+ https://repo.jellyfin.org/releases/server/linux/versions/stable/combined/${PV}/jellyfin_${PV}_amd64.tar.gz
+ https://repo.jellyfin.org/archive/linux/stable/${PV}/combined/jellyfin_${PV}_amd64.tar.gz
+ )"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~arm64"
+RESTRICT="mirror test"
+REQUIRED_USE="elibc_glibc"
+
+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#/}/jellyfin ${INST_DIR#/}/createdump"
+
+src_unpack() {
+ unpack ${A}
+ mv jellyfin_${PV} ${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_postinst() {
+ tmpfiles_process jellyfin.conf
+}
diff --git a/www-apps/jellyfin-bin/metadata.xml b/www-apps/jellyfin-bin/metadata.xml
new file mode 100644
index 000000000000..8500bdb0844f
--- /dev/null
+++ b/www-apps/jellyfin-bin/metadata.xml
@@ -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>