blob: 11b91846916330719cec80d83be2186c6b626385 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit linux-info python-any-r1 systemd toolchain-funcs
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"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="amd64 arm arm64 x86"
IUSE="+capmt +constcw +cwc dbus debug dvbcsa dvben50221 +dvb +ffmpeg hdhomerun +imagecache +inotify iptv satip systemd +timeshift uriparser xmltv zeroconf zlib"
BDEPEND="
${PYTHON_DEPS}
sys-devel/gettext
virtual/pkgconfig
"
# <ffmpeg-5 dep for bug #834399, https://github.com/tvheadend/tvheadend/pull/1460
RDEPEND="
acct-user/tvheadend
virtual/libiconv
dbus? ( sys-apps/dbus )
dvbcsa? ( media-libs/libdvbcsa )
dvben50221? ( media-tv/linuxtv-dvb-apps )
ffmpeg? ( <media-video/ffmpeg-5:= )
hdhomerun? ( media-libs/libhdhomerun )
dev-libs/openssl:0=
uriparser? ( dev-libs/uriparser )
zeroconf? ( net-dns/avahi )
zlib? ( sys-libs/zlib )
"
DEPEND="
${RDEPEND}
dvb? ( sys-kernel/linux-headers )
"
RDEPEND+="
dvb? ( media-tv/dtv-scan-tables )
xmltv? ( media-tv/xmltv )
"
REQUIRED_USE="dvbcsa? ( || ( capmt constcw cwc dvben50221 ) )"
# Some patches from:
# https://github.com/rpmfusion/tvheadend
PATCHES=(
"${FILESDIR}"/${PN}-4.0.9-use_system_queue.patch
"${FILESDIR}"/${PN}-4.2.{1,8}-hdhomerun.patch
"${FILESDIR}"/${PN}-4.2.2-dtv_scan_tables.patch
"${FILESDIR}"/${PN}-4.2.7-python3.patch
"${FILESDIR}"/${PN}-4.2.8-gcc9.patch
"${FILESDIR}"/${PN}-4.2.8-no-dvb-fix.patch
"${FILESDIR}"/${PN}-4.2.8-fno-common.patch
)
DOCS=( README.md )
pkg_setup() {
python-any-r1_pkg_setup
use inotify &&
CONFIG_CHECK="~INOTIFY_USER" linux-info_pkg_setup
}
src_configure() {
CC="$(tc-getCC)" \
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
econf \
--disable-bundle \
--disable-ccache \
--disable-dvbscan \
--disable-ffmpeg_static \
--disable-hdhomerun_static \
--nowerror \
$(use_enable capmt) \
$(use_enable constcw) \
$(use_enable cwc) \
$(use_enable dbus dbus_1) \
$(use_enable debug trace) \
$(use_enable dvb linuxdvb) \
$(use_enable dvbcsa) \
$(use_enable dvben50221) \
$(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 systemd libsystemd_daemon) \
$(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
use systemd &&
systemd_dounit "${FILESDIR}"/tvheadend.service
}
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."
. "${EROOT}"/etc/conf.d/tvheadend &>/dev/null
if [[ ${TVHEADEND_CONFIG} = ${EPREFIX}/etc/tvheadend ]]; then
echo
ewarn "The HOME directory for the tvheadend user has changed from"
ewarn "${EPREFIX}/etc/tvheadend to ${EPREFIX}/var/lib/tvheadend. The daemon will continue"
ewarn "to use the old location until you update TVHEADEND_CONFIG in"
ewarn "${EPREFIX}/etc/conf.d/tvheadend. Please manually move your existing files"
ewarn "before you do so."
fi
}
|