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-0.9.7.11.ebuild @ 32:8fb6688203b3

added new pms release
author gsnerf <gsnerf@gsnerf.de>
date Tue, 15 Jan 2013 20:00:11 +0100
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
32
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
1 # Copyright 1999-2011 Gentoo Foundation
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
2 # Distributed under the terms of the GNU General Public License v2
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
3 # $Header: $
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
4
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
5 EAPI="2"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
6
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
7 inherit eutils
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
8
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
9 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."
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
10 HOMEPAGE="http://www.plexapp.com/"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
11 KEYWORDS="-* ~x86 ~amd64"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
12 SRC_URI="x86? ( http://plex.r.worldssl.net/PlexMediaServer/0.9.7.11.386-d353989/plexmediaserver_0.9.7.11.386-d353989_i386.deb )
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
13 amd64? ( http://plex.r.worldssl.net/PlexMediaServer/0.9.7.11.386-d353989/plexmediaserver_0.9.7.11.386-d353989_amd64.deb )"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
14 SLOT="0"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
15 LICENSE="PMS-License"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
16 IUSE=""
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
17 RESTRICT="mirror"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
18
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
19 RDEPEND="net-dns/avahi"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
20 DEPEND="${RDEPEND}"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
21
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
22 INIT_SCRIPT="${ROOT}/etc/init/plexmediaserver"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
23
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
24 pkg_setup() {
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
25 enewgroup plex
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
26 enewuser plex -1 /bin/bash /var/lib/plexmediaserver "plex" --system
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
27 }
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
28
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
29 pkg_preinst() {
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
30 einfo "unpacking DEB File"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
31 cd ${WORKDIR}
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
32 ar x ${DISTDIR}/${A}
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
33 mkdir data
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
34 mkdir control
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
35 tar -xzf data.tar.gz -C data
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
36 tar -xzf control.tar.gz -C control
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
37
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
38 einfo "updating init script"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
39 # replace debian specific init scripts with gentoo specific ones
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
40 rm data/etc/init.d/plexmediaserver
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
41 rm -r data/etc/init
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
42 cp "${FILESDIR}"/pms_initd_1 data/etc/init.d/plex-media-server
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
43 chmod 755 data/etc/init.d/plex-media-server
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
44
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
45 einfo "moving config files"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
46 # move the config to the correct place
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
47 mkdir data/etc/plex
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
48 mv data/etc/default/plexmediaserver data/etc/plex/plexmediaserver.conf
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
49 rmdir data/etc/default
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
50
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
51 einfo "cleaning apt config entry"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
52 rm -r data/etc/apt
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
53
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
54 einfo "patching startup"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
55 # apply patch for start_pms to use the new config file
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
56 cd data/usr/sbin
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
57 epatch "${FILESDIR}"/start_pms_1.patch
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
58 cd ../../..
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
59 # remove debian specific useless files
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
60 rm data/usr/share/doc/plexmediaserver/README.Debian
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
61
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
62 # as the patch doesn't seem to correctly set the permissions on new files do this now
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
63 # now copy to image directory for actual installation
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
64 cp -R data/* ${D}
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
65
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
66 einfo "preparing logging targets"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
67 # make sure the logging directory is created
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
68 mkdir ${D}var
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
69 mkdir ${D}var/log
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
70 mkdir ${D}var/log/pms
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
71 chown plex:plex ${D}var/log/pms
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
72
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
73 einfo "prepare default library destination"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
74 # also make sure the default library folder is pre created with correct permissions
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
75 mkdir ${D}var/lib
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
76 mkdir ${D}var/lib/plexmediaserver
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
77 chown plex:plex ${D}var/lib/plexmediaserver
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
78
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
79 einfo "Stopping running instances of Media Server"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
80 if [ -e "${INIT_SCRIPT}" ]; then
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
81 ${INIT_SCRIPT} stop
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
82 fi
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
83 }
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
84
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
85 pkg_prerm() {
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
86 einfo "Stopping running instances of Media Server"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
87 if [ -e "${INIT_SCRIPT}" ]; then
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
88 ${INIT_SCRIPT} stop
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
89 fi
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
90 }
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
91
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
92 pkg_postinst() {
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
93 einfo ""
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
94 elog "Plex Media Server is now fully installed. Please check the configuration file in /etc/plex if the defaults please your needs."
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
95 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/"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
96 einfo ""
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
97
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
98 ewarn "Please note, that the URL to the library management has changed from http://<ip>:32400/manage to http://<ip>:32400/web!"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
99 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!"
8fb6688203b3 added new pms release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
100 }