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-9999.ebuild @ 66:bcbb5c3d4a99

initial commit of dev ebuild
author gsnerf <gsnerf@gsnerf.de>
date Sat, 30 Aug 2014 19:07:20 +0200
parents
children 77b8a9a5604d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
66
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
1 # Copyright 1999-2014 Gentoo Foundation
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
2 # Distributed under the terms of the GNU General Public License v2
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
3 # $Header: $
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
4
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
5 EAPI="5"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
6
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
7 inherit eutils user
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
8
bcbb5c3d4a99 initial commit of dev ebuild
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."
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
10 HOMEPAGE="http://mediabrowser.tv/"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
11 KEYWORDS="-* ~x86 ~amd64"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
12 #SRC_URI="https://github.com/MediaBrowser/MediaBrowser/archive/master.zip"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
13 SRC_URI="https://github.com/gsnerf/MediaBrowser/archive/master.zip"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
14 SLOT="0"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
15 LICENSE="GPL-2"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
16 IUSE=""
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
17 RESTRICT="mirror test"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
18
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
19 RDEPEND=">=dev-lang/mono-3.2.0 >=dev-dotnet/libgdiplus-2.10"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
20 DEPEND="app-arch/unzip ${RDEPEND}"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
21
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
22 INIT_SCRIPT="${ROOT}/etc/init.d/mediabrowser-server"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
23
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
24 # gentoo expects a specific subfolder in the working directory for the extracted source, so simply extracting won't work here
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
25 src_unpack() {
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
26 unpack ${A}
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
27 mv MediaBrowser-master mediabrowser-server-9999
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
28 }
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
29
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
30 src_compile() {
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
31 einfo "updating root certificates for mono certificate store"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
32 mozroots --import --sync
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
33 einfo "now actually compile"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
34 xbuild /p:Configuration="Release Mono" /p:Platform="Any CPU" MediaBrowser.Mono.sln || die "building failed"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
35 }
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
36
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
37 #src_install() {
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
38 # dodir /opt/mediabrowser-server
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
39 # cp -R "${S}/MediaBrowser.Server.Mono/bin/Release Mono" "${D}/opt/mediabrowser-server" || die "install failed"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
40 #}
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
41
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
42 pkg_setup() {
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
43 einfo "creating user for MediaBrowser"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
44 enewgroup mediabrowser
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
45 enewuser mediabrowser -1 /bin/bash /opt/mediabrowser "mediabrowser" --system
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
46 }
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
47
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
48 pkg_preinst() {
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
49 cd ${D}
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
50 einfo "preparing compiled package for install"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
51 mkdir -p opt/mediabrowser-server
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
52 cp -R ${WORKDIR}/${P}/MediaBrowser.Server.Mono/bin/Release\ Mono/* opt/mediabrowser-server/ || die
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
53 cp ${FILESDIR}/start.sh opt/mediabrowser-server/start.sh
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
54 chown mediabrowser:mediabrowser -R opt/mediabrowser-server
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
55 chmod 755 opt/mediabrowser-server/start.sh
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
56
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
57 einfo "adding init script"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
58 mkdir -p etc/init.d
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
59 cp "${FILESDIR}"/initd_1 etc/init.d/mediabrowser-server
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
60 chmod 755 etc/init.d/mediabrowser-server
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
61 mkdir -p var/log
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
62 touch var/log/mediabrowser_start.log
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
63 chown mediabrowser:mediabrowser var/log/mediabrowser_start.log
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
64
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
65 einfo "preparing data directory"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
66 mkdir -p usr/lib/mediabrowser-server
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
67 chown mediabrowser:mediabrowser usr/lib/mediabrowser-server
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
68
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
69 einfo "Stopping running instances of MediaBrowser Server for actuall install"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
70 if [ -e "${INIT_SCRIPT}" ]; then
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
71 ${INIT_SCRIPT} stop
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
72 fi
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
73 }
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
74
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
75 pkg_prerm() {
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
76 einfo "Stopping running instances of Media Server"
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
77 if [ -e "${INIT_SCRIPT}" ]; then
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
78 ${INIT_SCRIPT} stop
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
79 fi
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
80 }
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
81
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
82 pkg_postinst() {
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
83 einfo "MediaBrowser-server was installed to /opt/mediabrowser, to start please use the init script provided."
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
84 einfo "All data generated and used by MediaBrowser can be found at /var/opt/mediabrowser after the first start."
bcbb5c3d4a99 initial commit of dev ebuild
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
85 }