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/mediabrowser-server/mediabrowser-server-3.0.5362_beta.ebuild @ 72:1faf7f56b9d7

[mediabrowser-server] added beta release
author gsnerf <gsnerf@gsnerf.de>
date Sun, 07 Sep 2014 18:28:34 +0200
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
72
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
1 # Copyright 1999-2014 Gentoo Foundation
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
2 # Distributed under the terms of the GNU General Public License v2
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
3 # $Header: $
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
4
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
5 EAPI="5"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
6
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
7 inherit eutils user
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
8
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
9 DESCRIPTION="MediaBrowser Server is a software that indexes a lot of different kinds of media and allows for them to be retrieved and played through the DLNA protocol on any device capable of processing them."
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
10 HOMEPAGE="http://mediabrowser.tv/"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
11 KEYWORDS="-* ~amd64 ~x86 ~x86_64"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
12 #EGIT_REPO_URI="https://github.com/MediaBrowser/MediaBrowser/"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
13 #EGIT_REPO_URI="https://github.com/gsnerf/MediaBrowser/"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
14 REVISION="914fa073714c99f511ab96d9b151279014f179be"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
15 SRC_URI="https://github.com/MediaBrowser/MediaBrowser/archive/${REVISION}.zip"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
16 SLOT="0"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
17 LICENSE="GPL-2"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
18 IUSE=""
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
19 RESTRICT="mirror test"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
20
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
21 RDEPEND=">=dev-lang/mono-3.2.0 >=dev-dotnet/libgdiplus-2.10"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
22 DEPEND="app-arch/unzip ${RDEPEND}"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
23
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
24 INSTALL_DIR="/opt/mediabrowser-server"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
25 DATA_DIR="/usr/lib/mediabrowser-server"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
26 STARTUP_LOG="/var/log/mediabrowser_start.log"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
27 INIT_SCRIPT="${ROOT}/etc/init.d/mediabrowser-server"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
28
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
29 # gentoo expects a specific subfolder in the working directory for the extracted source, so simply extracting won't work here
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
30 src_unpack() {
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
31 unpack ${A}
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
32 mv MediaBrowser-${REVISION} mediabrowser-server-${PV}
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
33 }
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
34
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
35 src_compile() {
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
36 einfo "updating root certificates for mono certificate store"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
37 mozroots --import --sync
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
38 einfo "now actually compile"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
39 xbuild /p:Configuration="Release Mono" /p:Platform="Any CPU" MediaBrowser.Mono.sln || die "building failed"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
40 }
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
41
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
42 src_install() {
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
43 einfo "preparing startup scripts"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
44 newinitd "${FILESDIR}"/initd_1 ${PN}
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
45 dodir /var/log/
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
46 touch ${D}${STARTUP_LOG}
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
47 chown mediabrowser:mediabrowser ${D}${STARTUP_LOG}
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
48
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
49 einfo "installing compiled files"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
50 diropts -omediabrowser -gmediabrowser
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
51 #insopts -omediabrowser -gmediabrowser
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
52 dodir ${INSTALL_DIR}
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
53 #insinto ${INSTALL_DIR}
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
54 #doins -r "${S}/MediaBrowser.Server.Mono/bin/Release Mono/*"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
55 cp -R ${S}/MediaBrowser.Server.Mono/bin/Release\ Mono/* ${D}${INSTALL_DIR}/ || die "install failed, possibly compile did not succeed earlier?"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
56 chown mediabrowser:mediabrowser -R ${D}${INSTALL_DIR}
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
57
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
58 einfo "prepare data directory"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
59 dodir ${DATA_DIR}
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
60 }
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
61
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
62 pkg_setup() {
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
63 einfo "creating user for MediaBrowser"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
64 enewgroup mediabrowser
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
65 enewuser mediabrowser -1 /bin/bash /opt/mediabrowser "mediabrowser" --system
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
66 }
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
67
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
68 #pkg_preinst() {
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
69 #cd ${D}
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
70 #einfo "preparing compiled package for install"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
71 #mkdir -p opt/mediabrowser-server
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
72 #cp -R ${WORKDIR}/${P}/MediaBrowser.Server.Mono/bin/Release\ Mono/* opt/mediabrowser-server/ || die
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
73 #cp ${FILESDIR}/start.sh opt/mediabrowser-server/start.sh
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
74 #chown mediabrowser:mediabrowser -R opt/mediabrowser-server
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
75 #chmod 755 opt/mediabrowser-server/start.sh
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
76
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
77 #einfo "adding init script"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
78 #mkdir -p etc/init.d
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
79 #cp "${FILESDIR}"/initd_1 etc/init.d/mediabrowser-server
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
80 #chmod 755 etc/init.d/mediabrowser-server
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
81 #mkdir -p var/log
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
82 #touch var/log/mediabrowser_start.log
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
83 #chown mediabrowser:mediabrowser var/log/mediabrowser_start.log
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
84
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
85 #einfo "preparing data directory"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
86 #mkdir -p usr/lib/mediabrowser-server
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
87 #chown mediabrowser:mediabrowser usr/lib/mediabrowser-server
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
88
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
89 #einfo "Stopping running instances of MediaBrowser Server for actual install"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
90 #if [ -e "${INIT_SCRIPT}" ]; then
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
91 # ${INIT_SCRIPT} stop
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
92 #fi
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
93 #}
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
94
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
95 pkg_prerm() {
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
96 einfo "Stopping running instances of Media Server"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
97 if [ -e "${INIT_SCRIPT}" ]; then
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
98 ${INIT_SCRIPT} stop
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
99 fi
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
100 }
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
101
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
102 pkg_postinst() {
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
103 einfo "MediaBrowser-server was installed to /opt/mediabrowser, to start please use the init script provided."
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
104 einfo "All data generated and used by MediaBrowser can be found at /var/opt/mediabrowser after the first start."
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
105 einfo ""
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
106 einfo "If you just updated from an earlier version make sure to restart the service!"
1faf7f56b9d7 [mediabrowser-server] added beta release
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
107 }