megacoffee.net Gentoo overlay - legacy mirror
We have moved to Git. This repository is only provided for compatibility with old installations. Learn how to migrate your installation here.
changeset 219:69bf0e308425
added ebuild for emby-server-3.4.1.0 and introduced systemd support
author | gsnerf <gsnerf@gsnerf.de> |
---|---|
date | Sun, 11 Nov 2018 15:08:42 +0100 |
parents | 68f19d4c4a2e |
children | 5fc6acd937e1 |
files | media-tv/emby-server/Manifest media-tv/emby-server/emby-server-3.4.1.0.ebuild media-tv/emby-server/files/3.4/emby-server.service media-tv/emby-server/files/3.4/emby-server.service.conf media-tv/emby-server/files/emby-server |
diffstat | 5 files changed, 161 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/media-tv/emby-server/Manifest Thu Nov 08 20:49:10 2018 +0100 +++ b/media-tv/emby-server/Manifest Sun Nov 11 15:08:42 2018 +0100 @@ -1,3 +1,6 @@ +AUX 3.4/emby-server.service 321 BLAKE2B 97a042bf5e75bf439722dda59adff3536ec42155e2228993f6fa3fd5540b7e00633c37e1b84b21f2f5da9359d8611495e7e3eb27f7b26381841f4542a369186a SHA512 6aaa37535148c72e5f9b873871d029a22fd6f65655c5e60164e7b927d183f812bcdbe0e10c86ffcad99eaca3b4dd83df1450e00294b27f3fb111d1c4f90dce60 +AUX 3.4/emby-server.service.conf 170 BLAKE2B 49bf0f3fd4751c1f590ce59a74d17a1dc2ab1489dad8e245a83179c8fa5b954b366d35bbda1a859e2615c707af5983a8230e67a93c5f1724d4d6b71efcd953ea SHA512 a0088a958c9378dc821ff8bd967f86a33c759803825634dd799646629f2b8401afeb8b1bf55e61885826410210babd10e2e397382748641ddb8a431f6bd6f800 +AUX emby-server 258 BLAKE2B fec978e642fa281820b66ff5f990cb2c41f607b8404bf7c0c095b9a2144a16b76ab3dc101bef9a9019287114f348a2a5e07d8badd2599a77b15b50dc49c2c606 SHA512 cbffb7ca80f187532ee54f2e1a698f942d5bfb3c9ac49cb4212a8b7664e2ca37e1f3e6a02274a2817630cab2455fe7167275818b0d30aa2812157fda0bd1e09f AUX emby-server.conf 322 BLAKE2B 865cd0d9dbd6b82a8efadfd9ac5931ce58ea188dc6d0077ff389e0a7342354a7cfd6c2b9d11498bdc58c4756f93f6513d050f16e0abbc8246188b2bb491202d5 SHA512 d260f1f6de4af9110e94831b84d756f042ac140fc96640fff06cdaebf4974685f712380afd0cb819f60bcc02bb38c664afcbd6989b65e487494f99bb9a225ac8 AUX emby-server.init_2 1033 BLAKE2B 57ef2245a0b38dca95c641383378e460f416f59a068b6cf17b19bf3311b6bda014549f34b844d32e011afb5f3b46fd341779824a9b42d35d1d3a2bddb3b854e1 SHA512 52ec07f40109e574818f2417e5e9593c5e8890a94aab5e88c4cb8d0c599d4825d167cc5adb57a6dfe657050dffee2e8f329c7cbef1aa653d84bfbada8080be16 AUX emby-server.init_3 1034 BLAKE2B a1d757d604d7222e645ee861e82460ed9ff578784ae7cb51ccdc70427e18d994c02989268557c4a31ddbb9aeddb478e99f94203b5b47fdc8901fb38519c0c6c0 SHA512 094f6cb7a8f90e5aefecc62ab6826173ae1ab8e280fe38d047fd80e946cb6f47ff1bf505f340bfba54d77aa551be17682676a80c9a61d6947931e476fd533b24 @@ -5,7 +8,10 @@ DIST 3.0.8500.tar.gz 53827125 BLAKE2B 33fd237a1c12b8afa1e9a194cfa218cf4df1da3e22208e32d25f5ce2eb9bc3b00ec2b7250d8a36b1969fa15262e66bd4a3c1e4e4b4ff0955e37e9228f828eefa SHA512 90689e27628c7d7748022e67de23bb7b45bd8465a18096450a7b17d01764f3fb1a6d22d291a5e7fd5c905f0081bc45f6e1ade1dadd1131e4d36a756ca1fa9541 DIST 3.1.5.tar.gz 41451142 BLAKE2B 8cf3640036e3de0072bb6ceb0bf78ad4585602ef696fe7376a266274722445c4a964d742086b30eb25c8fbd91651b4a75e742925ff61d32552dab7c8f9759d85 SHA512 7506c01db74fa81dfea3fe15ab8e32fe974c38a570df1e87468e097606814677ee09fe607707ad5cc00f484b7d35a2ea823fda8c7f98443a90c753c150be6ca4 DIST 3.2.70.0.tar.gz 69456965 BLAKE2B 5a177db3c0ebcb340e7fea276e277506f14dba4d0b28921a6ad1f7874de4e7d69d2ab9fb5e37f27043f26f7d382d2be7d402655517068e64612107c803db3c87 SHA512 ed7f6fd15a648575b110c76aa04ef1cb62144a5a0b4884f9f12d0e4382900159392a727efaa3d1275eb6b98f15f186efc169b878321ae328794f0b77f38b1073 +DIST 3.4.1.0.tar.gz 70748346 BLAKE2B 1f2ec738d339f485cc6cadc91ce7a18b72cc1722e133b89848c8eaba524d74b49a23c19da0b6041adf5c6606c1550a9d0e5b3ec8151057bd9927d4e32e0cffde SHA512 a50120b5268fff248e430af6f2c5fdc4145a520f3838841479c7f2e02a93abeda50d7338b1ed2a610a7df63a2d236af2ec9cf8efd829c184796cf67981efa955 EBUILD emby-server-3.0.8500.ebuild 3930 BLAKE2B a0f11601c99235d26203ac20c10045cb6eabd7f641b26f768ee192beffda5d013b6f303f3632a17bf4ec2235924b7c7251484fa0b394d7e79e78405bcc29ccdd SHA512 a70675b9944f382efe78a868c9bbb1bf761d6b05daf22d38373f3c294a37ada0fd7b2a0285c3e06a880abf7c807a195dea61fa4d0f7661aa3ce92d9ab00082af EBUILD emby-server-3.1.5.ebuild 3966 BLAKE2B ed4c71642dd168d1e1215115a2e32bef38c9dd549c60cdf86c67115e9ef0dae912c85564df4b74aa652e32bf1e05ce4d0395e8a97395406129a45f5f185411bd SHA512 61c4c14d1f0cd5732ae14d3162bacf60510560ae678fc956b1eb8684ff5b9366ffe95f03d258f64e54b0af883a97aa59649b9be91dde08dcd8ec1654a78bad3f EBUILD emby-server-3.2.70.0-r1.ebuild 4216 BLAKE2B bd714c808750642ce6f06295f929415b9725f6e873449755f95cd1077dc781a0011705a1ae071f83ca4a540a53a011e4e36865020e1c088ed85743f0daf2424d SHA512 aca53e5f77686807f2d7bef66a3fbcaddebb0a6c7d003ff243944b154d536f23446c1aba85273d4a071ba7db64bb1f664325fa73c7e0509acf392369bc66a0cf +EBUILD emby-server-3.4.1.0.ebuild 4676 BLAKE2B 6e948498f8b5e283a48e52e777427164b6877d79442da5e2368f5383542965c268180b8131b2b8770701a42f1bc10d5e8b81afc4d7cb22ddb195d662a60588da SHA512 1b9db6c22f15378beeea3ab0cf648f2967c8cd04ac5a3687a6ecd818b146a957a5de38d9637366aa5ebbc0244c4688a207432623951e961593eb5e21221a6a8b EBUILD emby-server-9999.ebuild 3079 BLAKE2B b15ba2a9bcfbd0eb10640f89106eb931820b98d42ea2b7746d057d6bf06ef55e04dfc5cd721aab3965e3235076eb2a6c28d659d363d94166cdf383b978c71746 SHA512 1febd22bfe38090668cc391fbebee8cd5a71f9ec678a224a9ed0bf29f76a9940c3016b7d20b5209d9e8d871cdd185c0ab0f2642ce4653407497233f1e3b9207e +MISC emby-server-3.5.2.0.ebuild.broken 4363 BLAKE2B 7e1cb9e6cd1bd88a9184e26c90e0e958fe7dc3d5ef3bf8d4888085bae4f3f1d747c3a2d76cc751f849da627ffce51c4d1f0e44a85651ffc8441fe9b2ecd5930c SHA512 716de594f905d4e9237e7406c22b9ec90966d9048984dc73b68e9184de73ef8bd5766a3b38187446cc62ca718030fb025ee6f7d78f5d86b470d233f684c9f506
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/media-tv/emby-server/emby-server-3.4.1.0.ebuild Sun Nov 11 15:08:42 2018 +0100 @@ -0,0 +1,127 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="5" + +inherit eutils user git-r3 dotnet systemd + +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." +HOMEPAGE="http://emby.media/" +KEYWORDS="-* ~arm ~amd64 ~x86" +SRC_URI="https://github.com/MediaBrowser/Emby/archive/${PV}.tar.gz" +SLOT="0" +LICENSE="GPL-2" +RESTRICT="mirror test" + +RDEPEND=">=dev-lang/mono-5.4.0 + >=media-video/ffmpeg-2[vpx] + media-gfx/imagemagick[jpeg,jpeg2k,webp,png] + !media-tv/mediabrowser-server + >=dev-db/sqlite-3.0.0 + dev-dotnet/referenceassemblies-pcl + app-misc/ca-certificates" +DEPEND="app-arch/unzip + ${RDEPEND}" + +INSTALL_DIR="/opt/emby-server" +DATA_DIR="/var/lib/emby-server" +STARTUP_LOG="/var/log/emby-server_start.log" +INIT_SCRIPT="${ROOT}/etc/init.d/emby-server" + +# INSTALL +# ####################################################################################################### + +pkg_setup() { + einfo "creating user for Emby" + enewgroup emby + enewuser emby -1 /bin/bash ${INSTALL_DIR} "emby" + + einfo "updating root certificates for mono certificate store" + addwrite "/usr/share/.mono/keypairs" + dotnet_pkg_setup + cert-sync /etc/ssl/certs/ca-certificates.crt +} + +# gentoo expects a specific subfolder in the working directory for the extracted source, so simply extracting won't work here +src_unpack() { + unpack ${A} + mv Emby-${PV} emby-server-${PV} +} + +src_prepare() { + # the user can define the quality of the imagemagic himself, here we try to figure out the correct files to use in our configuration + MAGICKWAND=$(ldconfig -p | grep MagickWand.*.so$ | cut -d" " -f4) + MAGICKWAND=${MAGICKWAND##*/} + einfo "adapting to imagemagick library to: ${MAGICKWAND}" + sed -i -e "s/\"libMagickWand-6.Q8.so\"/\"${MAGICKWAND}\"/" MediaBrowser.Server.Mono/ImageMagickSharp.dll.config || die "could not update libMagickWand reference!" +} + + +src_compile() { + addpredict "/etc/mono/registry" + xbuild /p:Configuration="Release Mono" /p:Platform="Any CPU" MediaBrowser.sln || die "building failed" +} + +src_install() { + einfo "installing compiled files" + diropts -oemby -gemby + dodir ${INSTALL_DIR} + cp -R ${S}/MediaBrowser.Server.Mono/bin/Release/* ${D}${INSTALL_DIR}/ || die "install failed, possibly compile did not succeed earlier?" + cp "${FILESDIR}"/emby-server ${D}${INSTALL_DIR}/ + chown emby:emby -R ${D}${INSTALL_DIR} + + einfo "prepare data directory" + dodir ${DATA_DIR} + + einfo "preparing basic configuration" + newconfd "${FILESDIR}"/emby-server.conf ${PN} + + einfo "preparing init scripts" + newinitd "${FILESDIR}"/emby-server.init_3 ${PN} + systemd_dounit "${FILESDIR}/3.4/emby-server.service" + systemd_install_serviced "${FILESDIR}/3.4/emby-server.service.conf" + + einfo "preparing startup log file" + dodir /var/log/ + touch ${D}${STARTUP_LOG} + chown emby:emby ${D}${STARTUP_LOG} +} + +pkg_postinst() { + einfo "emby-server was installed to ${INSTALL_DIR}, to start please use the init script provided." + einfo "All data generated and used by Emby can be found at ${DATA_DIR} after the first start." + einfo "" + + if systemd_is_booted; then + ewarn "You seem to be running on systemd, to configure the service please refer to \"/etc/systemd/system/emby-server.service.d/00gentoo.conf\"." + ewarn "Changing /etc/conf.d/emby-server.conf will have no effect!" + fi + + if [[ -d "/usr/lib/mediabrowser-server" || -h "/usr/lib/mediabrowser-server" ]]; then + ewarn "ATTENTION: You seem to have moved from the former mediabrowser-server package:" + ewarn "don't forget to migrate your original data directory before the first start!" + ewarn "To do that move" + ewarn " /usr/lib/mediabrowser-server" + ewarn "to" + ewarn " ${DATA_DIR}" + ewarn "and change owner status from mediabrowser:mediabrowser to emby:emby!" + ewarn " chown -R emby:emby ${DATA_DIR}" + fi + + if [[ -d "/usr/lib/emby-server" || -h "/usr/lib/emby-server" ]]; then + ewarn "ATTENTION: You seem to have existing program data at /usr/lib/emby-server!" + ewarn "Please move that folder to ${DATA_DIR} before the first start and make sure the folder is owned by emby:emby" + ewarn "The folder /usr/lib/emby-server will be repurposed in one of the next releases, so make sure to clean that directory up!" + fi +} + +# UNINSTALL +# ####################################################################################################### + +pkg_prerm() { + einfo "Stopping running instances of Emby Server" + if [ -e "${INIT_SCRIPT}" ]; then + ${INIT_SCRIPT} stop + fi +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/media-tv/emby-server/files/3.4/emby-server.service Sun Nov 11 15:08:42 2018 +0100 @@ -0,0 +1,13 @@ +[Unit] +Description=Emby Server is a personal media server with apps on just about every device. +After=network.target + +[Service] +Environment="PROGRAMDATA=/var/lib/emby-server" +WorkingDirectory=/opt/emby-server +ExecStart=/opt/emby-server/emby-server +RestartForceExitStatus=3 +User=emby + +[Install] +WantedBy=multi-user.target
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/media-tv/emby-server/files/3.4/emby-server.service.conf Sun Nov 11 15:08:42 2018 +0100 @@ -0,0 +1,4 @@ +# use these configuration options to override the data directory (PROGRAMDATA) or the user to run as +[Service] +#Environment="PROGRAMDATA=/var/lib/emby-server" +#User=emby
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/media-tv/emby-server/files/emby-server Sun Nov 11 15:08:42 2018 +0100 @@ -0,0 +1,11 @@ +#!/bin/sh + +if [ -z $PROGRAMDATA ]; then + export PROGRAMDATA=/var/lib/emby-server +fi + +mono /opt/emby-server/MediaBrowser.Server.Mono.exe \ + -programdata $PROGRAMDATA \ + -ffmpeg /usr/bin/ffmpeg \ + -ffprobe /usr/bin/ffprobe \ + -restartexitcode 3