We have moved to Git. This repository is only provided for compatibility with old installations. Learn how to migrate your installation here.

annotate media-tv/plex-media-server/plex-media-server-1.1.4.ebuild @ 181:e86d3ea7f184

updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
author gsnerf <gsnerf@gsnerf.de>
date Sat, 17 Sep 2016 14:05:47 +0200
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
181
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
1 # Copyright 1999-2011 Gentoo Foundation
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
2 # Distributed under the terms of the GNU General Public License v2
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
3 # $Header: $
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
4
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
5 EAPI="2"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
6
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
7 inherit eutils user
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
8
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
9 MAGIC="2757-24ffd60"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
10 # URI_PRE="http://plexapp.com/repo/pool/main/p/plexmediaserver/plexmediaserver_${PV}.${MAGIC}_"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
11 # this does not seem to work atm(/anymore?)
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
12 URI_PRE="https://downloads.plex.tv/plex-media-server/${PV}.${MAGIC}/plexmediaserver_${PV}.${MAGIC}_"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
13
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
14 DESCRIPTION="Plex Media Server is a free media library that is intended for use with a plex client available for OS X, iOS and Android systems. It is a standalone product which can be used in conjunction with every program, that knows the API. For managing the library a web based interface is provided."
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
15 HOMEPAGE="http://www.plexapp.com/"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
16 KEYWORDS="-* ~x86 ~amd64"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
17 SRC_URI="x86? ( ${URI_PRE}i386.deb )
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
18 amd64? ( ${URI_PRE}amd64.deb )"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
19 SLOT="0"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
20 LICENSE="PMS-License"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
21 IUSE="systemd"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
22 RESTRICT="mirror"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
23
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
24 RDEPEND="net-dns/avahi
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
25 !systemd? ( >=sys-apps/openrc-0.13 )"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
26 DEPEND="${RDEPEND}"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
27
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
28 INIT_SCRIPT="${ROOT}/etc/init/plexmediaserver"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
29
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
30 pkg_setup() {
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
31 enewgroup plex
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
32 enewuser plex -1 /bin/bash /var/lib/plexmediaserver "plex" --system
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
33 }
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
34
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
35 pkg_preinst() {
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
36 einfo "unpacking DEB File"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
37 cd ${WORKDIR}
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
38 # ar x ${DISTDIR}/${A}
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
39 mkdir data
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
40 mkdir control
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
41 tar -xzf data.tar.gz -C data
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
42 tar -xzf control.tar.gz -C control
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
43
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
44 einfo "updating init script"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
45 # replace debian specific init scripts with gentoo specific ones
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
46 rm data/etc/init.d/plexmediaserver
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
47 rm -r data/etc/init
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
48 if ! use systemd ; then
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
49 rm -r data/lib/systemd
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
50 cp "${FILESDIR}"/pms_initd_2 data/etc/init.d/plex-media-server
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
51 chmod 755 data/etc/init.d/plex-media-server
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
52 fi
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
53
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
54 einfo "moving config files"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
55 # move the config to the correct place
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
56 mkdir data/etc/plex
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
57 mv data/etc/default/plexmediaserver data/etc/plex/plexmediaserver.conf
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
58 rmdir data/etc/default
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
59
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
60 einfo "cleaning apt config entry"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
61 rm -r data/etc/apt
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
62
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
63 einfo "patching startup"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
64 # apply patch for start_pms to use the new config file
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
65 cd data/usr/sbin
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
66 epatch "${FILESDIR}"/start_pms_1.patch
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
67 cd ../../..
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
68 # remove debian specific useless files
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
69 rm data/usr/share/doc/plexmediaserver/README.Debian
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
70
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
71 # as the patch doesn't seem to correctly set the permissions on new files do this now
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
72 # now copy to image directory for actual installation
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
73 cp -R data/* ${D}
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
74
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
75 einfo "preparing logging targets"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
76 # make sure the logging directory is created
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
77 mkdir ${D}var
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
78 mkdir ${D}var/log
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
79 mkdir ${D}var/log/pms
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
80 chown plex:plex ${D}var/log/pms
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
81
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
82 einfo "prepare default library destination"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
83 # also make sure the default library folder is pre created with correct permissions
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
84 mkdir ${D}var/lib
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
85 mkdir ${D}var/lib/plexmediaserver
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
86 chown plex:plex ${D}var/lib/plexmediaserver
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
87
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
88 einfo "Stopping running instances of Media Server"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
89 if [ -e "${INIT_SCRIPT}" ]; then
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
90 ${INIT_SCRIPT} stop
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
91 fi
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
92 }
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
93
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
94 pkg_prerm() {
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
95 einfo "Stopping running instances of Media Server"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
96 if [ -e "${INIT_SCRIPT}" ]; then
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
97 ${INIT_SCRIPT} stop
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
98 fi
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
99 }
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
100
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
101 pkg_postinst() {
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
102 einfo ""
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
103 elog "Plex Media Server is now fully installed. Please check the configuration file in /etc/plex if the defaults please your needs."
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
104 elog "To start please call '/etc/init.d/plex-media-server start'. You can manage your library afterwards by navigating to http://<ip>:32400/web/"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
105 einfo ""
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
106
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
107 ewarn "Please note, that the URL to the library management has changed from http://<ip>:32400/manage to http://<ip>:32400/web!"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
108 ewarn "If the new management interface forces you to log into myPlex and afterwards gives you an error that you need to be a plex-pass subscriber please delete the folder WebClient.bundle inside the Plug-Ins folder found in your library!"
e86d3ea7f184 updated plex-media-server and adapted openrc init script to 'recent' changes in openrc script names
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
109 }