You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/media-tv/plex-media-server/plex-media-server-1.40.0.79...

92 lines
2.6 KiB

# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit readme.gentoo-r1 systemd unpacker pax-utils
MY_PV="${PV}-c29d4c0c8"
MY_URI="https://downloads.plex.tv/plex-media-server-new"
DESCRIPTION="Free media library that is intended for use with a plex client"
HOMEPAGE="https://www.plex.tv/"
SRC_URI="
amd64? ( ${MY_URI}/${MY_PV}/debian/plexmediaserver_${MY_PV}_amd64.deb )
arm? ( ${MY_URI}/${MY_PV}/debian/plexmediaserver_${MY_PV}_armhf.deb )
arm64? ( ${MY_URI}/${MY_PV}/debian/plexmediaserver_${MY_PV}_arm64.deb )
x86? ( ${MY_URI}/${MY_PV}/debian/plexmediaserver_${MY_PV}_i386.deb )
"
S="${WORKDIR}"
LICENSE="Plex"
SLOT="0"
KEYWORDS="-* ~amd64 ~arm ~arm64 ~x86"
RESTRICT="bindist"
DEPEND="
acct-group/plex
acct-user/plex"
RDEPEND="${DEPEND}"
PATCHES=(
"${FILESDIR}/${PN}.service.patch"
)
QA_DESKTOP_FILE="usr/share/applications/plexmediamanager.desktop"
QA_PREBUILT="*"
QA_MULTILIB_PATHS=(
"usr/lib/plexmediaserver/lib/.*"
"usr/lib/plexmediaserver/Resources/Python/lib/python2.7/.*"
"usr/lib/plexmediaserver/Resources/Python/lib/python2.7/lib-dynload/_hashlib.so"
)
BINS_TO_PAX_MARK=(
"${ED}/usr/lib/plexmediaserver/Plex Script Host"
"${ED}/usr/lib/plexmediaserver/Plex Media Scanner"
)
src_install() {
# Remove Debian specific files
rm -r "usr/share/doc" || die
# Copy main files over to image and preserve permissions so it is portable
cp -rp usr/ "${ED}" || die
# Make sure the logging directory is created
keepdir /var/log/pms
fowners plex:plex /var/log/pms
keepdir /var/lib/plexmediaserver
fowners plex:plex /var/lib/plexmediaserver
# Install the OpenRC init/conf files
newinitd "${FILESDIR}/${PN}.init.d" ${PN}
newconfd "${FILESDIR}/${PN}.conf.d" ${PN}
# Install systemd service file
systemd_newunit "${ED}"/usr/lib/plexmediaserver/lib/plexmediaserver.service "${PN}.service"
# Add pax markings to some binaries so that they work on hardened setup
local f
for f in "${BINS_TO_PAX_MARK[@]}"; do
pax-mark m "${f}"
done
# Adds the precompiled plex libraries to the revdep-rebuild's mask list
# so it doesn't try to rebuild libraries that can't be rebuilt.
insinto /etc/revdep-rebuild
doins "${FILESDIR}"/80plexmediaserver
readme.gentoo_create_doc
}
pkg_postinst() {
readme.gentoo_print_elog
einfo
ewarn "IMPORTANT: This version makes changes to the database which will require 1.31.2 or higher to start"
ewarn "Please also be patient when updating to this version, initial run may take time as database is upgraded"
ewarn "Full release announcement, including instructions for rollback: https://forums.plex.tv/t/plex-media-server/30447/612"
}