Commit 1fec2a25 authored by Jerzy Kołosowski's avatar Jerzy Kołosowski

plex update

parent 88f5d01f
2020.01.17 (1.18.5.2260-056ab4be9)
- (Networking) Added prefrence to allow disabling of the relay (#8514)
- (Photos) Support WebP image format in photo libraries (#1082)
- (Prefs) Exposed an advanced preference to disable video transcoding (#10891)
- (Ubuntu/Debian) Add support for SysVinit.
- (Ubuntu/Debian) Improve installation in non-standard environments.
- (Camera Upload) Very large video files could fail to upload (#6880)
- (Collections) Collections were sorted incorrectly in some cases
- (Language) Changes to shared user's audio/subtitle language preferences were not respected. (#10910)
- (Library) Crash scanning single track albums. (#10941)
- (PlayQueue) Deleting the currently playing item in a queue could result in undefined behaviour (#10450)
- (Synology) Improve process of stopping PMS when device is busy.
- (TerraMaster) Libraries created during initial setup could be lost in rare cases.
2019.12.20 (1.18.4.2171-ac2afe5f8)
(DVR) "Upcoming Sports" renamed to "Sports On Later"; filter refined to only have sport events (#10554).
(DVR) Added new "Sports On Now" hub (#10554).
(DVR) Enhanced "TV Shows" Hub, now named "Shows On Now". (#10815)
(Library) Add an "in progress" filter for movies and episodes.
(Library) Added a release date filter for albums.
(Library) Allow using Musicbrainz IDs when manually matching artists and albums.
(Library) Keep track of when items are rated, add filter.
(Preferences) Added more bitrate options to limiting remote per-stream bandwidth (#10778)
(Preferences) Enable "Use hardware-accelerated video encoding" by default.
(DVR) Programs listed under "Recommended" Hub would not sort by airing start datetime (#10554).
(EPG) Allow filtering of EPG data by content rating.
(Library) Fix manual searches for old music album agents.
(Library) Huge speedup to history view in dashboard.
(Library) Read MusicBrainz tags from files to help match the correct release.
(Library) Stop showing recommendations from shared libraries which don't exist anymore.
(Library) Use track filenames as last-ditch track titles. (#10740)
(Music) Read track artist tags in more cases.
(PMS) Server would sometimes return HTTP 404 when scanner was traversing folders. (#10800)
(Transcoder) The server could crash when attempting hardware transcodes on certain Windows systems (#10736)
2019.12.17 (1.18.4.2164-2aa83397b)
2019.12.16 (1.18.3.2156-349e9837e)
- (Dashboard) Add CPU and memory graphs to some new linux-based platforms (#10080)
- (Library) Don't add duplicate files to the PlayQueue. This could occur when a single file contains multiple episodes. (#1340)
- (Library) Track watch status accross multiple episodes when they share the same underlying file. (#1340)
- (NAS) QNAP packages are now signed. (required for QTS 4.4.0 and newer)
- (Web) Updated to 4.12.3
- (Apple) Disable iPhoto and Aperture channels. They can be re-enabled in settings. (#7189)
- (DVR) Change India to require an XMLTV guide since our provider is dropping support. (#10659)
- (DVR) Re-enable signal strength updates for Hauppauge tuners. (#9746)
- (DVR) Recording options "Show Advanced" -> "Limit To Airing Time" would sometimes display incorrect airing times, that were off by 1 hour. (#10536)
- (DVR) Reduce the likelihood of a national lineup being selected by default during setup. (#10211)
- (DVR) Return proper error when recording is skipped because airing is in progress. (#9688)
- (DVR) Support moving multiple files during assimilation. (#9996)
- (Playqueue) Shared users would not see subsequent episodes in playqueues (#10838)
- (Scanner) Some pre-defined directories weren't ignored when scanning (#10671)
- (DVR) Fix for crash when accessing Live TV & DVR.
- Fix crash on Windows with Intel graphics adapter and hardware acceleration enabled (#10736)
2019.12.06 (1.18.3.2129-41af4e729)
- (Dashboard) Add CPU and memory graphs to some new linux-based platforms (#10080)
- (Library) Don't add duplicate files to the PlayQueue. This could occur when a single file contains multiple episodes. (#1340)
- (Library) Track watch status accross multiple episodes when they share the same underlying file. (#1340)
- (NAS) QNAP packages are now signed. (required for QTS 4.4.0 and newer)
- (Web) Updated to 4.12.3
- (Apple) Disable iPhoto and Aperture channels. They can be re-enabled in settings. (#7189)
- (DVR) Change India to require an XMLTV guide since our provider is dropping support. (#10659)
- (DVR) Re-enable signal strength updates for Hauppauge tuners. (#9746)
- (DVR) Recording options "Show Advanced" -> "Limit To Airing Time" would sometimes display incorrect airing times, that were off by 1 hour. (#10536)
- (DVR) Reduce the likelihood of a national lineup being selected by default during setup. (#10211)
- (DVR) Return proper error when recording is skipped because airing is in progress. (#9688)
- (DVR) Support moving multiple files during assimilation. (#9996)
- (Playqueue) Shared users would not see subsequent episodes in playqueues (#10838)
- (Scanner) Some pre-defined directories weren't ignored when scanning (#10671)
- (DVR) Fix for crash when accessing Live TV & DVR.
2019.12.02 (1.18.3.2111-5a96726d0)
- (Dashboard) Add CPU and memory graphs to some new linux-based platforms (#10080)
- (Library) Don't add duplicate files to the PlayQueue. This could occur when a single file contains multiple episodes. (#1340)
- (Library) Track watch status accross multiple episodes when they share the same underlying file. (#1340)
- (NAS) QNAP packages are now signed. (required for QTS 4.4.0 and newer)
- (Web) Updated to 4.12.3
- (Apple) Disable iPhoto and Aperture channels. They can be re-enabled in settings. (#7189)
- (DVR) Change India to require an XMLTV guide since our provider is dropping support. (#10659)
- (DVR) Re-enable signal strength updates for Hauppauge tuners. (#9746)
- (DVR) Recording options "Show Advanced" -> "Limit To Airing Time" would sometimes display incorrect airing times, that were off by 1 hour. (#10536)
- (DVR) Reduce the likelihood of a national lineup being selected by default during setup. (#10211)
- (DVR) Return proper error when recording is skipped because airing is in progress. (#9688)
- (DVR) Support moving multiple files during assimilation. (#9996)
- (Playqueue) Shared users would not see subsequent episodes in playqueues (#10838)
- (Scanner) Some pre-defined directories weren't ignored when scanning (#10671)
2019.11.22 (1.18.2.2058-e67a4e892)
- (DVR) Ability to browse upcoming airings in a library style view (#10556)
- (DVR) Added explanation for partial recording (#10167).
......
AUX add_gentoo_profile_as_platform_version.patch 616 SHA256 b29ec02b808a807a911020d0241d52bdd0838832435e331735480a36b76aa0d8 SHA512 53e99d8a24a23f0c530ab955f5a4a9938c4e06056d3107f899883094690dd9426d0951ea695628351afa3e971a4f59827b6c8dcae323718d24450c74bd78769a WHIRLPOOL 30d2b0d31fef8a7edc18aa40f10de985ac2166c8d3ca9a8300c438628e412e32b859a0cee9d02b8dfb35ce3975cfa50f0d8d52a2c6d1136172698156bc22119a
AUX conf.d/plex-media-server 216 SHA256 d202e6c380248d08a494deabec6087b22d3e0508cbc3bf38e42f822c329662c8 SHA512 d3d68fa58a1c1064803a9607708123302890571e823e5bc26de741bb15bd51db19234636672ff01757cbbcdb984c60663545689fa915761c78c3cf49e6da0f95 WHIRLPOOL 73f4e4ac835c434c7ee3a207d8bcd128510b447df18468b1cf6366fa02cf4dfe3a2299ee1dc40de7fada8d43f0c8ba934b76aa0a821d3de98f18d234e9f87108
AUX init.d/plex-media-server 413 SHA256 2733006ead10955216f5676722f2af729fdbed13b3de706c37e7baaad9995826 SHA512 aeb873a00081f20abd27cc76d395908ae0643bd8aa665557adafef2ed97edbe93c18b55818b49227746f9c3ce4b7a81ceb9132f07d8d873bc7b5a932b944a402 WHIRLPOOL 4e3b19cad2283861f68bbe1e84bf39541a56aab193fb1e17f63a19e951204639734236437d7c8bb863ed1236d0a1228b5173b53660caa995b6dac91fcec3cfbf
AUX plexmediamanager.desktop.new.patch 350 SHA256 e88ef2072b1e4ab588e590880cef480b2d305dff6d4726862e66f46fe2a45b07 SHA512 e7e97ef8d39ff0e9220026d282febaa2613f8cc96253a9f801f1f2af5c60c3780391cdada98f921cf0226156a2347db982cf814e6aa446b07e9ae6b1b96c9525 WHIRLPOOL c8386454863ac04a75a37094cccc344cc81f17697406d74a47aaeec27256d59eac9be703993a035d99812315ec511c5298a4febbeac2c59cabdc3dabedeeb314
AUX systemd/plex-media-server.service 159 SHA256 5dfda2be8f0d49990418ef770fde1be352f637eff7e95d04dd8a7801353a7966 SHA512 9066840efa43b127dd0d4b26ea0552894db97bf48f89003258095986e7d4728e05bee2f49de856777ed3d0b5ec41654c14505bc9867b227b754aeecd0529abd6 WHIRLPOOL 7ba1f4d91f5bdd3d9a59235689b6a864804726e6b4a649c7504d2adc5eb333930dd6f17d0f3be9804c79210503063a06a08e2ee5501437b4d06a24d2f2f717cd
AUX virtualenv_start_pms.patch 483 SHA256 0acd9c9f6f6fa123ac0013c3b998467640116657c1f8f359c88cde2ec56e01b9 SHA512 7ed9e2aac7836fd9b6229c5bcd636f87d53684c31c9bb9bb2bc3aef2c84071d1d2888f34e6bda72a8a3487ab3898facf6dcfeb4534261698bfe0c48cd0f80216 WHIRLPOOL 854cc57105f0e749070cd230d6c0fee327813c1e8cc0faff29396f84d394bf93da6752391ccdfa946d0bf547a1bb8ecc951691b41d45414129eb2017bc8fa49c
DIST plexmediaserver_1.18.2.2058-e67a4e892_amd64.deb 87128218 SHA256 a48082bce73747257ca754198992214ff3fad805fe989ff2fda46052315f38b1 SHA512 d89ea120ec90f4dca5195060335afe3113b69cacb8dd2c99d705ab4faf9e370cc9ae487bb85e20b21f55e5510b9f8d893d90186ac38bd5cc2cf33d388033ccb4 WHIRLPOOL 5d1db300d4fbf9e19b655dea93b2f8a6e05c140391a32bbe925de024719f6c866186f7f6b8bb085273eab17a5ddf502176fab3cb94f96032c5a508ff1e86fabf
EBUILD plex-media-server-1.18.2.2058-r1.ebuild 5378 SHA256 d5043e2808e720b3e10d8d6d2d19234449ab247d834dfb0018b9ece7398f5e23 SHA512 3780fc5eabb0e62cba5c760138e552de99b8d07aa0f55d90bc4011de95e957a43c75876819e5bf2f2cb7190bedcad5f92cfc37beb44adc5179ec73e5c15e819e WHIRLPOOL 1d4eda46e3d46643e167f1031345d94342787eea77e3526073221e81e35139755d3b2d6bbbbbb2353c0455d4f7c697158fa4346278dd1b2c84f9cee42cf580dc
EBUILD plex-media-server-1.18.2.2058.ebuild 5376 SHA256 93c8cdfe6b27dadd791a23f6397b67ed1e65d711af0bd4dfe694cc2214036ac5 SHA512 642aae34e1dcd4922b261f51165f1728c8d98fdbb06c4c3f4586279fbb0abe179e319ad1bbebd207e230ff032d5be29aade7381183b077a68a249f3495a0d028 WHIRLPOOL e4ed64d268c363b1b5b332dcf6e5f97a2fa37000770e7790c57040f45303fb454ea9a662687e4cf32fbd2f3c6660afe167902e469d6ba377cb938c60f0a8bdce
MISC ChangeLog 89068 SHA256 7cbabc1a69529db6607ef1bb36e1f927ed099bdc5c214b92c52814fb0ec6c6b7 SHA512 0ca542b482ff629621cbf5f69cf609554ee0c29bd6157b04dc5ce0d646d48e0ef083e22b67613b60d1ac7a7cc733615061f960568d43e9412be5e6a41186fc17 WHIRLPOOL b7a8f0c059a9ab4ac8641d045bea71677c411914d5ccda40bb98c503ef7f6211237e062df34df0098468bb96b2396fe99155b1ac4a291c22858b232283159808
AUX virtualenv_start_pms_2019.patch 430 SHA256 d545891a119c4b7e4cdbb5eab41f46e61cf9063d70dbb2d4aa9924f5dc4d3a67 SHA512 e6611cf2831701dabba08c4e9cdb8a8689da4cabcc720d4236b8c193ef7bd97e68451c82573f062cd0fdfd8d758cb0f4b7be5f09514b5e08313001e4ad68489b WHIRLPOOL 939f08a6967ff9918084c8893f057e3f7f56fc4e25b41ee61826b56fb2ac1cda4406fa6414cf00b0cfe46a395b87900fbaa79321fb3ebe5faa196307b928993a
AUX virtualenv_start_pms_2020.patch 493 SHA256 063f728a8d0722daffe395451c04f4be50707f1985f65c4a8d002fe6976e78c2 SHA512 4365b118c93552c89f7d2a9603737553f1e9b7eaf9391edd76adadb1323764fd54b33fc6d1ebbaeaf598a43144bfdc6fa00d24cede155cd88a27b09d52f6e966 WHIRLPOOL ccdf8072560e2d1aa958c842ab7885563c8c88af99339bdedc02dfa81568a70d17c8e3255195f6d7c39fc1f704a02226784cfdfe17654c49229f470253bcbe77
DIST plexmediaserver_1.18.4.2171-ac2afe5f8_amd64.deb 86833802 SHA256 d7c9c05f416e024d3b1bf44ecd067fd43c85613f8b94320bfd268c0b4a0bb512 SHA512 b2106a43996ebbddd179101ab7c054ca7576f6cd60892c78354106875a13e22283fdcddfe39041acc2dc60690a40029edd213651938b04f002fe3680da13d707 WHIRLPOOL 17d6220d5b54a0d388673ea08c5e0bc82a7575c7a1b46e15dded5ca81a5677993e468f0e000ef8382b0511fbd68faf054f5d7d834a8e1cd9896b10781c7f6fb0
DIST plexmediaserver_1.18.4.2171-ac2afe5f8_i386.deb 73659238 SHA256 61496a458b3ddecbb5fc0450a3720aafb1ecbe4b3ccf2b06aeec6e3a50943127 SHA512 9641ff170ea3379cf0b6351167206b2923194e831868b1c2245da7bd3a63af12f17ba27c42bd4b4cb8f00bb844e1be6b7427912d1f06096c6e701f579f918d66 WHIRLPOOL 08023a4c569216ba3467f3e7ce553d2d7df7432229a420c44a0669fcf3ebfdb8492b8fcb10557dba0377d2129b4dc9ba62a8d2089abacd4a18e9aa5a6a4c0ccd
DIST plexmediaserver_1.18.5.2260-056ab4be9_amd64.deb 87109412 SHA256 43fbeb767cb559e42bb0d818a086e288274c1a12aca73bffcc74c8237bf6324d SHA512 58927d6e201414284269b961831d8fcfeec84befbee49b4cac437090e2bd685932b59ecd70c26477bf36b80ff06d8dde8ce18f280ed63334cc135c0f3e2681c1 WHIRLPOOL 31b8116a3df2601008cbd985998320eff48fdc3a0c13f4beaa7ed96892471776bec69b3d9abeafeee43bc4784917bb2a3919e147fd900b5c4105f4149117ca94
DIST plexmediaserver_1.18.5.2260-056ab4be9_i386.deb 73979724 SHA256 0457b9704f575b951873583dbe1bad1bd6802498f49c4ccd8395d013d2d85d7e SHA512 927084bfa97d92e9b851893dfb5244a561ff651b1e040fc20cd9184ef646ff8ea53e3a9722dbf073c424d177843aeb57dc8144471dc4ed09fc9a8e1d7ed0fcef WHIRLPOOL 58f5a87232455abaeb9bd619c37bceb5b6e229432f54d0290ff8cff73035ec11d270a98a9163acc56ac777d20f82c0f1a5d786932d6618528b70a01510666dbb
EBUILD plex-media-server-1.18.4.2171.ebuild 4678 SHA256 c182faaaf0b7c65331d55fbca23385c8c4fe7c68b4fb7e32d161621030b30050 SHA512 52227060462ae7629a5ddaaad80b436b55ccd3e0b0313e546c76cc36462676f01d237c410ffe92e330b3f651db170fc6d78910d813541d652030bc714be20242 WHIRLPOOL 8ffbdd87902c1cdaca4002d5297b1ca25f7eb3b0a22f2f06cc25bb636c656396c7e405b4e134f86ac5eb0b560459efb64b59d7f0fa01c306467fcf11c2dcdf01
EBUILD plex-media-server-1.18.5.2260.ebuild 4680 SHA256 4bd5fc7d43561ce85539be56de90e922ce87aa01769b7ecb760cee8623f38035 SHA512 2ecdd50cfe270d467b4b613676baecf536317748d296a2c28b9c33613d3ed0dd19f1ec9062e839229f3431652401ff1cdfa1d9a046856a7f5caf4cd2aaa0d434 WHIRLPOOL 72a7362b385790cf3d26412bd1163fbf4bf820a052ce0e7781825c0b21a54d5b349bb29f90fed4ad5598f1834dfece1797d390c4d00b5babc63c977ab0d0b05e
MISC ChangeLog 95488 SHA256 2d16a2a087a6807f87d60866384d5f4f933f35eb5c7710ef985cc9403374759e SHA512 e3edc519910d0a8a9d7a70785a246ff148b4d9b9338c86c11b24551c59a240c0494258cfc40645dbd678b9c11430e9e04e8f2e444ac9b8ea1497e2e2c8460c83 WHIRLPOOL 515a3fe51f51e3aa0d510653c238418846f439b07962abb337e6b7f8423ad3516cca0679c0bb45240daf9bb8f835041b80017a18edc4cab22fd72dbf86e472ec
MISC metadata.xml 204 SHA256 4a59729f32c56f660840314b13a37f7d224866071518e27d7e0011c9d5f54cc9 SHA512 af986aac43dd32092544662a185f5886ed5a7f0a7c37148513b58423300c8b59912772a37ba7b53c2dde7e1beaa8ae8bf81248d560c4df0b0ae8c5d62ea88c13 WHIRLPOOL 3c0c7ed5a87927c522820e7aa9109af2cb48bd6acb9307f6ec7baecb0c29f41597fdca3e19c6358bf16d08c341b9c301b602debb8f22f23e80fdfae2c56d139c
--- a/usr/sbin/start_pms
+++ b/usr/sbin/start_pms
@@ -4,7 +4,8 @@
export PLEX_MEDIA_SERVER_INFO_VENDOR="$(grep ^NAME= /etc/os-release|awk -F= '{print $2}'|tr -d \" )"
export PLEX_MEDIA_SERVER_INFO_DEVICE="PC"
export PLEX_MEDIA_SERVER_INFO_MODEL="$(uname -m)"
-export PLEX_MEDIA_SERVER_INFO_PLATFORM_VERSION="$(grep ^VERSION= /etc/os-release|awk -F= '{print $2}'|tr -d \" )"
+GENTOO_PROFILE="`readlink /etc/portage/make.profile`"
+export PLEX_MEDIA_SERVER_INFO_PLATFORM_VERSION="${GENTOO_PROFILE#.*/profiles/}"
# change these parameters in /etc/plex/plexmediaserver
export PLEX_MEDIA_SERVER_MAX_PLUGIN_PROCS=6
--- ./usr/share/applications/plexmediaserver.desktop 2019-01-02 13:53:51.000000000 +0100
+++ ./usr/share/applications/plexmediaserver.desktop 2019-01-04 07:52:25.910331212 +0100
@@ -6,4 +6,4 @@
Icon=plexmediaserver
Terminal=false
Type=Application
-Categories=Audio;Music;Video;Player;Media;
+Categories=Audio;Music;Video;Player;AudioVideo;X-Media
diff -Naur a/usr/sbin/start_pms b/usr/sbin/start_pms
--- a/usr/sbin/start_pms 2019-03-01 16:38:26.226238213 +0100
+++ b/usr/sbin/start_pms 2019-03-01 16:37:35.237756784 +0100
--- a/usr/sbin/start_pms 2019-08-08 01:07:58.239646635 +0200
+++ b/usr/sbin/start_pms 2019-08-08 01:09:39.828649755 +0200
@@ -20,6 +20,9 @@
test -f /etc/default/plexmediaserver && . /etc/default/plexmediaserver
......
diff -Naur a/usr/sbin/start_pms b/usr/sbin/start_pms
--- a/usr/sbin/start_pms 2020-01-17 05:17:10.000000000 +0100
+++ b/usr/sbin/start_pms 2020-01-22 11:37:31.352913108 +0100
@@ -29,6 +29,9 @@
export PLEX_MEDIA_SERVER_USER="$PLEX_USER"
fi
+# Activate python virtualenv
+. "$PLEX_MEDIA_SERVER_HOME/Resources/Python/bin/activate"
+
# Create AppSuppDir if not present
if [ ! -d "$PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR" ]; then
mkdir -p "$PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR"
# Copyright 1999-2018 Gentoo Foundation
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=7
PYTHON_COMPAT=( python2_7 )
inherit eutils user systemd unpacker pax-utils python-single-r1
inherit eutils systemd unpacker pax-utils python-single-r1
HASH_VERSION="e67a4e892"
HASH_VERSION="ac2afe5f8"
_APPNAME="plexmediaserver"
_USERNAME="plex"
......@@ -15,20 +15,24 @@ _FULL_VERSION="${PV}-${HASH_VERSION}"
URI="https://downloads.plex.tv/plex-media-server-new"
DESCRIPTION="A free media library that is intended for use with a plex client."
DESCRIPTION="A free media library that is intended for use with a plex client"
HOMEPAGE="https://www.plex.tv/"
SRC_URI="amd64? ( ${URI}/${_FULL_VERSION}/debian/plexmediaserver_${_FULL_VERSION}_amd64.deb )"
SRC_URI="
amd64? ( ${URI}/${_FULL_VERSION}/debian/plexmediaserver_${_FULL_VERSION}_amd64.deb )
x86? ( ${URI}/${_FULL_VERSION}/debian/plexmediaserver_${_FULL_VERSION}_i386.deb )
"
SLOT="public"
LICENSE="Plex"
RESTRICT="bindist strip"
KEYWORDS="-* ~amd64"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DEPEND="
sys-apps/fix-gnustack
dev-python/virtualenv[${PYTHON_USEDEP}]"
DEPEND="dev-python/virtualenv[${PYTHON_USEDEP}]"
BDEPEND="dev-util/patchelf"
RDEPEND="
acct-group/plex
acct-user/plex
net-dns/avahi
${PYTHON_DEPS}"
......@@ -49,17 +53,17 @@ QA_MULTILIB_PATHS=(
"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" )
BINS_TO_PAX_MARK=(
"${ED}/usr/lib/plexmediaserver/Plex Script Host"
"${ED}/usr/lib/plexmediaserver/Plex Media Scanner"
)
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
}
PATCHES=(
"${FILESDIR}/virtualenv_start_pms_2019.patch"
"${FILESDIR}/plexmediamanager.desktop.new.patch"
"${FILESDIR}/add_gentoo_profile_as_platform_version.patch"
)
src_unpack() {
unpack_deb ${A}
......@@ -67,78 +71,64 @@ src_unpack() {
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
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
rm -r "usr/share/doc" || die
# Copy main files over to image and preserve permissions so it is portable
cp -rp usr/ "${ED}" || die
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
keepdir "${LOGGING_DIR}"
local logging_dir="/var/log/pms"
dodir "${logging_dir}"
fowners "${_USERNAME}":"${_USERNAME}" "${logging_dir}"
keepdir "${logging_dir}"
# 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
keepdir "${DEFAULT_LIBRARY_DIR}"
local default_library_dir="/var/lib/${_APPNAME}"
dodir "${default_library_dir}"
fowners "${_USERNAME}":"${_USERNAME}" "${default_library_dir}"
keepdir "${default_library_dir}"
# Install the OpenRC init/conf files
doinitd "${FILESDIR}/init.d/${PN}"
doconfd "${FILESDIR}/conf.d/${PN}"
# Disabling due to Bug 644694
#_handle_multilib
# Mask Plex libraries so that revdep-rebuild doesn't try to rebuild them.
# Plex has its own precompiled libraries.
_mask_plex_libraries_revdep
# Fix RPATH
patchelf --force-rpath --set-rpath '$ORIGIN:$ORIGIN/../../../../../../lib' "${ED}"/usr/lib/plexmediaserver/Resources/Python/lib/python2.7/lib-dynload/_codecs_kr.so || die
# Install systemd service file
local INIT_NAME="${PN}.service"
local INIT="${FILESDIR}/systemd/${INIT_NAME}"
systemd_newunit "${INIT}" "${INIT_NAME}"
systemd_newunit "${FILESDIR}/systemd/${PN}.service" "${PN}.service"
_remove_execstack_markings
_add_pax_markings
# Add pax markings to some binaries so that they work on hardened setup
for f in "${BINS_TO_PAX_MARK[@]}"; do
pax-mark m "${f}"
done
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
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/"
}
# Disabling the follow function due to Bug 644694.
# We shouldn't register plex libraries in global
# library path since this will cause other packages
# on the system to break.
# 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
elog "Plex Media Server is now installed. Please check the configuration"
elog "file in /etc/${_SHORTNAME}/${_APPNAME}"
elog "to verify the default settings."
elog "To start the Plex Server, run 'rc-config start plex-media-server',"
elog "you will then be able to access your library at"
elog "http://<ip>:32400/web/"
}
# Adds the precompiled plex libraries to the revdep-rebuild's mask list
......@@ -153,19 +143,3 @@ _mask_plex_libraries_revdep() {
# then so should we.
echo "SEARCH_DIRS_MASK=\"${EPREFIX}/usr/lib/plexmediaserver\"" > "${ED}"/etc/revdep-rebuild/80plexmediaserver
}
# 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
}
# Copyright 1999-2018 Gentoo Foundation
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=7
PYTHON_COMPAT=( python2_7 )
inherit eutils user systemd unpacker pax-utils python-single-r1
inherit eutils systemd unpacker pax-utils python-single-r1
HASH_VERSION="e67a4e892"
HASH_VERSION="056ab4be9"
_APPNAME="plexmediaserver"
_USERNAME="plex"
......@@ -15,20 +15,24 @@ _FULL_VERSION="${PV}-${HASH_VERSION}"
URI="https://downloads.plex.tv/plex-media-server-new"
DESCRIPTION="A free media library that is intended for use with a plex client."
DESCRIPTION="A free media library that is intended for use with a plex client"
HOMEPAGE="https://www.plex.tv/"
SRC_URI="amd64? ( ${URI}/${_FULL_VERSION}/debian/plexmediaserver_${_FULL_VERSION}_amd64.deb )"
SRC_URI="
amd64? ( ${URI}/${_FULL_VERSION}/debian/plexmediaserver_${_FULL_VERSION}_amd64.deb )
x86? ( ${URI}/${_FULL_VERSION}/debian/plexmediaserver_${_FULL_VERSION}_i386.deb )
"
SLOT="plexpass"
LICENSE="Plex"
RESTRICT="bindist strip"
KEYWORDS="-* ~amd64"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DEPEND="
sys-apps/fix-gnustack
dev-python/virtualenv[${PYTHON_USEDEP}]"
DEPEND="dev-python/virtualenv[${PYTHON_USEDEP}]"
BDEPEND="dev-util/patchelf"
RDEPEND="
acct-group/plex
acct-user/plex
net-dns/avahi
${PYTHON_DEPS}"
......@@ -49,17 +53,17 @@ QA_MULTILIB_PATHS=(
"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" )
BINS_TO_PAX_MARK=(
"${ED}/usr/lib/plexmediaserver/Plex Script Host"
"${ED}/usr/lib/plexmediaserver/Plex Media Scanner"
)
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
}
PATCHES=(
"${FILESDIR}/virtualenv_start_pms_2020.patch"
"${FILESDIR}/plexmediamanager.desktop.new.patch"
"${FILESDIR}/add_gentoo_profile_as_platform_version.patch"
)
src_unpack() {
unpack_deb ${A}
......@@ -67,78 +71,64 @@ src_unpack() {
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
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
rm -r "usr/share/doc" || die
# Copy main files over to image and preserve permissions so it is portable
cp -rp usr/ "${ED}" || die
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
keepdir "${LOGGING_DIR}"
local logging_dir="/var/log/pms"
dodir "${logging_dir}"
fowners "${_USERNAME}":"${_USERNAME}" "${logging_dir}"
keepdir "${logging_dir}"
# 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
keepdir "${DEFAULT_LIBRARY_DIR}"
local default_library_dir="/var/lib/${_APPNAME}"
dodir "${default_library_dir}"
fowners "${_USERNAME}":"${_USERNAME}" "${default_library_dir}"
keepdir "${default_library_dir}"
# Install the OpenRC init/conf files
doinitd "${FILESDIR}/init.d/${PN}"
doconfd "${FILESDIR}/conf.d/${PN}"
# Disabling due to Bug 644694
#_handle_multilib
# Mask Plex libraries so that revdep-rebuild doesn't try to rebuild them.
# Plex has its own precompiled libraries.
_mask_plex_libraries_revdep
# Fix RPATH
patchelf --force-rpath --set-rpath '$ORIGIN:$ORIGIN/../../../../../../lib' "${ED}"/usr/lib/plexmediaserver/Resources/Python/lib/python2.7/lib-dynload/_codecs_kr.so || die
# Install systemd service file
local INIT_NAME="${PN}.service"
local INIT="${FILESDIR}/systemd/${INIT_NAME}"
systemd_newunit "${INIT}" "${INIT_NAME}"
systemd_newunit "${FILESDIR}/systemd/${PN}.service" "${PN}.service"
_remove_execstack_markings
_add_pax_markings
# Add pax markings to some binaries so that they work on hardened setup
for f in "${BINS_TO_PAX_MARK[@]}"; do
pax-mark m "${f}"
done
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
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/"
}
# Disabling the follow function due to Bug 644694.
# We shouldn't register plex libraries in global
# library path since this will cause other packages
# on the system to break.
# 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
elog "Plex Media Server is now installed. Please check the configuration"
elog "file in /etc/${_SHORTNAME}/${_APPNAME}"
elog "to verify the default settings."
elog "To start the Plex Server, run 'rc-config start plex-media-server',"
elog "you will then be able to access your library at"
elog "http://<ip>:32400/web/"
}
# Adds the precompiled plex libraries to the revdep-rebuild's mask list
......@@ -153,19 +143,3 @@ _mask_plex_libraries_revdep() {
# then so should we.
echo "SEARCH_DIRS_MASK=\"${EPREFIX}/usr/lib/plexmediaserver\"" > "${ED}"/etc/revdep-rebuild/80plexmediaserver
}
# 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
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment