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.17.0.ebuild @ 209:e4c117d62d99

hopefully fixed cert-sync problem on systems where no prior sync has happened
author gsnerf <gsnerf@gsnerf.de>
date Mon, 05 Jun 2017 16:32:04 +0200
parents c1e2a1ea65b6
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
206
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
1 # Copyright 1999-2015 Gentoo Foundation
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
2 # Distributed under the terms of the GNU General Public License v2
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
3 # $Header: $
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
4
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
5 EAPI="5"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
6
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
7 inherit eutils user git-r3
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
8
a361d7f74ad9 actually added the new emby-server ebuild...
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."
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
10 HOMEPAGE="http://emby.media/"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
11 KEYWORDS="-* ~arm ~amd64 ~x86"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
12 SRC_URI="https://github.com/MediaBrowser/Emby/archive/${PV}.tar.gz"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
13 SLOT="0"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
14 LICENSE="GPL-2"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
15 IUSE=""
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
16 RESTRICT="mirror test"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
17
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
18 RDEPEND=">=dev-lang/mono-4.6.0
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
19 >=media-video/ffmpeg-2[vpx]
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
20 media-gfx/imagemagick[jpeg,jpeg2k,webp,png]
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
21 !media-tv/mediabrowser-server
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
22 >=dev-db/sqlite-3.0.0
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
23 dev-dotnet/referenceassemblies-pcl"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
24 DEPEND="app-arch/unzip ${RDEPEND}"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
25
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
26 INSTALL_DIR="/opt/emby-server"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
27 DATA_DIR="/var/lib/emby-server"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
28 STARTUP_LOG="/var/log/emby-server_start.log"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
29 INIT_SCRIPT="${ROOT}/etc/init.d/emby-server"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
30
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
31 # INSTALL
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
32 # #######################################################################################################
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
33
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
34 pkg_setup() {
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
35 einfo "creating user for Emby"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
36 enewgroup emby
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
37 enewuser emby -1 /bin/bash ${INSTALL_DIR} "emby"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
38 }
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
39
a361d7f74ad9 actually added the new emby-server ebuild...
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
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
41 src_unpack() {
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
42 unpack ${A}
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
43 mv Emby-${PV} emby-server-${PV}
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
44 }
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
45
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
46 src_prepare() {
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
47 MAGICKWAND=$(ldconfig -p | grep MagickWand.*.so$ | cut -d" " -f4)
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
48 MAGICKWAND=${MAGICKWAND##*/}
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
49 einfo "adapting to imagemagick library to: ${MAGICKWAND}"
a361d7f74ad9 actually added the new emby-server ebuild...
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!"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
51 }
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
52
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
53
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
54 src_compile() {
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
55 einfo "updating root certificates for mono certificate store"
209
e4c117d62d99 hopefully fixed cert-sync problem on systems where no prior sync has happened
gsnerf <gsnerf@gsnerf.de>
parents: 207
diff changeset
56 addwrite "/usr/share/.mono/keypairs"
207
c1e2a1ea65b6 updated emby-server to new version using the new solution, also switched from mozroots to cert-sync
gsnerf <gsnerf@gsnerf.de>
parents: 206
diff changeset
57 cert-sync /etc/ssl/certs/ca-certificates.crt
206
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
58 einfo "now actually compile"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
59 xbuild /p:Configuration="Release Mono" /p:Platform="Any CPU" MediaBrowser.Mono.sln || die "building failed"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
60 }
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
61
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
62 src_install() {
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
63 einfo "preparing startup scripts"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
64 newinitd "${FILESDIR}"/emby-server.init_3 ${PN}
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
65 newconfd "${FILESDIR}"/emby-server.conf ${PN}
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
66
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
67 einfo "preparing startup log file"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
68 dodir /var/log/
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
69 touch ${D}${STARTUP_LOG}
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
70 chown emby:emby ${D}${STARTUP_LOG}
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
71
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
72 einfo "installing compiled files"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
73 diropts -oemby -gemby
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
74 dodir ${INSTALL_DIR}
a361d7f74ad9 actually added the new emby-server ebuild...
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?"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
76 chown emby:emby -R ${D}${INSTALL_DIR}
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
77
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
78 einfo "prepare data directory"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
79 dodir ${DATA_DIR}
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
80 }
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
81
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
82 pkg_postinst() {
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
83 einfo "emby-server was installed to ${INSTALL_DIR}, to start please use the init script provided."
a361d7f74ad9 actually added the new emby-server ebuild...
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."
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
85 einfo ""
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
86
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
87 if [[ -d "/usr/lib/mediabrowser-server" || -h "/usr/lib/mediabrowser-server" ]]; then
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
88 ewarn "ATTENTION: You seem to have moved from the former mediabrowser-server package:"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
89 ewarn "don't forget to migrate your original data directory before the first start!"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
90 ewarn "To do that move"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
91 ewarn " /usr/lib/mediabrowser-server"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
92 ewarn "to"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
93 ewarn " ${DATA_DIR}"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
94 ewarn "and change owner status from mediabrowser:mediabrowser to emby:emby!"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
95 ewarn " chown -R emby:emby ${DATA_DIR}"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
96 fi
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
97
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
98 if [[ -d "/usr/lib/emby-server" || -h "/usr/lib/emby-server" ]]; then
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
99 ewarn "ATTENTION: You seem to have existing program data at /usr/lib/emby-server!"
a361d7f74ad9 actually added the new emby-server ebuild...
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"
a361d7f74ad9 actually added the new emby-server ebuild...
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!"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
102 fi
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
103 }
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
104
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
105 # UNINSTALL
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
106 # #######################################################################################################
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
107
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
108 pkg_prerm() {
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
109 einfo "Stopping running instances of Emby Server"
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
110 if [ -e "${INIT_SCRIPT}" ]; then
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
111 ${INIT_SCRIPT} stop
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
112 fi
a361d7f74ad9 actually added the new emby-server ebuild...
gsnerf <gsnerf@gsnerf.de>
parents:
diff changeset
113 }