forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
media-tv/plex-media-server: version bump
Package-Manager: Portage-2.3.14, Repoman-2.3.6
- Loading branch information
Jonathan Vasquez
committed
Dec 8, 2017
1 parent
bc0e91a
commit d65c0d4
Showing
2 changed files
with
138 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
DIST plexmediaserver_1.10.0.4523-648bc61d4_amd64.deb 108257188 BLAKE2B 7b8ab929ef059ba7f2c6aea061348216361f0fa5af19a5e70fed134760e615f2bd28133a37337660711b3de4af883aede52e63e1a585b6ab15ca93d6ec7e8251 SHA512 8b4111c73ad04e28a2b8040fbd60b8272e2556d4a492442c25fab2b681eb7dc1477e5ec30261884a622eb9c6ab99836318c97cbb726ac07c31495c450258c0cc | ||
DIST plexmediaserver_1.8.1.4139-c789b3fbb_amd64.deb 107251412 SHA256 30b907c94d5b76991831fd3555e4447724683c4e01617a71d39bfe5be11af126 SHA512 17b6de15920013e74f0a634f004b9b599bebd266412f694963967c766e8879b54485a9b07178a575d246c6bc53b202e38da89e293fd7219d0cf993bf9e27afec WHIRLPOOL c907c627a8e693b5b029958e87b01b8c27e3f40ec6ddc04d9b95e67570260ac344bfad9aa35dfdd2ec13f492f7fed3817373c713b5163b7f9c22db1970b8091f | ||
DIST plexmediaserver_1.9.4.4325-1bf240a65_amd64.deb 107815492 SHA256 3f0860543aeb33ba3162e3018939b23dd46994c4948b58f278a9b28aa073062e SHA512 9b42666eef9f6d300913c27866a0c51fd857438462064948b71f817a0c8447aba75c5252fc763659c20d7992b23b1dfd05fa6d2ee70e7f7b5b5f651de12cf41b WHIRLPOOL 02873e05e4df4f8dd850de5bd5cd33354e51f1c5791ed8497b07a03c21f0533c28bc18f893c859ffd403949c69d8c6b5d6bea089155e9eff5e944e2f74aec660 | ||
DIST plexmediaserver_1.9.6.4429-23901a099_amd64.deb 107910190 SHA256 09586466a00ecc691437446d08252c71f9eb84c79667f70fb43ba6f0fc09bd33 SHA512 335856c45c765f9cb68091a834b137ad0beafb77a8080536f34d6d82d33f4c5706bf6781f3c49c2d75daacd0adfd3d1ee79e05b39af5956d26dd33b19be0450f WHIRLPOOL 5042ee715376ad9b9a7d525ec875692db1cb198bba1ff03d319375387febed89956f8c49dd250a9cef049aa0909ef98f018cbb7d6cd3888ea32ca83350009b2c | ||
DIST plexmediaserver_1.9.4.4325-1bf240a65_amd64.deb 107815492 BLAKE2B 3435bbc026780e367abd33c3acae8a8cdfa824f4efbf9dffeac222251d2863be6e4ac3b97c697cde31c62f2d33c7c5e0fe7d00c369b8c9b3174b5cef3580e127 SHA512 9b42666eef9f6d300913c27866a0c51fd857438462064948b71f817a0c8447aba75c5252fc763659c20d7992b23b1dfd05fa6d2ee70e7f7b5b5f651de12cf41b | ||
DIST plexmediaserver_1.9.6.4429-23901a099_amd64.deb 107910190 BLAKE2B 5d137c9c8f5490f63897155d6ce11b902b197223f080954132530c1550a48dc4a427988ea20035b3701485dff77593b9214e8e8d58effea46f2a895ca402d7f1 SHA512 335856c45c765f9cb68091a834b137ad0beafb77a8080536f34d6d82d33f4c5706bf6781f3c49c2d75daacd0adfd3d1ee79e05b39af5956d26dd33b19be0450f |
135 changes: 135 additions & 0 deletions
135
media-tv/plex-media-server/plex-media-server-1.10.0.ebuild
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,135 @@ | ||
# Copyright 1999-2017 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=6 | ||
|
||
PYTHON_COMPAT=( python2_7 ) | ||
inherit eutils user systemd unpacker pax-utils python-single-r1 | ||
|
||
MINOR_VERSION="4523-648bc61d4" | ||
|
||
_APPNAME="plexmediaserver" | ||
_USERNAME="plex" | ||
_SHORTNAME="${_USERNAME}" | ||
_FULL_VERSION="${PV}.${MINOR_VERSION}" | ||
|
||
URI="https://downloads.plex.tv/plex-media-server" | ||
|
||
DESCRIPTION="A free media library that is intended for use with a plex client." | ||
HOMEPAGE="http://www.plex.tv/" | ||
SRC_URI="amd64? ( ${URI}/${_FULL_VERSION}/plexmediaserver_${_FULL_VERSION}_amd64.deb )" | ||
SLOT="0" | ||
LICENSE="Plex" | ||
RESTRICT="bindist strip" | ||
KEYWORDS="-* ~amd64" | ||
REQUIRED_USE="${PYTHON_REQUIRED_USE}" | ||
|
||
DEPEND=" | ||
sys-apps/fix-gnustack | ||
dev-python/virtualenv[${PYTHON_USEDEP}]" | ||
|
||
RDEPEND=" | ||
net-dns/avahi | ||
${PYTHON_DEPS}" | ||
|
||
QA_DESKTOP_FILE="usr/share/applications/plexmediamanager.desktop" | ||
QA_PREBUILT="*" | ||
QA_MULTILIB_PATHS=( | ||
"usr/lib/${_APPNAME}/.*" | ||
"usr/lib/${_APPNAME}/Resources/Python/lib/python2.7/.*" | ||
) | ||
|
||
EXECSTACKED_BINS=( "${ED%/}/usr/lib/plexmediaserver/libgnsdk_dsp.so*" ) | ||
BINS_TO_PAX_MARK=( "${ED%/}/usr/lib/plexmediaserver/Plex Script Host" ) | ||
|
||
S="${WORKDIR}" | ||
PATCHES=( "${FILESDIR}/virtualenv_start_pms.patch" ) | ||
|
||
pkg_setup() { | ||
enewgroup ${_USERNAME} | ||
enewuser ${_USERNAME} -1 /bin/bash /var/lib/${_APPNAME} "${_USERNAME},video" | ||
python-single-r1_pkg_setup | ||
} | ||
|
||
src_unpack() { | ||
unpack_deb ${A} | ||
} | ||
|
||
src_install() { | ||
# Move the config to the correct place | ||
local CONFIG_VANILLA="/etc/default/plexmediaserver" | ||
local CONFIG_PATH="/etc/${_SHORTNAME}" | ||
dodir "${CONFIG_PATH}" | ||
insinto "${CONFIG_PATH}" | ||
doins "${CONFIG_VANILLA#/}" | ||
sed -e "s#${CONFIG_VANILLA}#${CONFIG_PATH}/${_APPNAME}#g" -i "${S}"/usr/sbin/start_pms || die | ||
|
||
# Remove Debian specific files | ||
rm -rf "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 | ||
local LOGGING_DIR="/var/log/pms" | ||
dodir "${LOGGING_DIR}" | ||
chown "${_USERNAME}":"${_USERNAME}" "${ED%/}/${LOGGING_DIR}" || die | ||
|
||
# Create default library folder with correct permissions | ||
local DEFAULT_LIBRARY_DIR="/var/lib/${_APPNAME}" | ||
dodir "${DEFAULT_LIBRARY_DIR}" | ||
chown "${_USERNAME}":"${_USERNAME}" "${ED%/}/${DEFAULT_LIBRARY_DIR}" || die | ||
|
||
# Install the OpenRC init/conf files | ||
doinitd "${FILESDIR}/init.d/${PN}" | ||
doconfd "${FILESDIR}/conf.d/${PN}" | ||
|
||
_handle_multilib | ||
|
||
# Install systemd service file | ||
local INIT_NAME="${PN}.service" | ||
local INIT="${FILESDIR}/systemd/${INIT_NAME}" | ||
systemd_newunit "${INIT}" "${INIT_NAME}" | ||
|
||
_remove_execstack_markings | ||
_add_pax_markings | ||
|
||
einfo "Configuring virtualenv" | ||
virtualenv -v --no-pip --no-setuptools --no-wheel "${ED}"usr/lib/plexmediaserver/Resources/Python || die | ||
pushd "${ED}"usr/lib/plexmediaserver/Resources/Python &>/dev/null || die | ||
find . -type f -exec sed -i -e "s#${D}##g" {} + || die | ||
popd &>/dev/null || die | ||
} | ||
|
||
pkg_postinst() { | ||
einfo "" | ||
elog "Plex Media Server is now installed. Please check the configuration file in /etc/${_SHORTNAME}/${_APPNAME} to verify the default settings." | ||
elog "To start the Plex Server, run 'rc-config start plex-media-server', you will then be able to access your library at http://<ip>:32400/web/" | ||
} | ||
|
||
# Finds out where the library directory is for this system | ||
# and handles ldflags as to not break library dependencies | ||
# during rebuilds. | ||
_handle_multilib() { | ||
# Prevent revdep-rebuild, @preserved-rebuild breakage | ||
cat > "${T}"/66plex <<-EOF || die | ||
LDPATH="${EPREFIX}/usr/$(get_libdir)/plexmediaserver" | ||
EOF | ||
|
||
doenvd "${T}"/66plex | ||
} | ||
|
||
# Remove execstack flags from some libraries/executables so that it works in hardened setups. | ||
_remove_execstack_markings() { | ||
for f in "${EXECSTACKED_BINS[@]}"; do | ||
# Unquoting 'f' so that expansion works. | ||
fix-gnustack -f ${f} > /dev/null | ||
done | ||
} | ||
|
||
# Add pax markings to some binaries so that they work on hardened setup. | ||
_add_pax_markings() { | ||
for f in "${BINS_TO_PAX_MARK[@]}"; do | ||
pax-mark m "${f}" | ||
done | ||
} |