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/emby-server-beta/emby-server-beta-3.1.25.ebuild @ 164:2d853a2caaf5

added beta ebuild for emby-server
author gsnerf <gsnerf@gsnerf.de>
date Thu, 16 Jun 2016 21:45:15 +0200
parents
children 58a9a20ec12f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
164
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
1 # Copyright 1999-2015 Gentoo Foundation
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
2 # Distributed under the terms of the GNU General Public License v2
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
3 # $Header: $
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
4
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
5 EAPI="5"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
6
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
7 inherit eutils user git-r3
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
8
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
9 DESCRIPTION="Emby Server (formerly known as 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."
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
10 HOMEPAGE="http://emby.media/"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
11 KEYWORDS="-* ~arm ~amd64 ~x86"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
12 SRC_URI="https://github.com/MediaBrowser/Emby/archive/${PV}.tar.gz"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
13 SLOT="0"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
14 LICENSE="GPL-2"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
15 IUSE=""
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
16 RESTRICT="mirror test"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
17
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
18 RDEPEND=">=dev-lang/mono-3.2.7
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
19 <dev-lang/mono-4.3
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
20 >=media-video/ffmpeg-2[vpx]
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
21 media-gfx/imagemagick[jpeg,jpeg2k,webp,png]
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
22 !media-tv/mediabrowser-server
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
23 !media-tv/emby-server
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
24 >=dev-db/sqlite-3.0.0"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
25 DEPEND="app-arch/unzip ${RDEPEND}"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
26
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
27 INSTALL_DIR="/opt/emby-server"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
28 DATA_DIR="/var/lib/emby-server"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
29 STARTUP_LOG="/var/log/emby-server_start.log"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
30 INIT_SCRIPT="${ROOT}/etc/init.d/emby-server"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
31
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
32 # INSTALL
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
33 # #######################################################################################################
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
34
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
35 pkg_setup() {
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
36 einfo "creating user for Emby"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
37 enewgroup emby
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
38 enewuser emby -1 /bin/bash ${INSTALL_DIR} "emby" --system
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
39 }
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
40
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
41 # gentoo expects a specific subfolder in the working directory for the extracted source, so simply extracting won't work here
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
42 src_unpack() {
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
43 unpack ${A}
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
44 mv Emby-${PV} emby-server-${PV}
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
45 }
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
46
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
47 src_prepare() {
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
48 MAGICKWAND=$(ldconfig -p | grep MagickWand.*.so$ | cut -d" " -f4)
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
49 MAGICKWAND=${MAGICKWAND##*/}
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
50 einfo "adapting to imagemagick library to: ${MAGICKWAND}"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
51 sed -i -e "s/\"libMagickWand-6.Q8.so\"/\"${MAGICKWAND}\"/" MediaBrowser.Server.Mono/ImageMagickSharp.dll.config || die "could not update libMagickWand reference!"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
52 }
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
53
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
54
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
55 src_compile() {
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
56 einfo "updating root certificates for mono certificate store"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
57 mozroots --import --sync
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
58 einfo "now actually compile"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
59 xbuild /p:Configuration="Release Mono" /p:Platform="Any CPU" MediaBrowser.Mono.sln || die "building failed"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
60 }
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
61
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
62 src_install() {
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
63 einfo "preparing startup scripts"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
64 newinitd "${FILESDIR}"/emby-server.init_2 ${PN}
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
65 newconfd "${FILESDIR}"/emby-server.conf ${PN}
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
66
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
67 einfo "preparing startup log file"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
68 dodir /var/log/
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
69 touch ${D}${STARTUP_LOG}
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
70 chown emby:emby ${D}${STARTUP_LOG}
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
71
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
72 einfo "installing compiled files"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
73 diropts -oemby -gemby
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
74 dodir ${INSTALL_DIR}
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
75 cp -R ${S}/MediaBrowser.Server.Mono/bin/Release\ Mono/* ${D}${INSTALL_DIR}/ || die "install failed, possibly compile did not succeed earlier?"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
76 chown emby:emby -R ${D}${INSTALL_DIR}
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
77
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
78 einfo "prepare data directory"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
79 dodir ${DATA_DIR}
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
80 }
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
81
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
82 pkg_postinst() {
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
83 einfo "emby-server was installed to ${INSTALL_DIR}, to start please use the init script provided."
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
84 einfo "All data generated and used by Emby can be found at ${DATA_DIR} after the first start."
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
85 einfo ""
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
86
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
87 if [[ -d "/usr/lib/mediabrowser-server" || -h "/usr/lib/mediabrowser-server" ]]; then
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
88 ewarn "ATTENTION: You seem to have moved from the former mediabrowser-server package:"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
89 ewarn "don't forget to migrate your original data directory before the first start!"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
90 ewarn "To do that move"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
91 ewarn " /usr/lib/mediabrowser-server"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
92 ewarn "to"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
93 ewarn " ${DATA_DIR}"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
94 ewarn "and change owner status from mediabrowser:mediabrowser to emby:emby!"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
95 ewarn " chown -R emby:emby ${DATA_DIR}"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
96 fi
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
97
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
98 if [[ -d "/usr/lib/emby-server" || -h "/usr/lib/emby-server" ]]; then
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
99 ewarn "ATTENTION: You seem to have existing program data at /usr/lib/emby-server!"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
100 ewarn "Please move that folder to ${DATA_DIR} before the first start and make sure the folder is owned by emby:emby"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
101 ewarn "The folder /usr/lib/emby-server will be repurposed in one of the next releases, so make sure to clean that directory up!"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
102 fi
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
103 }
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
104
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
105 # UNINSTALL
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
106 # #######################################################################################################
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
107
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
108 pkg_prerm() {
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
109 einfo "Stopping running instances of Emby Server"
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
110 if [ -e "${INIT_SCRIPT}" ]; then
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
111 ${INIT_SCRIPT} stop
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
112 fi
2d853a2caaf5 added beta ebuild for emby-server
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
113 }