]> git.pld-linux.org Git - packages/tvheadend.git/blame - tvheadend.spec
- rel 2; readd --disable-dvbscan; drop invalid uid comments
[packages/tvheadend.git] / tvheadend.spec
CommitLineData
e08e4dbf
AF
1Summary: TV streaming server
2Name: tvheadend
977b0310 3# keep stable version announced on web page
f2240875 4%define vername 3.4patch1
977b0310 5Version: 3.4.27
06478b67 6Release: 2
e08e4dbf 7License: GPL v3
7d3739f8 8Group: Applications/Multimedia
977b0310
AM
9Source0: https://github.com/tvheadend/tvheadend/archive/%{vername}.tar.gz
10# Source0-md5: 86d1be0ad6e02bd2aecd3d529a026797
e08e4dbf
AF
11Source1: %{name}.conf
12Source2: %{name}.service
13Source3: %{name}.sysconfig
7d3739f8 14Source4: %{name}.init
f2240875 15URL: https://tvheadend.org/projects/tvheadend
7d3739f8
AM
16BuildRequires: avahi-devel
17BuildRequires: curl-devel
18BuildRequires: python-modules
e08e4dbf 19BuildRequires: rpmbuild(macros) >= 1.647
7d3739f8 20BuildRequires: zlib-devel
e08e4dbf
AF
21Requires(post): pwgen
22Requires(post): sed >= 4.0
7d3739f8 23Requires(post,preun): /sbin/chkconfig
f2240875
ER
24Requires(post,preun,postun): systemd-units >= 38
25Requires(postun): /usr/sbin/userdel
26Requires(pre): /bin/id
27Requires(pre): /usr/sbin/useradd
e08e4dbf 28Requires: group(video)
f2240875
ER
29Requires: systemd-units >= 0.38
30Provides: user(tvheadend)
31BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
e08e4dbf
AF
32
33%description
34Tvheadend is a TV streaming server for Linux supporting DVB-S, DVB-S2,
35DVB-C, DVB-T, ATSC, IPTV, and Analog video (V4L) as input sources.
36
37%prep
977b0310 38%setup -q -n %{name}-%{vername}
e08e4dbf
AF
39
40%build
e08e4dbf
AF
41export CFLAGS="%{rpmcflags}"
42export CC="%{__cc}"
7d3739f8
AM
43
44# tvheadend uses a custom script, so %%configure cannot be used
e08e4dbf 45# as not all options are supported
5ab46ce7 46./configure \
5ab46ce7 47 --release \
f2240875 48 --prefix=%{_prefix} \
5ab46ce7 49 --libdir=%{_libdir} \
06478b67
AM
50 --mandir=%{_mandir}/man1 \
51 --disable-dvbscan
5ab46ce7 52
e08e4dbf
AF
53%{__make} V=1
54
55%install
56rm -rf $RPM_BUILD_ROOT
57install -d $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}/.hts/%{name}/accesscontrol \
58 $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}/Videos \
59 $RPM_BUILD_ROOT%{systemdunitdir} \
7d3739f8 60 $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig}
e08e4dbf
AF
61
62%{__make} install \
63 DESTDIR=$RPM_BUILD_ROOT
64
f2240875
ER
65cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}/.hts/%{name}/accesscontrol/1
66cp -p %{SOURCE2} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}.service
67cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
68install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
e08e4dbf
AF
69
70chmod +x $RPM_BUILD_ROOT%{_bindir}/%{name}
71
f2240875
ER
72%clean
73rm -rf $RPM_BUILD_ROOT
74
e08e4dbf 75%pre
f2240875 76%useradd -u 20 -d %{_localstatedir}/lib/%{name} -g video -G usb -c "tvheadend User" tvheadend
e08e4dbf
AF
77
78%post
7d3739f8
AM
79/sbin/chkconfig --add tvheadend
80%service tvheadend reload "tvheadend"
e08e4dbf
AF
81%systemd_post %{name}.service
82
83# check if the access control file still has the initial dummy password, and
84# replace the dummy password by a random, 12-character pwgen-generated password
85if grep -q '"password": "dummypassword"' %{_localstatedir}/lib/%{name}/.hts/%{name}/accesscontrol/1; then
f2240875 86 sed -i "s,\"password\": \"dummypassword\",\"password\": \"$(pwgen -s 12 1)\"," %{_localstatedir}/lib/%{name}/.hts/%{name}/accesscontrol/1
e08e4dbf
AF
87fi
88
89%preun
7d3739f8
AM
90if [ "$1" = "0" ]; then
91 %service tvheadend stop
92 /sbin/chkconfig --del tvheadend
93fi
e08e4dbf
AF
94%systemd_preun %{name}.service
95
96%postun
97if [ "$1" = "0" ]; then
f2240875 98 %userremove tvheadend
e08e4dbf
AF
99fi
100%systemd_reload
101
e08e4dbf
AF
102%files
103%defattr(644,root,root,755)
104%doc docs
105%attr(755,root,root) %{_bindir}/%{name}
7d3739f8 106%attr(754,root,root) /etc/rc.d/init.d/tvheadend
e08e4dbf
AF
107%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
108%{_mandir}/man1/%{name}.1*
109%{_datadir}/%{name}
110%{systemdunitdir}/%{name}.service
111
f2240875 112# home directory and config file
e08e4dbf
AF
113%dir %attr(755,tvheadend,root) %{_localstatedir}/lib/%{name}
114%dir %attr(755,tvheadend,video) %{_localstatedir}/lib/%{name}/Videos
115%dir %attr(750,tvheadend,video) %{_localstatedir}/lib/%{name}/.hts
116%dir %attr(750,tvheadend,video) %{_localstatedir}/lib/%{name}/.hts/%{name}
117%dir %attr(750,tvheadend,video) %{_localstatedir}/lib/%{name}/.hts/%{name}/accesscontrol
118%attr(600,tvheadend,video) %config(noreplace) %verify(not md5 mtime size) %{_localstatedir}/lib/%{name}/.hts/%{name}/accesscontrol/1
This page took 0.102425 seconds and 4 git commands to generate.