summaryrefslogtreecommitdiff
path: root/media-tv/tvheadend
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /media-tv/tvheadend
reinit the tree, so we can have metadata
Diffstat (limited to 'media-tv/tvheadend')
-rw-r--r--media-tv/tvheadend/Manifest11
-rw-r--r--media-tv/tvheadend/files/tvheadend-4.0.9-hdhomerun-include.patch27
-rw-r--r--media-tv/tvheadend/files/tvheadend.confd14
-rw-r--r--media-tv/tvheadend/files/tvheadend.initd19
-rw-r--r--media-tv/tvheadend/files/tvheadend.service14
-rw-r--r--media-tv/tvheadend/metadata.xml24
-rw-r--r--media-tv/tvheadend/tvheadend-4.0.9.ebuild116
-rw-r--r--media-tv/tvheadend/tvheadend-9999.ebuild101
8 files changed, 326 insertions, 0 deletions
diff --git a/media-tv/tvheadend/Manifest b/media-tv/tvheadend/Manifest
new file mode 100644
index 000000000000..254394c73b57
--- /dev/null
+++ b/media-tv/tvheadend/Manifest
@@ -0,0 +1,11 @@
+AUX tvheadend-4.0.9-hdhomerun-include.patch 985 SHA256 5b4147ebf7a73301e1f45f285622ebe30826370070a6f4113123f476c122df3a SHA512 860db8a1a0172b200d0eafcc628b086d557433b83025a7744bfc077ec97efec57f63d314f4c29904d75ba42fdb54eb676f384644f601bb0b30d42ee3acf65c58 WHIRLPOOL 058575af90b72360a541a9793851f89add52559dfe6cf37408bc1d79d08551dbe437dcbfc7f19ed92980acf86028ea670220d8bde240f3a4760705b528e4d5cb
+AUX tvheadend.confd 355 SHA256 1dd2bed597ccb84e59beae0ec130287f31a4cc2c2e974708462f08d8885b2e5e SHA512 64ae0cca1e1b46a3ecb2fb4a4ba69ad1dd6a72ce57944b44be28768d293f9cca2ab29067335023f384433e8c75d976fbc4610ca574c930b9891a2f1c75ff4c0b WHIRLPOOL 156a098daf40f42098e3c6862ef307784a882a7e80e269525d702fd17a458b479911c41a3017621cf55cbd96d281fad0de1e6e59b6bb0f0d729cf94d2384343a
+AUX tvheadend.initd 376 SHA256 3803724e39b424e78017857d075159b207d957a642d7cb7a61efd05185205ea1 SHA512 e0cd720289185f9a483901b8d52aec989934423630dfa99d2fec5006bc5c16d6ce013dacd62e2fe2395a77bcd9649dbcc8972cb118c1789ac4427dae3af98c12 WHIRLPOOL d18a0148c166fc28e9ec4a8942e6c36259dd169101b51a1b498c104b4851cac830f2467a799b4e1038aff74f26719057cc1b85fb69d97b0eb7a7e75ccba09852
+AUX tvheadend.service 304 SHA256 e4ed1f5a50620773cbffff9a22d6ea06311965a6ce139eb8d9f67df10986aecd SHA512 96c61ef4082ecf77ca17a377de3698ae2a47c29519e02676a28d1d2813d5f43dfc3b29d8b91a126a7b8da5f38a8dc2cf13044dba285e22235e7782053041207f WHIRLPOOL 704fb969e5d954330e12c1d4cafa588738cfac4c65d2a234cb8d9a46180a9e33ead0532d94d94fce4efaac566859ec21e4d6f548c56b42a89b7a4f82733a5b53
+DIST dtv-scan-tables-2015-02-08-f2053b3.tar.bz2 123415 SHA256 83ed1b669009ef325e5d9ccb897e48b31e15e71e81bff442b3d0bbd650131c77 SHA512 aedf0429c2ec0a4692e19c0b4ae1e8c063a5a0fb8695359aa8f716a7f40fd88435ed8b1d2aec2461de3f49b533d6cd012c2a54d06058a5291781da4adf82d609 WHIRLPOOL afaef58cdf2ce1ca03c0a695dbf13192b544e3c5a0012cc70a55834d0b1034d509174684fd0fe3f2111becbe32aac16cad5d467adc278a4b6b16c7dbd384757f
+DIST tvheadend-4.0.9.tar.gz 15825419 SHA256 cea1106f45e286e8c25e6b2f0a581c28bd85e93ce3801ecaac7041568a214977 SHA512 ba8c6edcef126c6a260a9251b0948747074061c8f16fb20f03b250c6698645172c9396530b7fa44bf9cf4d8305fcece08c672c812ba6c48211edfbb2691fb58e WHIRLPOOL c0db6afa8d16201eab5fb188f81d062f84066037395f7e47e496d377e8207e2ffef021a58e07cba4af1217963fb2541b1822681fd33799113858329e9ff287bf
+EBUILD tvheadend-4.0.9.ebuild 2997 SHA256 e76a61c134900ce8660ff0b7d2063330d7837c49288533438d59971a62c230ed SHA512 f883337bdcb8b892c7891c793e5962c4b66882df69b60f04d78f9137671bfbb63d8acea2f6bdbd39ece155a0b6dc6e9364e3fa6a329411f125ccd6e2943ca83c WHIRLPOOL 051cea3a435a6468384fe712f8c6d801f283461b31e7a64d7adcc47ddcb15dc5acd46d2b85c0a013eae489a6aecc5c9a1a2217f21fd3fb340d54c0a976aa062b
+EBUILD tvheadend-9999.ebuild 2455 SHA256 1a6550f0ea61ec7bb4b7b7c5a638742e5cd6a7f0061c2da7a3d03633cbca4205 SHA512 9e80cc150eba627c07cc62849280f9930b8f1b1ff88e71c638ea920eb971c551ed805a2b9f96a1b7123c82fc80dddc559088c2bdd9d87c2e50a3ad24536474cf WHIRLPOOL c04c80f4f3adbbafbb1b8f1a7dcdce50b7f9b5a9c27d8b69b9d2aacdce001087574d40e4361ed0ef3326c9113e4139970180575f3dbd9e5b8f503b6916dfc58c
+MISC ChangeLog 10445 SHA256 fd24af1e733fab77c9f6efbd8518e6bb7bbf37a6f6982b50f88a3daf4f6ce907 SHA512 c9ba2a58a234ea2b396869c3b477fda67925987214a842d51c699cb1e46708d29b271da42a8ac023a874fe866dd7f1de7ca1ae05b34754f4a490ce1f92bf6c55 WHIRLPOOL d6441556b2b9aa4744672885c421367575596323d4f4ffce5c63e28093d8d46e50ac26fa69cdb64e83594ca9f1477a86b8c84ac53b283f37be828233eacc3ed0
+MISC ChangeLog-2015 1487 SHA256 43bb094efebee39a10638f45ee95b1cf3f28c7382a6e9ff0ad7a2738ccbda5b4 SHA512 9ab2bb9ee52778da4eb57e649770ca88ed9e922b4ebcf8e792d2ea56f029287a3a0ba1fd79c644a93ea3524a6d178b4edc5ab2419d21780f032154fff0169423 WHIRLPOOL 005553c8f4468766deccde5f4b9e3f3d98cadc1418807899d4297510c53c418fea9d9e31faad502ae80c72061fadf81749e6b62bb1fdedce52e960a7ea27314f
+MISC metadata.xml 1080 SHA256 e4eba5c862151ba15339d82a5722e402fd879d7d2517bf16ce4b0100d7963e53 SHA512 c73fe203e28350af2dc3d88fa9a8d4179d3171e4e07f24b7928abe4a4f95eca0c092b6eb2a0534e4b13045722da02cb691fe009669b683238978f14d5bf6e591 WHIRLPOOL 6dcfc45c179b926fa1d1629dc36df14736b793b72503aacae72507924ca086d930c464f455378ba2e5da76dac4d4af16169eaaba9ca21e1115ce6d58aa273bcc
diff --git a/media-tv/tvheadend/files/tvheadend-4.0.9-hdhomerun-include.patch b/media-tv/tvheadend/files/tvheadend-4.0.9-hdhomerun-include.patch
new file mode 100644
index 000000000000..8a0768fa6f02
--- /dev/null
+++ b/media-tv/tvheadend/files/tvheadend-4.0.9-hdhomerun-include.patch
@@ -0,0 +1,27 @@
+diff --git a/configure b/configure
+index 47d2cf2..6f9fcc5 100755
+--- a/configure
++++ b/configure
+@@ -290,7 +290,7 @@ if enabled hdhomerun_static; then
+ else
+
+ if enabled_or_auto hdhomerun_client; then
+- if check_cc_header 'libhdhomerun/hdhomerun' libhdhomerun; then
++ if check_cc_header 'hdhomerun/hdhomerun' libhdhomerun; then
+ enable hdhomerun_client
+ LDFLAGS="$LDFLAGS -lhdhomerun"
+ fi
+diff --git a/src/input/mpegts/tvhdhomerun/tvhdhomerun_private.h b/src/input/mpegts/tvhdhomerun/tvhdhomerun_private.h
+index 962627a..6d1c52b 100644
+--- a/src/input/mpegts/tvhdhomerun/tvhdhomerun_private.h
++++ b/src/input/mpegts/tvhdhomerun/tvhdhomerun_private.h
+@@ -24,7 +24,8 @@
+ #include "htsbuf.h"
+ #include "tvhdhomerun.h"
+
+-#include <libhdhomerun/hdhomerun.h>
++#include <hdhomerun/hdhomerun.h>
++#include <hdhomerun/hdhomerun_debug.h>
+
+ typedef struct tvhdhomerun_device_info tvhdhomerun_device_info_t;
+ typedef struct tvhdhomerun_device tvhdhomerun_device_t;
diff --git a/media-tv/tvheadend/files/tvheadend.confd b/media-tv/tvheadend/files/tvheadend.confd
new file mode 100644
index 000000000000..8be4a5dadce9
--- /dev/null
+++ b/media-tv/tvheadend/files/tvheadend.confd
@@ -0,0 +1,14 @@
+# /etc/conf.d/tvheadend: config file for /etc/init.d/tvheadend
+# See the tvheadend(1) manpage for more info.
+
+# Run Tvheadend as this user.
+TVHEADEND_USER="tvheadend"
+
+# Run Tvheadend as this group.
+TVHEADEND_GROUP="video"
+
+# Path to Tvheadend config.
+TVHEADEND_CONFIG="/etc/tvheadend"
+
+# Other options you want to pass to Tvheadend.
+TVHEADEND_OPTIONS=""
diff --git a/media-tv/tvheadend/files/tvheadend.initd b/media-tv/tvheadend/files/tvheadend.initd
new file mode 100644
index 000000000000..27956ccb234b
--- /dev/null
+++ b/media-tv/tvheadend/files/tvheadend.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+
+depend() {
+ need net
+}
+
+start() {
+ ebegin "Starting Tvheadend"
+ start-stop-daemon --start --quiet --exec /usr/bin/tvheadend \
+ -- -f -C -u ${TVHEADEND_USER} -g ${TVHEADEND_GROUP} \
+ -c ${TVHEADEND_CONFIG} ${TVHEADEND_OPTIONS}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping Tvheadend"
+ start-stop-daemon --stop --quiet --pidfile /var/run/tvheadend.pid
+ eend $?
+}
diff --git a/media-tv/tvheadend/files/tvheadend.service b/media-tv/tvheadend/files/tvheadend.service
new file mode 100644
index 000000000000..227faffcb082
--- /dev/null
+++ b/media-tv/tvheadend/files/tvheadend.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=tvheadend
+After=network.target
+
+[Service]
+Type=forking
+PIDFile=/run/tvheadend.pid
+ExecStart=/usr/bin/tvheadend -f -p /run/tvheadend.pid -C -c /etc/tvheadend -u tvheadend -g video
+ExecStop=/usr/bin/rm /run/tvheadend.pid
+Restart=always
+RestartSec=5
+
+[Install]
+WantedBy=multi-user.target
diff --git a/media-tv/tvheadend/metadata.xml b/media-tv/tvheadend/metadata.xml
new file mode 100644
index 000000000000..9d99f1238417
--- /dev/null
+++ b/media-tv/tvheadend/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>wraeth@gentoo.org</email>
+ <name>Sam Jorna</name>
+ </maintainer>
+ <use>
+ <flag name="capmt">Enable support for capmt (dvbapi) protocol</flag>
+ <flag name="constcw">Enable support for the constcw protocol</flag>
+ <flag name="cwc">Enable support for the cwc (newcamd) protocol</flag>
+ <flag name="hdhomerun">Enable support for the HDHomeRun device</flag>
+ <flag name="iptv">Enable support for Internet Protocol TV</flag>
+ <flag name="satip">Enable support for IP-based Satellite TV</flag>
+ <flag name="timeshift">Enable TimeShift support</flag>
+ <flag name="xmltv">Use <pkg>media-tv/xmltv</pkg></flag>
+ <flag name="dvbscan">Use <pkg>media-tv/linuxtv-dvb-apps</pkg></flag>
+ <flag name="imagecache">Enable support for image caching</flag>
+ <flag name="uriparser">Use <pkg>dev-libs/uriparser</pkg></flag>
+ </use>
+ <upstream>
+ <remote-id type="github">tvheadend/tvheadend</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/media-tv/tvheadend/tvheadend-4.0.9.ebuild b/media-tv/tvheadend/tvheadend-4.0.9.ebuild
new file mode 100644
index 000000000000..8fe7e7352725
--- /dev/null
+++ b/media-tv/tvheadend/tvheadend-4.0.9.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils linux-info systemd toolchain-funcs user
+
+DTV_SCAN_TABLES_VERSION="2015-02-08-f2053b3"
+
+DESCRIPTION="Tvheadend is a TV streaming server and digital video recorder"
+HOMEPAGE="https://tvheadend.org/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ dvbscan? ( https://linuxtv.org/downloads/dtv-scan-tables/dtv-scan-tables-${DTV_SCAN_TABLES_VERSION}.tar.bz2 )"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="capmt constcw +cwc dbus +dvb +dvbscan ffmpeg hdhomerun libav imagecache inotify iptv satip +timeshift uriparser xmltv zeroconf zlib"
+
+# does not build with ffmpeg-3 - bug 574990
+# https://tvheadend.org/issues/3597
+RDEPEND="dev-libs/openssl:=
+ virtual/libiconv
+ dbus? ( sys-apps/dbus )
+ ffmpeg? (
+ !libav? ( <media-video/ffmpeg-3:= )
+ libav? ( media-video/libav:= )
+ )
+ hdhomerun? ( media-libs/libhdhomerun )
+ uriparser? ( dev-libs/uriparser )
+ zeroconf? ( net-dns/avahi )
+ zlib? ( sys-libs/zlib )"
+
+DEPEND="${RDEPEND}
+ dvb? ( virtual/linuxtv-dvb-headers )
+ capmt? ( virtual/linuxtv-dvb-headers )
+ virtual/pkgconfig"
+
+RDEPEND+="
+ xmltv? ( media-tv/xmltv )"
+
+CONFIG_CHECK="~INOTIFY_USER"
+
+DOCS=( README.md )
+PATCHES=( "${FILESDIR}/${P}-hdhomerun-include.patch" )
+
+src_unpack() {
+ unpack "${P}.tar.gz"
+
+ if use dvbscan; then
+ mkdir "${S}/data/dvb-scan" || die
+ cd "${T}" || die
+ unpack dtv-scan-tables-${DTV_SCAN_TABLES_VERSION}.tar.bz2
+ rmdir "${S}/data/dvb-scan" || die
+ mv "${T}/usr/share/dvb" "${S}/data/dvb-scan" || die
+
+ # This is needed to prevent make from removing files
+ touch "${S}/data/dvb-scan/.stamp" || die
+ fi
+}
+
+pkg_setup() {
+ enewuser tvheadend -1 -1 /dev/null video
+}
+
+src_configure() {
+ econf --prefix="${EPREFIX}"/usr \
+ --datadir="${EPREFIX}"/usr/share \
+ --disable-ccache \
+ --nowerror \
+ --disable-hdhomerun_static \
+ $(use_enable capmt) \
+ $(use_enable constcw) \
+ $(use_enable cwc) \
+ $(use_enable dbus dbus_1) \
+ $(use_enable dvbscan) \
+ $(use_enable dvb linuxdvb) \
+ $(use_enable ffmpeg libav) \
+ $(use_enable hdhomerun hdhomerun_client) \
+ $(use_enable imagecache) \
+ $(use_enable inotify) \
+ $(use_enable iptv) \
+ $(use_enable satip satip_server) \
+ $(use_enable satip satip_client) \
+ $(use_enable timeshift) \
+ $(use_enable uriparser) \
+ $(use_enable zeroconf avahi) \
+ $(use_enable zlib)
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}/tvheadend.initd" tvheadend
+ newconfd "${FILESDIR}/tvheadend.confd" tvheadend
+
+ systemd_dounit "${FILESDIR}/tvheadend.service"
+
+ dodir /etc/tvheadend
+ fperms 0700 /etc/tvheadend
+ fowners tvheadend:video /etc/tvheadend
+}
+
+pkg_postinst() {
+ elog "The Tvheadend web interface can be reached at:"
+ elog "http://localhost:9981/"
+ elog
+ elog "Make sure that you change the default username"
+ elog "and password via the Configuration / Access control"
+ elog "tab in the web interface."
+}
diff --git a/media-tv/tvheadend/tvheadend-9999.ebuild b/media-tv/tvheadend/tvheadend-9999.ebuild
new file mode 100644
index 000000000000..ac205c566bb0
--- /dev/null
+++ b/media-tv/tvheadend/tvheadend-9999.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils git-r3 linux-info systemd toolchain-funcs user
+
+DESCRIPTION="Tvheadend is a TV streaming server and digital video recorder"
+HOMEPAGE="https://tvheadend.org/"
+EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS=""
+
+IUSE="capmt constcw +cwc dbus +dvb +dvbscan ffmpeg hdhomerun libav imagecache inotify iptv satip +timeshift uriparser xmltv zeroconf zlib"
+
+RDEPEND="dev-libs/openssl:=
+ virtual/libiconv
+ dbus? ( sys-apps/dbus )
+ ffmpeg? (
+ !libav? ( >=media-video/ffmpeg-3:= )
+ libav? ( media-video/libav:= )
+ )
+ hdhomerun? ( media-libs/libhdhomerun )
+ uriparser? ( dev-libs/uriparser )
+ zeroconf? ( net-dns/avahi )
+ zlib? ( sys-libs/zlib )"
+
+DEPEND="${RDEPEND}
+ dvb? ( virtual/linuxtv-dvb-headers )
+ capmt? ( virtual/linuxtv-dvb-headers )
+ virtual/pkgconfig"
+
+RDEPEND+="
+ dvbscan? ( media-tv/linuxtv-dvb-apps )
+ xmltv? ( media-tv/xmltv )"
+
+CONFIG_CHECK="~INOTIFY_USER"
+
+DOCS=( README.md )
+
+pkg_setup() {
+ enewuser tvheadend -1 -1 /dev/null video
+}
+
+src_prepare() {
+ # remove '-Werror' wrt bug #438424
+ sed -e 's:-Werror::' -i Makefile || die 'sed failed!'
+}
+
+src_configure() {
+ econf --prefix="${EPREFIX}"/usr \
+ --datadir="${EPREFIX}"/usr/share \
+ --disable-hdhomerun_static \
+ --disable-ffmpeg_static \
+ --disable-ccache \
+ --disable-dvbscan \
+ $(use_enable capmt) \
+ $(use_enable constcw) \
+ $(use_enable cwc) \
+ $(use_enable dbus) \
+ $(use_enable dvb linuxdvb) \
+ $(use_enable ffmpeg libav) \
+ $(use_enable hdhomerun hdhomerun_client) \
+ $(use_enable imagecache) \
+ $(use_enable inotify) \
+ $(use_enable iptv) \
+ $(use_enable satip satip_server) \
+ $(use_enable satip satip_client) \
+ $(use_enable timeshift) \
+ $(use_enable uriparser) \
+ $(use_enable zeroconf avahi) \
+ $(use_enable zlib)
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ default
+
+ newinitd "${FILESDIR}/tvheadend.initd" tvheadend
+ newconfd "${FILESDIR}/tvheadend.confd" tvheadend
+
+ systemd_dounit "${FILESDIR}/tvheadend.service"
+
+ dodir /etc/tvheadend
+ fperms 0700 /etc/tvheadend
+ fowners tvheadend:video /etc/tvheadend
+}
+
+pkg_postinst() {
+ elog "The Tvheadend web interface can be reached at:"
+ elog "http://localhost:9981/"
+ elog
+ elog "Make sure that you change the default username"
+ elog "and password via the Configuration / Access control"
+ elog "tab in the web interface."
+}