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.6.9.ebuild @ 24:cb6c2ef24667

added ebuild for pms 0.9.6.9
author gsnerf <gsnerf@gsnerf.de>
date Wed, 26 Sep 2012 15:49:08 +0200
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
24
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
1 # Copyright 1999-2011 Gentoo Foundation
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
2 # Distributed under the terms of the GNU General Public License v2
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
3 # $Header: $
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
4
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
5 EAPI="2"
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
6
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
7 inherit eutils
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
8
cb6c2ef24667 added ebuild for pms 0.9.6.9
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."
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
10 HOMEPAGE="http://www.plexapp.com/"
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
11 KEYWORDS="-* ~x86 ~amd64"
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
12 SRC_URI="x86? ( http://cdn.plexapp.com/PlexMediaServer/0.9.6.9.240/plexmediaserver_0.9.6.9.240-8fd9c6a_i386.deb )
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
13 amd64? ( http://cdn.plexapp.com/PlexMediaServer/0.9.6.9.240/plexmediaserver_0.9.6.9.240-8fd9c6a_amd64.deb )"
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
14 SLOT="0"
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
15 LICENSE="PMS-License"
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
16 IUSE=""
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
17
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
18 RDEPEND="net-dns/avahi"
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
19 DEPEND="${RDEPEND}"
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
20
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
21 INIT_SCRIPT="${ROOT}/etc/init/plexmediaserver"
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
22
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
23 pkg_setup() {
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
24 enewgroup plex
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
25 enewuser plex -1 /bin/bash /var/lib/plexmediaserver "plex" --system
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
26 }
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
27
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
28 pkg_preinst() {
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
29 einfo "Unpacking DEB File"
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
30 cd ${WORKDIR}
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
31 ar x ${DISTDIR}/${A}
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
32 mkdir data
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
33 mkdir control
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
34 tar -xzf data.tar.gz -C data
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
35 tar -xzf control.tar.gz -C control
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
36
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
37 einfo "Preparing files for installation"
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
38 # replace debian specific init scripts with gentoo specific ones
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
39 rm data/etc/init.d/plexmediaserver
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
40 rm -r data/etc/init
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
41 cp "${FILESDIR}"/pms_initd_1 data/etc/init.d/plex-media-server
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
42 chmod 755 data/etc/init.d/plex-media-server
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
43 # move the config to the correct place
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
44 mkdir data/etc/plex
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
45 mv data/etc/default/plexmediaserver data/etc/plex/plexmediaserver.conf
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
46 rmdir data/etc/default
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
47 # apply patch for start_pms to use the new config file
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
48 cd data/usr/sbin
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
49 epatch "${FILESDIR}"/start_pms_1.patch
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
50 cd ../../..
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
51 # remove debian specific useless files
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
52 rm data/usr/share/doc/plexmediaserver/README.Debian
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
53 # as the patch doesn't seem to correctly set the permissions on new files do this now
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
54 # now copy to image directory for actual installation
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
55 cp -R data/* ${D}
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
56
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
57 # make sure the logging directory is created
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
58 mkdir ${D}var
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
59 mkdir ${D}var/log
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
60 mkdir ${D}var/log/pms
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
61 chown plex:plex ${D}var/log/pms
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
62
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
63 # also make sure the default library folder is pre created with correct permissions
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
64 mkdir ${D}var/lib
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
65 mkdir ${D}var/lib/plexmediaserver
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
66 chown plex:plex ${D}var/lib/plexmediaserver
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
67
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
68 einfo "Stopping running instances of Media Server"
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
69 if [ -e "${INIT_SCRIPT}" ]; then
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
70 ${INIT_SCRIPT} stop
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
71 fi
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
72 }
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
73
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
74 pkg_prerm() {
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
75 einfo "Stopping running instances of Media Server"
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
76 if [ -e "${INIT_SCRIPT}" ]; then
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
77 ${INIT_SCRIPT} stop
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
78 fi
cb6c2ef24667 added ebuild for pms 0.9.6.9
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
79 }