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/emby-server-3.2.0.ebuild @ 193:facdf7bfaaa0

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