forked from Ivasoft/docker-tvheadend
Compare commits
168 Commits
5bdcfd8a-l
...
f28f7d2a-l
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e9f324cf83 | ||
|
|
c83501cda1 | ||
|
|
590c526d4f | ||
|
|
b1e3a2b76c | ||
|
|
e46a100668 | ||
|
|
a264297038 | ||
|
|
1d382f1e2d | ||
|
|
92de6b3807 | ||
|
|
de6a3f09aa | ||
|
|
27de84621d | ||
|
|
af32e275fc | ||
|
|
b53c4e8a95 | ||
|
|
da780f88bc | ||
|
|
c293456f31 | ||
|
|
0d8c5aa390 | ||
|
|
aa73a745f3 | ||
|
|
9d7a35ba91 | ||
|
|
7253c86d23 | ||
|
|
317114ce56 | ||
|
|
922de73700 | ||
|
|
0dff29da35 | ||
|
|
6d325b1f7e | ||
|
|
f2423c1628 | ||
|
|
6a902e358e | ||
|
|
05e3e94c17 | ||
|
|
f69f0308e8 | ||
|
|
0aa53af054 | ||
|
|
8290519f1e | ||
|
|
99f9917b5f | ||
|
|
0922cf5d87 | ||
|
|
7bcfb3bdf2 | ||
|
|
f8a739bf42 | ||
|
|
42d5564cea | ||
|
|
f95217ed6d | ||
|
|
308e7be673 | ||
|
|
797285de84 | ||
|
|
8507c5fb2e | ||
|
|
c60559b46f | ||
|
|
70b794cabc | ||
|
|
9a7b46c55c | ||
|
|
48be429287 | ||
|
|
0cee1652df | ||
|
|
87a4772008 | ||
|
|
cd589b5edc | ||
|
|
7621f743f9 | ||
|
|
2c722cf6f5 | ||
|
|
fbe55624ba | ||
|
|
05dfb9ffb3 | ||
|
|
ac4f7d401e | ||
|
|
ed43e439b6 | ||
|
|
f406290afe | ||
|
|
7520004527 | ||
|
|
18489b187b | ||
|
|
621a1dc880 | ||
|
|
c6d1618f97 | ||
|
|
7d62763012 | ||
|
|
22930512ea | ||
|
|
d97c1f1796 | ||
|
|
0ca518f159 | ||
|
|
8cd7586acc | ||
|
|
3b258e70bc | ||
|
|
41ebcd4ea6 | ||
|
|
343b9cd5f3 | ||
|
|
33ab472fc7 | ||
|
|
28b17930bd | ||
|
|
7a36e3fe54 | ||
|
|
bfaa13c92c | ||
|
|
19b809223d | ||
|
|
46a3cbb580 | ||
|
|
26b737c76c | ||
|
|
78d9a02ed1 | ||
|
|
58e666bbd5 | ||
|
|
fadee48d67 | ||
|
|
0f9f1ef4d3 | ||
|
|
d052b13f92 | ||
|
|
9d64ee4636 | ||
|
|
753d0bbe38 | ||
|
|
43b924159e | ||
|
|
09504f7d5b | ||
|
|
31cd14f4f5 | ||
|
|
56a0b351da | ||
|
|
df82e31fe1 | ||
|
|
6e137dbdba | ||
|
|
435875e2a3 | ||
|
|
6025ca0750 | ||
|
|
3a4ee7ab9f | ||
|
|
a2f49bb75b | ||
|
|
3659c4708a | ||
|
|
8387285750 | ||
|
|
90d21b6f06 | ||
|
|
2631706f5b | ||
|
|
f6e2be9d51 | ||
|
|
e6bb2a1641 | ||
|
|
a702166af3 | ||
|
|
9dceb0a4ce | ||
|
|
22ed8475c7 | ||
|
|
c7ce0c4832 | ||
|
|
822dbde249 | ||
|
|
cd3964e06c | ||
|
|
70f300d86a | ||
|
|
25979ad455 | ||
|
|
1306f8cf2d | ||
|
|
f19ad9ca20 | ||
|
|
c0a37a6b8b | ||
|
|
dca4b0ed9b | ||
|
|
8768cdb702 | ||
|
|
002dda3027 | ||
|
|
3122624bf0 | ||
|
|
0f717f40e4 | ||
|
|
548d5b2946 | ||
|
|
ef8f4a0dd0 | ||
|
|
a99f76a006 | ||
|
|
6e0fc5e84c | ||
|
|
417a24d0c2 | ||
|
|
eb7c4bbefa | ||
|
|
c2250aa33f | ||
|
|
80fea09e66 | ||
|
|
bd7ef42e33 | ||
|
|
c92cf86b86 | ||
|
|
01c0439c90 | ||
|
|
17ff5fcca4 | ||
|
|
0ddbdd0c08 | ||
|
|
df6da18c15 | ||
|
|
83f2893d22 | ||
|
|
b41cde8174 | ||
|
|
a306c49d7a | ||
|
|
4af60c604c | ||
|
|
4288628824 | ||
|
|
5d372c0e19 | ||
|
|
6746a3fbf6 | ||
|
|
0f99b9a0d5 | ||
|
|
aa9724fdc2 | ||
|
|
de493babb9 | ||
|
|
0321b4d01a | ||
|
|
c0fe17d93e | ||
|
|
b1a069a702 | ||
|
|
a68b5c32a4 | ||
|
|
880d45e6fe | ||
|
|
a6a8e1b6d4 | ||
|
|
4d7daed6fc | ||
|
|
c15493ddbe | ||
|
|
3dbea6d9a5 | ||
|
|
d18eb4297c | ||
|
|
53ba6baa56 | ||
|
|
0d9c4b8394 | ||
|
|
3a054b8a57 | ||
|
|
6d486e90d0 | ||
|
|
4aeef6554b | ||
|
|
2e0e6d028c | ||
|
|
d4fb416e62 | ||
|
|
51f45f4d30 | ||
|
|
6a4d853235 | ||
|
|
0b1069a088 | ||
|
|
c9181d7131 | ||
|
|
9a3b13ad27 | ||
|
|
bdc1f87ac6 | ||
|
|
e4e07121af | ||
|
|
0e8ea6063c | ||
|
|
9b161c87f9 | ||
|
|
ec6ff1a886 | ||
|
|
87d4b9c811 | ||
|
|
0d53fe87a0 | ||
|
|
314f59a89f | ||
|
|
4e44306b81 | ||
|
|
68a5beb2ce | ||
|
|
9ce7af875d | ||
|
|
51e21fbae9 | ||
|
|
97ed2af733 |
1
.github/FUNDING.yml
vendored
1
.github/FUNDING.yml
vendored
@@ -1 +1,2 @@
|
||||
github: linuxserver
|
||||
open_collective: linuxserver
|
||||
|
||||
72
Dockerfile
72
Dockerfile
@@ -3,12 +3,11 @@ FROM lsiobase/alpine:3.11 as buildstage
|
||||
|
||||
# package versions
|
||||
ARG ARGTABLE_VER="2.13"
|
||||
ARG TVH_VER="release/4.2"
|
||||
ARG XMLTV_VER="v0.6.1"
|
||||
ARG TVHEADEND_COMMIT
|
||||
|
||||
# environment settings
|
||||
ARG TZ="Europe/Oslo"
|
||||
ARG TVHEADEND_COMMIT
|
||||
ENV HOME="/config"
|
||||
|
||||
# copy patches
|
||||
@@ -30,17 +29,21 @@ RUN \
|
||||
gcc \
|
||||
gettext-dev \
|
||||
git \
|
||||
gnu-libiconv-dev \
|
||||
gzip \
|
||||
jq \
|
||||
libcurl \
|
||||
libdvbcsa-dev \
|
||||
libgcrypt-dev \
|
||||
libressl-dev \
|
||||
libhdhomerun-dev \
|
||||
libtool \
|
||||
libva-dev \
|
||||
libvpx-dev \
|
||||
libxml2-dev \
|
||||
libxslt-dev \
|
||||
linux-headers \
|
||||
make \
|
||||
mercurial \
|
||||
openssl-dev \
|
||||
opus-dev \
|
||||
patch \
|
||||
pcre2-dev \
|
||||
@@ -72,10 +75,12 @@ RUN \
|
||||
perl-io-socket-ssl \
|
||||
perl-io-stringy \
|
||||
perl-json \
|
||||
perl-json-xs \
|
||||
perl-libwww \
|
||||
perl-lingua-en-numbers-ordinate \
|
||||
perl-lingua-preferred \
|
||||
perl-list-moreutils \
|
||||
perl-lwp-useragent-determined \
|
||||
perl-module-build \
|
||||
perl-module-pluggable \
|
||||
perl-net-ssleay \
|
||||
@@ -105,10 +110,7 @@ RUN \
|
||||
wget \
|
||||
x264-dev \
|
||||
x265-dev \
|
||||
zlib-dev && \
|
||||
apk add --no-cache \
|
||||
--repository http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
||||
gnu-libiconv-dev
|
||||
zlib-dev
|
||||
|
||||
RUN \
|
||||
echo "**** remove musl iconv.h and replace with gnu-iconv.h ****" && \
|
||||
@@ -117,7 +119,7 @@ RUN \
|
||||
|
||||
RUN \
|
||||
echo "**** install perl modules for xmltv ****" && \
|
||||
curl -L http://cpanmin.us | perl - App::cpanminus && \
|
||||
curl -L https://cpanmin.us | perl - App::cpanminus && \
|
||||
cpanm --installdeps /tmp/patches
|
||||
|
||||
RUN \
|
||||
@@ -125,7 +127,7 @@ RUN \
|
||||
git clone https://github.com/XMLTV/xmltv.git /tmp/xmltv && \
|
||||
cd /tmp/xmltv && \
|
||||
git checkout ${XMLTV_VER} && \
|
||||
echo "**** fix test for xmltv alpine 3.11 ****" && \
|
||||
echo "**** Fix test for xmltv alpine 3.11 ****" && \
|
||||
patch -p1 -i /tmp/patches/test_tv_imdb.t.patch && \
|
||||
echo "**** Perl 5.26 fixes for XMTLV ****" && \
|
||||
sed "s/use POSIX 'tmpnam';//" -i filter/tv_to_latex && \
|
||||
@@ -140,41 +142,44 @@ RUN \
|
||||
make test && \
|
||||
make DESTDIR=/tmp/xmltv-build install
|
||||
|
||||
RUN \
|
||||
echo "**** compile dvb-apps ****" && \
|
||||
hg clone http://linuxtv.org/hg/dvb-apps /tmp/dvb-apps && \
|
||||
cd /tmp/dvb-apps && \
|
||||
make -C lib && \
|
||||
make -C lib DESTDIR=/tmp/dvbapps-build install && \
|
||||
cp -pr /tmp/dvbapps-build/usr/* /usr/
|
||||
|
||||
RUN \
|
||||
echo "**** compile tvheadend ****" && \
|
||||
if [ -z ${TVHEADEND_COMMIT+x} ]; then \
|
||||
TVHEADEND_COMMIT=$(curl -sX GET https://api.github.com/repos/tvheadend/tvheadend/commits/${TVH_VER} \
|
||||
TVHEADEND_COMMIT=$(curl -sX GET https://api.github.com/repos/tvheadend/tvheadend/commits/master \
|
||||
| jq -r '. | .sha'); \
|
||||
fi && \
|
||||
mkdir -p \
|
||||
/tmp/tvheadend && \
|
||||
/tmp/tvheadend && \
|
||||
git clone https://github.com/tvheadend/tvheadend.git /tmp/tvheadend && \
|
||||
cd /tmp/tvheadend && \
|
||||
git checkout ${TVHEADEND_COMMIT} && \
|
||||
./configure \
|
||||
--disable-avahi \
|
||||
--disable-bintray_cache \
|
||||
--disable-dbus_1 \
|
||||
`#Encoding` \
|
||||
--disable-ffmpeg_static \
|
||||
--disable-libfdkaac_static \
|
||||
--disable-libmfx_static \
|
||||
--disable-libtheora_static \
|
||||
--disable-libopus_static \
|
||||
--disable-libvorbis_static \
|
||||
--disable-libvpx_static \
|
||||
--disable-libx264_static \
|
||||
--disable-libx265_static \
|
||||
--disable-libfdkaac \
|
||||
--enable-libopus \
|
||||
--enable-libvorbis \
|
||||
--enable-libvpx \
|
||||
--enable-libx264 \
|
||||
--enable-libx265 \
|
||||
\
|
||||
`#Options` \
|
||||
--disable-avahi \
|
||||
--disable-dbus_1 \
|
||||
--disable-bintray_cache \
|
||||
--disable-hdhomerun_static \
|
||||
--enable-hdhomerun_client \
|
||||
--enable-hdhomerun_static \
|
||||
--enable-libav \
|
||||
--enable-pngquant \
|
||||
--enable-trace \
|
||||
--enable-vaapi \
|
||||
--infodir=/usr/share/info \
|
||||
--localstatedir=/var \
|
||||
--mandir=/usr/share/man \
|
||||
@@ -235,15 +240,21 @@ RUN \
|
||||
curl \
|
||||
ffmpeg \
|
||||
ffmpeg-libs \
|
||||
gnu-libiconv \
|
||||
gzip \
|
||||
libcrypto1.1 \
|
||||
libcurl \
|
||||
libressl \
|
||||
libcurl \
|
||||
libdvbcsa \
|
||||
libhdhomerun-libs \
|
||||
libssl1.1 \
|
||||
libva \
|
||||
libva-intel-driver \
|
||||
mesa-dri-ati \
|
||||
libvpx \
|
||||
libxml2 \
|
||||
libxslt \
|
||||
linux-headers \
|
||||
openssl \
|
||||
opus \
|
||||
pcre2 \
|
||||
perl \
|
||||
@@ -274,10 +285,12 @@ RUN \
|
||||
perl-io-socket-ssl \
|
||||
perl-io-stringy \
|
||||
perl-json \
|
||||
perl-json-xs \
|
||||
perl-libwww \
|
||||
perl-lingua-en-numbers-ordinate \
|
||||
perl-lingua-preferred \
|
||||
perl-list-moreutils \
|
||||
perl-lwp-useragent-determined \
|
||||
perl-module-build \
|
||||
perl-module-pluggable \
|
||||
perl-net-ssleay \
|
||||
@@ -298,6 +311,7 @@ RUN \
|
||||
perl-xml-treepp \
|
||||
perl-xml-twig \
|
||||
perl-xml-writer \
|
||||
py3-requests \
|
||||
python \
|
||||
tar \
|
||||
uriparser \
|
||||
@@ -305,9 +319,6 @@ RUN \
|
||||
x264 \
|
||||
x265 \
|
||||
zlib && \
|
||||
apk add --no-cache \
|
||||
--repository http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
||||
gnu-libiconv && \
|
||||
echo "**** Add Picons ****" && \
|
||||
mkdir -p /picons && \
|
||||
curl -o \
|
||||
@@ -317,7 +328,6 @@ RUN \
|
||||
# copy local files and buildstage artifacts
|
||||
COPY --from=buildstage /tmp/argtable-build/usr/ /usr/
|
||||
COPY --from=buildstage /tmp/comskip-build/usr/ /usr/
|
||||
COPY --from=buildstage /tmp/dvbapps-build/usr/ /usr/
|
||||
COPY --from=buildstage /tmp/tvheadend-build/usr/ /usr/
|
||||
COPY --from=buildstage /tmp/xmltv-build/usr/ /usr/
|
||||
COPY --from=buildstage /usr/local/share/man/ /usr/local/share/man/
|
||||
|
||||
@@ -3,12 +3,11 @@ FROM lsiobase/alpine:arm64v8-3.11 as buildstage
|
||||
|
||||
# package versions
|
||||
ARG ARGTABLE_VER="2.13"
|
||||
ARG TVH_VER="release/4.2"
|
||||
ARG XMLTV_VER="v0.6.1"
|
||||
ARG TVHEADEND_COMMIT
|
||||
|
||||
# environment settings
|
||||
ARG TZ="Europe/Oslo"
|
||||
ARG TVHEADEND_COMMIT
|
||||
ENV HOME="/config"
|
||||
|
||||
# copy patches
|
||||
@@ -30,17 +29,20 @@ RUN \
|
||||
gcc \
|
||||
gettext-dev \
|
||||
git \
|
||||
gnu-libiconv-dev \
|
||||
gzip \
|
||||
jq \
|
||||
libcurl \
|
||||
libdvbcsa-dev \
|
||||
libgcrypt-dev \
|
||||
libressl-dev \
|
||||
libhdhomerun-dev \
|
||||
libtool \
|
||||
libvpx-dev \
|
||||
libxml2-dev \
|
||||
libxslt-dev \
|
||||
linux-headers \
|
||||
make \
|
||||
mercurial \
|
||||
openssl-dev \
|
||||
opus-dev \
|
||||
patch \
|
||||
pcre2-dev \
|
||||
@@ -72,10 +74,12 @@ RUN \
|
||||
perl-io-socket-ssl \
|
||||
perl-io-stringy \
|
||||
perl-json \
|
||||
perl-json-xs \
|
||||
perl-libwww \
|
||||
perl-lingua-en-numbers-ordinate \
|
||||
perl-lingua-preferred \
|
||||
perl-list-moreutils \
|
||||
perl-lwp-useragent-determined \
|
||||
perl-module-build \
|
||||
perl-module-pluggable \
|
||||
perl-net-ssleay \
|
||||
@@ -105,10 +109,7 @@ RUN \
|
||||
wget \
|
||||
x264-dev \
|
||||
x265-dev \
|
||||
zlib-dev && \
|
||||
apk add --no-cache \
|
||||
--repository http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
||||
gnu-libiconv-dev
|
||||
zlib-dev
|
||||
|
||||
RUN \
|
||||
echo "**** remove musl iconv.h and replace with gnu-iconv.h ****" && \
|
||||
@@ -117,7 +118,7 @@ RUN \
|
||||
|
||||
RUN \
|
||||
echo "**** install perl modules for xmltv ****" && \
|
||||
curl -L http://cpanmin.us | perl - App::cpanminus && \
|
||||
curl -L https://cpanmin.us | perl - App::cpanminus && \
|
||||
cpanm --installdeps /tmp/patches
|
||||
|
||||
RUN \
|
||||
@@ -125,7 +126,7 @@ RUN \
|
||||
git clone https://github.com/XMLTV/xmltv.git /tmp/xmltv && \
|
||||
cd /tmp/xmltv && \
|
||||
git checkout ${XMLTV_VER} && \
|
||||
echo "**** fix test for xmltv alpine 3.11 ****" && \
|
||||
echo "**** Fix test for xmltv alpine 3.11 ****" && \
|
||||
patch -p1 -i /tmp/patches/test_tv_imdb.t.patch && \
|
||||
echo "**** Perl 5.26 fixes for XMTLV ****" && \
|
||||
sed "s/use POSIX 'tmpnam';//" -i filter/tv_to_latex && \
|
||||
@@ -140,19 +141,11 @@ RUN \
|
||||
make test && \
|
||||
make DESTDIR=/tmp/xmltv-build install
|
||||
|
||||
RUN \
|
||||
echo "**** compile dvb-apps ****" && \
|
||||
hg clone http://linuxtv.org/hg/dvb-apps /tmp/dvb-apps && \
|
||||
cd /tmp/dvb-apps && \
|
||||
make -C lib && \
|
||||
make -C lib DESTDIR=/tmp/dvbapps-build install && \
|
||||
cp -pr /tmp/dvbapps-build/usr/* /usr/
|
||||
|
||||
RUN \
|
||||
echo "**** compile tvheadend ****" && \
|
||||
if [ -z ${TVHEADEND_COMMIT+x} ]; then \
|
||||
TVHEADEND_COMMIT=$(curl -sX GET https://api.github.com/repos/tvheadend/tvheadend/commits/${TVH_VER} \
|
||||
| jq -r '. | .sha'); \
|
||||
TVHEADEND_COMMIT=$(curl -sX GET https://api.github.com/repos/tvheadend/tvheadend/commits/master \
|
||||
| jq -r '. | .sha'); \
|
||||
fi && \
|
||||
mkdir -p \
|
||||
/tmp/tvheadend && \
|
||||
@@ -160,21 +153,31 @@ RUN \
|
||||
cd /tmp/tvheadend && \
|
||||
git checkout ${TVHEADEND_COMMIT} && \
|
||||
./configure \
|
||||
--disable-avahi \
|
||||
--disable-bintray_cache \
|
||||
--disable-dbus_1 \
|
||||
`#Encoding` \
|
||||
--disable-ffmpeg_static \
|
||||
--disable-libfdkaac_static \
|
||||
--disable-libmfx_static \
|
||||
--disable-libtheora_static \
|
||||
--disable-libopus_static \
|
||||
--disable-libvorbis_static \
|
||||
--disable-libvpx_static \
|
||||
--disable-libx264_static \
|
||||
--disable-libx265_static \
|
||||
--disable-libfdkaac \
|
||||
--enable-libopus \
|
||||
--enable-libvorbis \
|
||||
--enable-libvpx \
|
||||
--enable-libx264 \
|
||||
--enable-libx265 \
|
||||
\
|
||||
`#Options` \
|
||||
--disable-avahi \
|
||||
--disable-dbus_1 \
|
||||
--disable-bintray_cache \
|
||||
--disable-hdhomerun_static \
|
||||
--enable-hdhomerun_client \
|
||||
--enable-hdhomerun_static \
|
||||
--enable-libav \
|
||||
--enable-pngquant \
|
||||
--enable-trace \
|
||||
--infodir=/usr/share/info \
|
||||
--localstatedir=/var \
|
||||
--mandir=/usr/share/man \
|
||||
@@ -235,15 +238,18 @@ RUN \
|
||||
curl \
|
||||
ffmpeg \
|
||||
ffmpeg-libs \
|
||||
gnu-libiconv \
|
||||
gzip \
|
||||
libcrypto1.1 \
|
||||
libcurl \
|
||||
libressl \
|
||||
libcurl \
|
||||
libdvbcsa \
|
||||
libhdhomerun-libs \
|
||||
libssl1.1 \
|
||||
libvpx \
|
||||
libxml2 \
|
||||
libxslt \
|
||||
linux-headers \
|
||||
openssl \
|
||||
opus \
|
||||
pcre2 \
|
||||
perl \
|
||||
@@ -274,10 +280,12 @@ RUN \
|
||||
perl-io-socket-ssl \
|
||||
perl-io-stringy \
|
||||
perl-json \
|
||||
perl-json-xs \
|
||||
perl-libwww \
|
||||
perl-lingua-en-numbers-ordinate \
|
||||
perl-lingua-preferred \
|
||||
perl-list-moreutils \
|
||||
perl-lwp-useragent-determined \
|
||||
perl-module-build \
|
||||
perl-module-pluggable \
|
||||
perl-net-ssleay \
|
||||
@@ -298,6 +306,7 @@ RUN \
|
||||
perl-xml-treepp \
|
||||
perl-xml-twig \
|
||||
perl-xml-writer \
|
||||
py3-requests \
|
||||
python \
|
||||
tar \
|
||||
uriparser \
|
||||
@@ -305,9 +314,6 @@ RUN \
|
||||
x264 \
|
||||
x265 \
|
||||
zlib && \
|
||||
apk add --no-cache \
|
||||
--repository http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
||||
gnu-libiconv && \
|
||||
echo "**** Add Picons ****" && \
|
||||
mkdir -p /picons && \
|
||||
curl -o \
|
||||
@@ -317,7 +323,6 @@ RUN \
|
||||
# copy local files and buildstage artifacts
|
||||
COPY --from=buildstage /tmp/argtable-build/usr/ /usr/
|
||||
COPY --from=buildstage /tmp/comskip-build/usr/ /usr/
|
||||
COPY --from=buildstage /tmp/dvbapps-build/usr/ /usr/
|
||||
COPY --from=buildstage /tmp/tvheadend-build/usr/ /usr/
|
||||
COPY --from=buildstage /tmp/xmltv-build/usr/ /usr/
|
||||
COPY --from=buildstage /usr/local/share/man/ /usr/local/share/man/
|
||||
|
||||
@@ -3,12 +3,11 @@ FROM lsiobase/alpine:arm32v7-3.11 as buildstage
|
||||
|
||||
# package versions
|
||||
ARG ARGTABLE_VER="2.13"
|
||||
ARG TVH_VER="release/4.2"
|
||||
ARG XMLTV_VER="v0.6.1"
|
||||
ARG TVHEADEND_COMMIT
|
||||
|
||||
# environment settings
|
||||
ARG TZ="Europe/Oslo"
|
||||
ARG TVHEADEND_COMMIT
|
||||
ENV HOME="/config"
|
||||
|
||||
# copy patches
|
||||
@@ -30,17 +29,20 @@ RUN \
|
||||
gcc \
|
||||
gettext-dev \
|
||||
git \
|
||||
gnu-libiconv-dev \
|
||||
gzip \
|
||||
jq \
|
||||
libcurl \
|
||||
libdvbcsa-dev \
|
||||
libgcrypt-dev \
|
||||
libressl-dev \
|
||||
libhdhomerun-dev \
|
||||
libtool \
|
||||
libvpx-dev \
|
||||
libxml2-dev \
|
||||
libxslt-dev \
|
||||
linux-headers \
|
||||
make \
|
||||
mercurial \
|
||||
openssl-dev \
|
||||
opus-dev \
|
||||
patch \
|
||||
pcre2-dev \
|
||||
@@ -72,10 +74,12 @@ RUN \
|
||||
perl-io-socket-ssl \
|
||||
perl-io-stringy \
|
||||
perl-json \
|
||||
perl-json-xs \
|
||||
perl-libwww \
|
||||
perl-lingua-en-numbers-ordinate \
|
||||
perl-lingua-preferred \
|
||||
perl-list-moreutils \
|
||||
perl-lwp-useragent-determined \
|
||||
perl-module-build \
|
||||
perl-module-pluggable \
|
||||
perl-net-ssleay \
|
||||
@@ -105,10 +109,7 @@ RUN \
|
||||
wget \
|
||||
x264-dev \
|
||||
x265-dev \
|
||||
zlib-dev && \
|
||||
apk add --no-cache \
|
||||
--repository http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
||||
gnu-libiconv-dev
|
||||
zlib-dev
|
||||
|
||||
RUN \
|
||||
echo "**** remove musl iconv.h and replace with gnu-iconv.h ****" && \
|
||||
@@ -117,7 +118,7 @@ RUN \
|
||||
|
||||
RUN \
|
||||
echo "**** install perl modules for xmltv ****" && \
|
||||
curl -L http://cpanmin.us | perl - App::cpanminus && \
|
||||
curl -L https://cpanmin.us | perl - App::cpanminus && \
|
||||
cpanm --installdeps /tmp/patches
|
||||
|
||||
RUN \
|
||||
@@ -125,7 +126,7 @@ RUN \
|
||||
git clone https://github.com/XMLTV/xmltv.git /tmp/xmltv && \
|
||||
cd /tmp/xmltv && \
|
||||
git checkout ${XMLTV_VER} && \
|
||||
echo "**** fix test for xmltv alpine 3.11 ****" && \
|
||||
echo "**** Fix test for xmltv alpine 3.11 ****" && \
|
||||
patch -p1 -i /tmp/patches/test_tv_imdb.t.patch && \
|
||||
echo "**** Perl 5.26 fixes for XMTLV ****" && \
|
||||
sed "s/use POSIX 'tmpnam';//" -i filter/tv_to_latex && \
|
||||
@@ -140,19 +141,11 @@ RUN \
|
||||
make test && \
|
||||
make DESTDIR=/tmp/xmltv-build install
|
||||
|
||||
RUN \
|
||||
echo "**** compile dvb-apps ****" && \
|
||||
hg clone http://linuxtv.org/hg/dvb-apps /tmp/dvb-apps && \
|
||||
cd /tmp/dvb-apps && \
|
||||
make -C lib && \
|
||||
make -C lib DESTDIR=/tmp/dvbapps-build install && \
|
||||
cp -pr /tmp/dvbapps-build/usr/* /usr/
|
||||
|
||||
RUN \
|
||||
echo "**** compile tvheadend ****" && \
|
||||
if [ -z ${TVHEADEND_COMMIT+x} ]; then \
|
||||
TVHEADEND_COMMIT=$(curl -sX GET https://api.github.com/repos/tvheadend/tvheadend/commits/${TVH_VER} \
|
||||
| jq -r '. | .sha'); \
|
||||
TVHEADEND_COMMIT=$(curl -sX GET https://api.github.com/repos/tvheadend/tvheadend/commits/master \
|
||||
| jq -r '. | .sha'); \
|
||||
fi && \
|
||||
mkdir -p \
|
||||
/tmp/tvheadend && \
|
||||
@@ -160,21 +153,31 @@ RUN \
|
||||
cd /tmp/tvheadend && \
|
||||
git checkout ${TVHEADEND_COMMIT} && \
|
||||
./configure \
|
||||
--disable-avahi \
|
||||
--disable-bintray_cache \
|
||||
--disable-dbus_1 \
|
||||
`#Encoding` \
|
||||
--disable-ffmpeg_static \
|
||||
--disable-libfdkaac_static \
|
||||
--disable-libmfx_static \
|
||||
--disable-libtheora_static \
|
||||
--disable-libopus_static \
|
||||
--disable-libvorbis_static \
|
||||
--disable-libvpx_static \
|
||||
--disable-libx264_static \
|
||||
--disable-libx265_static \
|
||||
--disable-libfdkaac \
|
||||
--enable-libopus \
|
||||
--enable-libvorbis \
|
||||
--enable-libvpx \
|
||||
--enable-libx264 \
|
||||
--enable-libx265 \
|
||||
\
|
||||
`#Options` \
|
||||
--disable-avahi \
|
||||
--disable-dbus_1 \
|
||||
--disable-bintray_cache \
|
||||
--disable-hdhomerun_static \
|
||||
--enable-hdhomerun_client \
|
||||
--enable-hdhomerun_static \
|
||||
--enable-libav \
|
||||
--enable-pngquant \
|
||||
--enable-trace \
|
||||
--infodir=/usr/share/info \
|
||||
--localstatedir=/var \
|
||||
--mandir=/usr/share/man \
|
||||
@@ -235,15 +238,18 @@ RUN \
|
||||
curl \
|
||||
ffmpeg \
|
||||
ffmpeg-libs \
|
||||
gnu-libiconv \
|
||||
gzip \
|
||||
libcrypto1.1 \
|
||||
libcurl \
|
||||
libressl \
|
||||
libcurl \
|
||||
libdvbcsa \
|
||||
libhdhomerun-libs \
|
||||
libssl1.1 \
|
||||
libvpx \
|
||||
libxml2 \
|
||||
libxslt \
|
||||
linux-headers \
|
||||
openssl \
|
||||
opus \
|
||||
pcre2 \
|
||||
perl \
|
||||
@@ -274,10 +280,12 @@ RUN \
|
||||
perl-io-socket-ssl \
|
||||
perl-io-stringy \
|
||||
perl-json \
|
||||
perl-json-xs \
|
||||
perl-libwww \
|
||||
perl-lingua-en-numbers-ordinate \
|
||||
perl-lingua-preferred \
|
||||
perl-list-moreutils \
|
||||
perl-lwp-useragent-determined \
|
||||
perl-module-build \
|
||||
perl-module-pluggable \
|
||||
perl-net-ssleay \
|
||||
@@ -298,6 +306,7 @@ RUN \
|
||||
perl-xml-treepp \
|
||||
perl-xml-twig \
|
||||
perl-xml-writer \
|
||||
py3-requests \
|
||||
python \
|
||||
tar \
|
||||
uriparser \
|
||||
@@ -305,9 +314,6 @@ RUN \
|
||||
x264 \
|
||||
x265 \
|
||||
zlib && \
|
||||
apk add --no-cache \
|
||||
--repository http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
||||
gnu-libiconv && \
|
||||
echo "**** Add Picons ****" && \
|
||||
mkdir -p /picons && \
|
||||
curl -o \
|
||||
@@ -317,7 +323,6 @@ RUN \
|
||||
# copy local files and buildstage artifacts
|
||||
COPY --from=buildstage /tmp/argtable-build/usr/ /usr/
|
||||
COPY --from=buildstage /tmp/comskip-build/usr/ /usr/
|
||||
COPY --from=buildstage /tmp/dvbapps-build/usr/ /usr/
|
||||
COPY --from=buildstage /tmp/tvheadend-build/usr/ /usr/
|
||||
COPY --from=buildstage /tmp/xmltv-build/usr/ /usr/
|
||||
COPY --from=buildstage /usr/local/share/man/ /usr/local/share/man/
|
||||
|
||||
184
Jenkinsfile
vendored
184
Jenkinsfile
vendored
@@ -16,7 +16,7 @@ pipeline {
|
||||
GITHUB_TOKEN=credentials('498b4638-2d02-4ce5-832d-8a57d01d97ab')
|
||||
GITLAB_TOKEN=credentials('b6f0f1dd-6952-4cf6-95d1-9c06380283f0')
|
||||
GITLAB_NAMESPACE=credentials('gitlab-namespace-id')
|
||||
EXT_GIT_BRANCH = 'release/4.2'
|
||||
EXT_GIT_BRANCH = 'master'
|
||||
EXT_USER = 'tvheadend'
|
||||
EXT_REPO = 'tvheadend'
|
||||
BUILD_VERSION_ARG = 'TVHEADEND_COMMIT'
|
||||
@@ -44,7 +44,7 @@ pipeline {
|
||||
script{
|
||||
env.EXIT_STATUS = ''
|
||||
env.LS_RELEASE = sh(
|
||||
script: '''docker run --rm alexeiled/skopeo sh -c 'skopeo inspect docker://docker.io/'${DOCKERHUB_IMAGE}':release-4.2 2>/dev/null' | jq -r '.Labels.build_version' | awk '{print $3}' | grep '\\-ls' || : ''',
|
||||
script: '''docker run --rm alexeiled/skopeo sh -c 'skopeo inspect docker://docker.io/'${DOCKERHUB_IMAGE}':latest 2>/dev/null' | jq -r '.Labels.build_version' | awk '{print $3}' | grep '\\-ls' || : ''',
|
||||
returnStdout: true).trim()
|
||||
env.LS_RELEASE_NOTES = sh(
|
||||
script: '''cat readme-vars.yml | awk -F \\" '/date: "[0-9][0-9].[0-9][0-9].[0-9][0-9]:/ {print $4;exit;}' | sed -E ':a;N;$!ba;s/\\r{0,1}\\n/\\\\n/g' ''',
|
||||
@@ -129,10 +129,10 @@ pipeline {
|
||||
}
|
||||
}
|
||||
}
|
||||
// If this is a release-4.2 build use live docker endpoints
|
||||
// If this is a master build use live docker endpoints
|
||||
stage("Set ENV live build"){
|
||||
when {
|
||||
branch "release-4.2"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
}
|
||||
steps {
|
||||
@@ -153,7 +153,7 @@ pipeline {
|
||||
// If this is a dev build use dev docker endpoints
|
||||
stage("Set ENV dev build"){
|
||||
when {
|
||||
not {branch "release-4.2"}
|
||||
not {branch "master"}
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
}
|
||||
steps {
|
||||
@@ -226,7 +226,7 @@ pipeline {
|
||||
// Use helper containers to render templated files
|
||||
stage('Update-Templates') {
|
||||
when {
|
||||
branch "release-4.2"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
expression {
|
||||
env.CONTAINER_NAME != null
|
||||
@@ -237,7 +237,7 @@ pipeline {
|
||||
set -e
|
||||
TEMPDIR=$(mktemp -d)
|
||||
docker pull linuxserver/jenkins-builder:latest
|
||||
docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH=release-4.2 -v ${TEMPDIR}:/ansible/jenkins linuxserver/jenkins-builder:latest
|
||||
docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH=master -v ${TEMPDIR}:/ansible/jenkins linuxserver/jenkins-builder:latest
|
||||
CURRENTHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8)
|
||||
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
|
||||
NEWHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8)
|
||||
@@ -245,7 +245,7 @@ pipeline {
|
||||
mkdir -p ${TEMPDIR}/repo
|
||||
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
|
||||
cd ${TEMPDIR}/repo/${LS_REPO}
|
||||
git checkout -f release-4.2
|
||||
git checkout -f master
|
||||
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
|
||||
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github
|
||||
cp --parents ${TEMPLATED_FILES} ${TEMPDIR}/repo/${LS_REPO}/
|
||||
@@ -277,7 +277,7 @@ pipeline {
|
||||
// Exit the build if the Templated files were just updated
|
||||
stage('Template-exit') {
|
||||
when {
|
||||
branch "release-4.2"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
environment name: 'FILES_UPDATED', value: 'true'
|
||||
expression {
|
||||
@@ -357,7 +357,9 @@ pipeline {
|
||||
sh "docker build --no-cache --pull -f Dockerfile.armhf -t ${IMAGE}:arm32v7-${META_TAG} \
|
||||
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
||||
sh "docker tag ${IMAGE}:arm32v7-${META_TAG} lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
|
||||
sh "docker push lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
|
||||
retry(5) {
|
||||
sh "docker push lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
|
||||
}
|
||||
sh '''docker rmi \
|
||||
${IMAGE}:arm32v7-${META_TAG} \
|
||||
lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
|
||||
@@ -384,7 +386,9 @@ pipeline {
|
||||
sh "docker build --no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} \
|
||||
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${META_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
||||
sh "docker tag ${IMAGE}:arm64v8-${META_TAG} lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
|
||||
sh "docker push lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
|
||||
retry(5) {
|
||||
sh "docker push lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
|
||||
}
|
||||
sh '''docker rmi \
|
||||
${IMAGE}:arm64v8-${META_TAG} \
|
||||
lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
|
||||
@@ -396,7 +400,7 @@ pipeline {
|
||||
// Take the image we just built and dump package versions for comparison
|
||||
stage('Update-packages') {
|
||||
when {
|
||||
branch "release-4.2"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
environment name: 'EXIT_STATUS', value: ''
|
||||
}
|
||||
@@ -424,7 +428,7 @@ pipeline {
|
||||
echo "Package tag sha from current packages in buit container is ${NEW_PACKAGE_TAG} comparing to old ${PACKAGE_TAG} from github"
|
||||
if [ "${NEW_PACKAGE_TAG}" != "${PACKAGE_TAG}" ]; then
|
||||
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/${LS_REPO}
|
||||
git --git-dir ${TEMPDIR}/${LS_REPO}/.git checkout -f release-4.2
|
||||
git --git-dir ${TEMPDIR}/${LS_REPO}/.git checkout -f master
|
||||
cp ${TEMPDIR}/package_versions.txt ${TEMPDIR}/${LS_REPO}/
|
||||
cd ${TEMPDIR}/${LS_REPO}/
|
||||
wait
|
||||
@@ -448,7 +452,7 @@ pipeline {
|
||||
// Exit the build if the package file was just updated
|
||||
stage('PACKAGE-exit') {
|
||||
when {
|
||||
branch "release-4.2"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
environment name: 'PACKAGE_UPDATED', value: 'true'
|
||||
environment name: 'EXIT_STATUS', value: ''
|
||||
@@ -462,7 +466,7 @@ pipeline {
|
||||
// Exit the build if this is just a package check and there are no changes to push
|
||||
stage('PACKAGECHECK-exit') {
|
||||
when {
|
||||
branch "release-4.2"
|
||||
branch "master"
|
||||
environment name: 'CHANGE_ID', value: ''
|
||||
environment name: 'PACKAGE_UPDATED', value: 'false'
|
||||
environment name: 'EXIT_STATUS', value: ''
|
||||
@@ -549,22 +553,26 @@ pipeline {
|
||||
passwordVariable: 'QUAYPASS'
|
||||
]
|
||||
]) {
|
||||
retry(5) {
|
||||
sh '''#! /bin/bash
|
||||
set -e
|
||||
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
|
||||
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
|
||||
echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
|
||||
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
|
||||
for PUSHIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
|
||||
docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
|
||||
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:latest
|
||||
docker push ${PUSHIMAGE}:latest
|
||||
docker push ${PUSHIMAGE}:${META_TAG}
|
||||
done
|
||||
'''
|
||||
}
|
||||
sh '''#! /bin/bash
|
||||
set -e
|
||||
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
|
||||
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
|
||||
echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
|
||||
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
|
||||
for PUSHIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
|
||||
docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
|
||||
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:release-4.2
|
||||
docker push ${PUSHIMAGE}:release-4.2
|
||||
docker push ${PUSHIMAGE}:${META_TAG}
|
||||
done
|
||||
for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "{GITLABIMAGE}" "${IMAGE}"; do
|
||||
docker rmi \
|
||||
${DELETEIMAGE}:${META_TAG} \
|
||||
${DELETEIMAGE}:release-4.2 || :
|
||||
${DELETEIMAGE}:latest || :
|
||||
done
|
||||
'''
|
||||
}
|
||||
@@ -591,68 +599,70 @@ pipeline {
|
||||
passwordVariable: 'QUAYPASS'
|
||||
]
|
||||
]) {
|
||||
sh '''#! /bin/bash
|
||||
set -e
|
||||
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
|
||||
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
|
||||
echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
|
||||
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
|
||||
if [ "${CI}" == "false" ]; then
|
||||
docker pull lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
docker pull lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
docker tag lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
|
||||
docker tag lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
|
||||
fi
|
||||
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}"; do
|
||||
docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
|
||||
docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
|
||||
docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
||||
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-release-4.2
|
||||
docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-release-4.2
|
||||
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-release-4.2
|
||||
docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
|
||||
docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
|
||||
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
||||
docker push ${MANIFESTIMAGE}:amd64-release-4.2
|
||||
docker push ${MANIFESTIMAGE}:arm32v7-release-4.2
|
||||
docker push ${MANIFESTIMAGE}:arm64v8-release-4.2
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:release-4.2 || :
|
||||
docker manifest create ${MANIFESTIMAGE}:release-4.2 ${MANIFESTIMAGE}:amd64-release-4.2 ${MANIFESTIMAGE}:arm32v7-release-4.2 ${MANIFESTIMAGE}:arm64v8-release-4.2
|
||||
docker manifest annotate ${MANIFESTIMAGE}:release-4.2 ${MANIFESTIMAGE}:arm32v7-release-4.2 --os linux --arch arm
|
||||
docker manifest annotate ${MANIFESTIMAGE}:release-4.2 ${MANIFESTIMAGE}:arm64v8-release-4.2 --os linux --arch arm64 --variant v8
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
|
||||
docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
||||
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
|
||||
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:release-4.2
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
|
||||
done
|
||||
for LEGACYIMAGE in "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
|
||||
docker tag ${IMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:amd64-${META_TAG}
|
||||
docker tag ${IMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-${META_TAG}
|
||||
docker tag ${IMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-${META_TAG}
|
||||
docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:release-4.2
|
||||
docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:${META_TAG}
|
||||
docker tag ${LEGACYIMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-release-4.2
|
||||
docker tag ${LEGACYIMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-release-4.2
|
||||
docker push ${LEGACYIMAGE}:amd64-${META_TAG}
|
||||
docker push ${LEGACYIMAGE}:arm32v7-${META_TAG}
|
||||
docker push ${LEGACYIMAGE}:arm64v8-${META_TAG}
|
||||
docker push ${LEGACYIMAGE}:release-4.2
|
||||
docker push ${LEGACYIMAGE}:${META_TAG}
|
||||
docker push ${LEGACYIMAGE}:arm32v7-release-4.2
|
||||
docker push ${LEGACYIMAGE}:arm64v8-release-4.2
|
||||
done
|
||||
'''
|
||||
retry(5) {
|
||||
sh '''#! /bin/bash
|
||||
set -e
|
||||
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
|
||||
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
|
||||
echo $GITHUB_TOKEN | docker login docker.pkg.github.com -u LinuxServer-CI --password-stdin
|
||||
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
|
||||
if [ "${CI}" == "false" ]; then
|
||||
docker pull lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
docker pull lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
|
||||
docker tag lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
|
||||
docker tag lsiodev/buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
|
||||
fi
|
||||
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}"; do
|
||||
docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
|
||||
docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
|
||||
docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
||||
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-latest
|
||||
docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-latest
|
||||
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-latest
|
||||
docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
|
||||
docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
|
||||
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
||||
docker push ${MANIFESTIMAGE}:amd64-latest
|
||||
docker push ${MANIFESTIMAGE}:arm32v7-latest
|
||||
docker push ${MANIFESTIMAGE}:arm64v8-latest
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:latest || :
|
||||
docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:arm64v8-latest
|
||||
docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm32v7-latest --os linux --arch arm
|
||||
docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
|
||||
docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
||||
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
|
||||
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:latest
|
||||
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
|
||||
done
|
||||
for LEGACYIMAGE in "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
|
||||
docker tag ${IMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:amd64-${META_TAG}
|
||||
docker tag ${IMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-${META_TAG}
|
||||
docker tag ${IMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-${META_TAG}
|
||||
docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:latest
|
||||
docker tag ${LEGACYIMAGE}:amd64-${META_TAG} ${LEGACYIMAGE}:${META_TAG}
|
||||
docker tag ${LEGACYIMAGE}:arm32v7-${META_TAG} ${LEGACYIMAGE}:arm32v7-latest
|
||||
docker tag ${LEGACYIMAGE}:arm64v8-${META_TAG} ${LEGACYIMAGE}:arm64v8-latest
|
||||
docker push ${LEGACYIMAGE}:amd64-${META_TAG}
|
||||
docker push ${LEGACYIMAGE}:arm32v7-${META_TAG}
|
||||
docker push ${LEGACYIMAGE}:arm64v8-${META_TAG}
|
||||
docker push ${LEGACYIMAGE}:latest
|
||||
docker push ${LEGACYIMAGE}:${META_TAG}
|
||||
docker push ${LEGACYIMAGE}:arm32v7-latest
|
||||
docker push ${LEGACYIMAGE}:arm64v8-latest
|
||||
done
|
||||
'''
|
||||
}
|
||||
sh '''#! /bin/bash
|
||||
for DELETEIMAGE in "${QUAYIMAGE}" "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
|
||||
docker rmi \
|
||||
${DELETEIMAGE}:amd64-${META_TAG} \
|
||||
${DELETEIMAGE}:amd64-release-4.2 \
|
||||
${DELETEIMAGE}:amd64-latest \
|
||||
${DELETEIMAGE}:arm32v7-${META_TAG} \
|
||||
${DELETEIMAGE}:arm32v7-release-4.2 \
|
||||
${DELETEIMAGE}:arm32v7-latest \
|
||||
${DELETEIMAGE}:arm64v8-${META_TAG} \
|
||||
${DELETEIMAGE}:arm64v8-release-4.2 || :
|
||||
${DELETEIMAGE}:arm64v8-latest || :
|
||||
done
|
||||
docker rmi \
|
||||
lsiodev/buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} \
|
||||
@@ -664,7 +674,7 @@ pipeline {
|
||||
// If this is a public release tag it in the LS Github
|
||||
stage('Github-Tag-Push-Release') {
|
||||
when {
|
||||
branch "release-4.2"
|
||||
branch "master"
|
||||
expression {
|
||||
env.LS_RELEASE != env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
||||
}
|
||||
@@ -676,17 +686,17 @@ pipeline {
|
||||
sh '''curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/git/tags \
|
||||
-d '{"tag":"'${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}'",\
|
||||
"object": "'${COMMIT_SHA}'",\
|
||||
"message": "Tagging Release '${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}' to release-4.2",\
|
||||
"message": "Tagging Release '${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}' to master",\
|
||||
"type": "commit",\
|
||||
"tagger": {"name": "LinuxServer Jenkins","email": "jenkins@linuxserver.io","date": "'${GITHUB_DATE}'"}}' '''
|
||||
echo "Pushing New release for Tag"
|
||||
sh '''#! /bin/bash
|
||||
curl -s https://api.github.com/repos/${EXT_USER}/${EXT_REPO}/commits/${EXT_GIT_BRANCH} | jq '. | .commit.message' | sed 's:^.\\(.*\\).$:\\1:' > releasebody.json
|
||||
echo '{"tag_name":"'${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}'",\
|
||||
"target_commitish": "release-4.2",\
|
||||
"target_commitish": "master",\
|
||||
"name": "'${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}'",\
|
||||
"body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n**'${EXT_REPO}' Changes:**\\n\\n' > start
|
||||
printf '","draft": false,"prerelease": true}' >> releasebody.json
|
||||
printf '","draft": false,"prerelease": false}' >> releasebody.json
|
||||
paste -d'\\0' start releasebody.json > releasebody.json.done
|
||||
curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases -d @releasebody.json.done'''
|
||||
}
|
||||
|
||||
26
README.md
26
README.md
@@ -7,7 +7,7 @@
|
||||
[](https://github.com/linuxserver "view the source for all of our repositories.")
|
||||
[](https://opencollective.com/linuxserver "please consider helping us by either donating or contributing to our budget")
|
||||
|
||||
The [LinuxServer.io](https://linuxserver.io) team brings you another container release featuring :-
|
||||
The [LinuxServer.io](https://linuxserver.io) team brings you another container release featuring:
|
||||
|
||||
* regular and timely application updates
|
||||
* easy user mappings (PGID, PUID)
|
||||
@@ -86,14 +86,15 @@ docker create \
|
||||
-v <path to data>:/config \
|
||||
-v <path to recordings>:/recordings \
|
||||
--device /dev/dri:/dev/dri `#optional` \
|
||||
--device /dev/drb:/dev/dvb `#optional` \
|
||||
--device /dev/dvb:/dev/dvb `#optional` \
|
||||
--restart unless-stopped \
|
||||
linuxserver/tvheadend
|
||||
```
|
||||
|
||||
#### Host vs. Bridge
|
||||
|
||||
If you use IPTV, SAT>IP or HDHomeRun, you need to create the container with --net=host and remove the -p flags. This is because of a limitation in docker and multicast.
|
||||
If you use IPTV, SAT>IP or HDHomeRun, you need to create the container with --net=host and remove the -p flags. This is because to work with these services Tvheadend requires a multicast address of `239.255.255.250` and a UDP port of `1900` which at this time is not possible with docker bridge mode.
|
||||
If you have other host services which also use multicast such as SSDP/DLNA/Emby you may experience stabilty problems. These can be solved by giving tvheadend its own IP using macavlan.
|
||||
|
||||
|
||||
### docker-compose
|
||||
@@ -102,7 +103,7 @@ Compatible with docker-compose v2 schemas.
|
||||
|
||||
```
|
||||
---
|
||||
version: "2"
|
||||
version: "2.1"
|
||||
services:
|
||||
tvheadend:
|
||||
image: linuxserver/tvheadend
|
||||
@@ -120,7 +121,7 @@ services:
|
||||
- 9982:9982
|
||||
devices:
|
||||
- /dev/dri:/dev/dri #optional
|
||||
- /dev/drb:/dev/dvb #optional
|
||||
- /dev/dvb:/dev/dvb #optional
|
||||
restart: unless-stopped
|
||||
```
|
||||
|
||||
@@ -221,7 +222,7 @@ For advanced setup of tvheadend, go to [Tvheadend][appurl]
|
||||
|
||||
**Picons**
|
||||
|
||||
We have added all the picons from [picons.xyz](https://picons.xyz/) in the folder /picons. To enable the use of these picons, add the path to the Channel icon path in Configuration --> General --> Base.
|
||||
We have added all the picons from [picons.eu](https://picons.eu/) in the folder /picons. To enable the use of these picons, add the path to the Channel icon path in Configuration --> General --> Base.
|
||||
You need to enable minimum advanced view level to see the picons options.
|
||||
|
||||
## Additional runtime parameters
|
||||
@@ -229,6 +230,11 @@ You need to enable minimum advanced view level to see the picons options.
|
||||
In some cases it might be necessary to start tvheadend with additional parameters, for example to enable debugging or specify webroot for reverse proxy. Be sure to have the right parameters set, as adding the wrong once might lead to the container not starting correctly.
|
||||
|
||||
|
||||
## Docker Mods
|
||||
[](https://mods.linuxserver.io/?mod=tvheadend "view available mods for this container.")
|
||||
|
||||
We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to enable additional functionality within the containers. The list of Mods available for this image (if any) can be accessed via the dynamic badge above.
|
||||
|
||||
|
||||
## Support Info
|
||||
|
||||
@@ -294,12 +300,16 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
|
||||
|
||||
## Versions
|
||||
|
||||
* **27.12.19:** - Rebase to Alpine 3.11. Update XMLTV to 0.6.1
|
||||
* **02.10.19:** - Improve permissions fixing on render & dvb devices.
|
||||
* **27.12.19:** - Add requests and perl-json-xs package.
|
||||
* **27.12.19:** - Update to Alpine 3.11.
|
||||
* **02.10.19:** - Improve permission fixing on render & dvb devices.
|
||||
* **18.08.19:** - Add AMD drivers.
|
||||
* **02.08.19:** - Attempt to automatically fix permissions on /dev/dri and /dev/dvb.
|
||||
* **28.06.19:** - Rebasing to alpine 3.10.
|
||||
* **27.03.19:** - Rebase to Alpine 3.9, fix init logic to only chown once.
|
||||
* **23.03.19:** - Switching to new Base images, shift to arm32v7 tag.
|
||||
* **01.03.19:** - Bump xmltv to 0.6.1.
|
||||
* **28.02.19:** - add perl-lwp-useragent-determined.
|
||||
* **17.02.19:** - Bump xmltv to 5.70, ensure version tagging works by cloning tvheadend.
|
||||
* **14.02.19:** - Add picons path to config.
|
||||
* **15.01.19:** - Add pipeline logic and multi arch.
|
||||
|
||||
@@ -3,11 +3,11 @@
|
||||
# jenkins variables
|
||||
project_name: docker-tvheadend
|
||||
external_type: github_commit
|
||||
release_type: prerelease
|
||||
release_tag: release-4.2
|
||||
ls_branch: release-4.2
|
||||
release_type: stable
|
||||
release_tag: latest
|
||||
ls_branch: master
|
||||
repo_vars:
|
||||
- EXT_GIT_BRANCH = 'release/4.2'
|
||||
- EXT_GIT_BRANCH = 'master'
|
||||
- EXT_USER = 'tvheadend'
|
||||
- EXT_REPO = 'tvheadend'
|
||||
- BUILD_VERSION_ARG = 'TVHEADEND_COMMIT'
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
alpine-baselayout-3.2.0-r3
|
||||
alpine-keys-2.1-r2
|
||||
alsa-lib-1.2.1.2-r0
|
||||
apk-tools-2.10.4-r3
|
||||
apk-tools-2.10.5-r0
|
||||
bash-5.0.11-r1
|
||||
bsd-compat-headers-0.7.2-r0
|
||||
busybox-1.31.1-r8
|
||||
busybox-1.31.1-r9
|
||||
bzip2-1.0.8-r1
|
||||
ca-certificates-20191127-r0
|
||||
ca-certificates-cacert-20191127-r0
|
||||
ca-certificates-20191127-r1
|
||||
ca-certificates-cacert-20191127-r1
|
||||
coreutils-8.31-r0
|
||||
curl-7.67.0-r0
|
||||
elfutils-libelf-0.168-r2
|
||||
expat-2.2.9-r1
|
||||
ffmpeg-4.2.1-r3
|
||||
ffmpeg-libs-4.2.1-r3
|
||||
@@ -19,7 +20,7 @@ fribidi-1.0.8-r0
|
||||
gdbm-1.13-r1
|
||||
gmp-6.1.2-r1
|
||||
gnu-libiconv-1.15-r2
|
||||
gnutls-3.6.10-r0
|
||||
gnutls-3.6.10-r1
|
||||
gzip-1.10-r0
|
||||
lame-3.100-r0
|
||||
libacl-2.2.53-r0
|
||||
@@ -28,24 +29,22 @@ libattr-2.4.48-r0
|
||||
libbsd-0.10.0-r0
|
||||
libbz2-1.0.8-r1
|
||||
libc-utils-0.7.2-r0
|
||||
libcrypto1.1-1.1.1d-r3
|
||||
libcrypto1.1-1.1.1g-r0
|
||||
libcurl-7.67.0-r0
|
||||
libdrm-2.4.100-r0
|
||||
libdvbcsa-1.1.0-r1
|
||||
libffi-3.2.1-r6
|
||||
libgcc-9.2.0-r3
|
||||
libgcc-9.2.0-r4
|
||||
libgcrypt-1.8.5-r0
|
||||
libgpg-error-1.36-r2
|
||||
libhdhomerun-libs-20190621-r0
|
||||
libidn-1.35-r0
|
||||
libjpeg-turbo-2.0.3-r0
|
||||
libjpeg-turbo-2.0.4-r0
|
||||
libogg-1.3.4-r0
|
||||
libpciaccess-0.16-r0
|
||||
libpng-1.6.37-r1
|
||||
libressl-3.0.2-r0
|
||||
libressl3.0-libcrypto-3.0.2-r0
|
||||
libressl3.0-libssl-3.0.2-r0
|
||||
libressl3.0-libtls-3.0.2-r0
|
||||
libssl1.1-1.1.1d-r3
|
||||
libstdc++-9.2.0-r3
|
||||
libssl1.1-1.1.1g-r0
|
||||
libstdc++-9.2.0-r4
|
||||
libtasn1-4.15.0-r0
|
||||
libtheora-1.1.1-r14
|
||||
libtls-standalone-2.9.1-r0
|
||||
@@ -53,6 +52,7 @@ libunistring-0.9.10-r0
|
||||
liburiparser-0.9.3-r0
|
||||
libuuid-2.34-r1
|
||||
libva-2.6.0-r0
|
||||
libva-intel-driver-2.4.0-r0
|
||||
libvdpau-1.3-r0
|
||||
libvorbis-1.3.6-r2
|
||||
libvpx-1.8.1-r0
|
||||
@@ -62,17 +62,22 @@ libxcb-1.13.1-r0
|
||||
libxdmcp-1.1.3-r0
|
||||
libxext-1.3.4-r0
|
||||
libxfixes-5.0.3-r2
|
||||
libxml2-2.9.10-r1
|
||||
libxml2-2.9.10-r3
|
||||
libxshmfence-1.3-r0
|
||||
libxslt-1.1.34-r0
|
||||
linux-headers-4.19.36-r0
|
||||
linux-pam-1.3.1-r1
|
||||
musl-1.1.24-r0
|
||||
musl-utils-1.1.24-r0
|
||||
ncurses-libs-6.1_p20191130-r0
|
||||
ncurses-terminfo-6.1_p20191130-r0
|
||||
ncurses-terminfo-base-6.1_p20191130-r0
|
||||
llvm9-libs-9.0.0-r1
|
||||
mesa-19.2.7-r0
|
||||
mesa-dri-ati-19.2.7-r0
|
||||
mesa-glapi-19.2.7-r0
|
||||
musl-1.1.24-r2
|
||||
musl-utils-1.1.24-r2
|
||||
ncurses-libs-6.1_p20200118-r4
|
||||
ncurses-terminfo-base-6.1_p20200118-r4
|
||||
nettle-3.5.1-r0
|
||||
nghttp2-libs-1.40.0-r0
|
||||
openssl-1.1.1g-r0
|
||||
opus-1.3.1-r0
|
||||
p11-kit-0.23.18.1-r0
|
||||
pcre2-10.34-r1
|
||||
@@ -80,12 +85,14 @@ perl-5.30.1-r0
|
||||
perl-archive-zip-1.67-r0
|
||||
perl-b-hooks-endofscope-0.24-r0
|
||||
perl-boolean-0.46-r0
|
||||
perl-canary-stability-2013-r0
|
||||
perl-capture-tiny-0.48-r0
|
||||
perl-cgi-4.44-r0
|
||||
perl-class-data-inheritable-0.08-r0
|
||||
perl-class-inspector-1.36-r0
|
||||
perl-class-methodmaker-2.24-r4
|
||||
perl-class-singleton-1.5-r0
|
||||
perl-common-sense-3.74-r1
|
||||
perl-compress-raw-bzip2-2.093-r0
|
||||
perl-compress-raw-zlib-2.093-r0
|
||||
perl-cpan-meta-check-0.014-r0
|
||||
@@ -129,12 +136,14 @@ perl-io-socket-ssl-2.066-r0
|
||||
perl-io-stringy-2.112-r0
|
||||
perl-ipc-run3-0.048-r1
|
||||
perl-json-4.02-r0
|
||||
perl-json-xs-4.02-r1
|
||||
perl-libwww-6.43-r0
|
||||
perl-lingua-en-numbers-ordinate-1.04-r1
|
||||
perl-lingua-preferred-0.2.4-r1
|
||||
perl-list-moreutils-0.428-r0
|
||||
perl-list-moreutils-xs-0.428-r2
|
||||
perl-lwp-mediatypes-6.04-r0
|
||||
perl-lwp-useragent-determined-1.07-r0
|
||||
perl-module-build-0.4229-r0
|
||||
perl-module-implementation-0.09-r1
|
||||
perl-module-metadata-1.000037-r0
|
||||
@@ -182,6 +191,7 @@ perl-test2-plugin-nowarnings-0.08-r0
|
||||
perl-test2-suite-0.000127-r0
|
||||
perl-timedate-2.30-r1
|
||||
perl-try-tiny-0.30-r1
|
||||
perl-types-serialiser-1.0-r1
|
||||
perl-unicode-string-2.10-r1
|
||||
perl-uri-1.76-r0
|
||||
perl-variable-magic-0.62-r2
|
||||
@@ -196,15 +206,21 @@ perl-xml-treepp-0.43-r1
|
||||
perl-xml-twig-3.52-r1
|
||||
perl-xml-writer-0.625-r2
|
||||
perl-yaml-syck-1.31-r2
|
||||
python2-2.7.16-r3
|
||||
py3-certifi-2019.9.11-r2
|
||||
py3-chardet-3.0.4-r3
|
||||
py3-idna-2.8-r3
|
||||
py3-requests-2.22.0-r0
|
||||
py3-urllib3-1.25.7-r1
|
||||
python2-2.7.18-r0
|
||||
python3-3.8.2-r0
|
||||
readline-8.0.1-r0
|
||||
scanelf-1.2.4-r0
|
||||
sdl2-2.0.10-r0
|
||||
shadow-4.7-r1
|
||||
sqlite-libs-3.30.1-r1
|
||||
ssl_client-1.31.1-r8
|
||||
sqlite-libs-3.30.1-r2
|
||||
ssl_client-1.31.1-r9
|
||||
tar-1.32-r1
|
||||
tzdata-2019c-r0
|
||||
tzdata-2020a-r0
|
||||
uriparser-0.9.3-r0
|
||||
v4l-utils-libs-1.18.0-r0
|
||||
wayland-libs-client-1.17.0-r0
|
||||
|
||||
@@ -11,7 +11,6 @@ requires 'HTML::TableExtract' ;
|
||||
requires 'HTTP::Cache::Transparent' => ">= 1.3, != 1.4" ;
|
||||
requires 'inc' ;
|
||||
requires 'JSON::PP' ;
|
||||
requires 'JSON::XS' ;
|
||||
requires 'LWP::Simple' ;
|
||||
requires 'LWP::UserAgent' ;
|
||||
requires 'PerlIO::gzip' ;
|
||||
|
||||
@@ -53,14 +53,15 @@ opt_param_usage_include_ports: false
|
||||
opt_param_device_map: true
|
||||
opt_param_devices:
|
||||
- { device_path: "/dev/dri", device_host_path: "/dev/dri", desc: "Only needed if you want to use your AMD/Intel GPU for hardware accelerated video encoding (vaapi)." }
|
||||
- { device_path: "/dev/dvb", device_host_path: "/dev/drb", desc: "Only needed if you want to pass through a DVB card to the container. If you use IPTV or HDHomeRun you can leave it out." }
|
||||
- { device_path: "/dev/dvb", device_host_path: "/dev/dvb", desc: "Only needed if you want to pass through a DVB card to the container. If you use IPTV or HDHomeRun you can leave it out." }
|
||||
opt_cap_add_param: false
|
||||
optional_block_1: true
|
||||
optional_block_1_items:
|
||||
- |
|
||||
#### Host vs. Bridge
|
||||
|
||||
If you use IPTV, SAT>IP or HDHomeRun, you need to create the container with --net=host and remove the -p flags. This is because of a limitation in docker and multicast.
|
||||
If you use IPTV, SAT>IP or HDHomeRun, you need to create the container with --net=host and remove the -p flags. This is because to work with these services Tvheadend requires a multicast address of `239.255.255.250` and a UDP port of `1900` which at this time is not possible with docker bridge mode.
|
||||
If you have other host services which also use multicast such as SSDP/DLNA/Emby you may experience stabilty problems. These can be solved by giving tvheadend its own IP using macavlan.
|
||||
|
||||
# application setup block
|
||||
app_setup_block_enabled: true
|
||||
@@ -116,7 +117,7 @@ app_setup_block: |
|
||||
|
||||
**Picons**
|
||||
|
||||
We have added all the picons from [picons.xyz](https://picons.xyz/) in the folder /picons. To enable the use of these picons, add the path to the Channel icon path in Configuration --> General --> Base.
|
||||
We have added all the picons from [picons.eu](https://picons.eu/) in the folder /picons. To enable the use of these picons, add the path to the Channel icon path in Configuration --> General --> Base.
|
||||
You need to enable minimum advanced view level to see the picons options.
|
||||
|
||||
## Additional runtime parameters
|
||||
@@ -125,12 +126,16 @@ app_setup_block: |
|
||||
|
||||
# changelog
|
||||
changelogs:
|
||||
- { date: "27.12.19:", desc: "Rebase to Alpine 3.11. Update XMLTV to 0.6.1" }
|
||||
- { date: "02.10.19:", desc: "Improve permissions fixing on render & dvb devices." }
|
||||
- { date: "27.12.19:", desc: "Add requests and perl-json-xs package." }
|
||||
- { date: "27.12.19:", desc: "Update to Alpine 3.11." }
|
||||
- { date: "02.10.19:", desc: "Improve permission fixing on render & dvb devices." }
|
||||
- { date: "18.08.19:", desc: "Add AMD drivers." }
|
||||
- { date: "02.08.19:", desc: "Attempt to automatically fix permissions on /dev/dri and /dev/dvb." }
|
||||
- { date: "28.06.19:", desc: "Rebasing to alpine 3.10." }
|
||||
- { date: "27.03.19:", desc: "Rebase to Alpine 3.9, fix init logic to only chown once." }
|
||||
- { date: "23.03.19:", desc: "Switching to new Base images, shift to arm32v7 tag." }
|
||||
- { date: "01.03.19:", desc: "Bump xmltv to 0.6.1." }
|
||||
- { date: "28.02.19:", desc: "add perl-lwp-useragent-determined." }
|
||||
- { date: "17.02.19:", desc: "Bump xmltv to 5.70, ensure version tagging works by cloning tvheadend." }
|
||||
- { date: "14.02.19:", desc: "Add picons path to config." }
|
||||
- { date: "15.01.19:", desc: "Add pipeline logic and multi arch." }
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"prefer_picon": true,
|
||||
"chiconpath": "file:///picons/%C.png",
|
||||
"piconpath": "file:///picons/",
|
||||
"piconscheme": 0,
|
||||
"chiconscheme": 2
|
||||
"prefer_picon": true,
|
||||
"chiconpath": "file:///picons/%C.png",
|
||||
"piconpath": "file:///picons/",
|
||||
"piconscheme": 0,
|
||||
"chiconscheme": 2
|
||||
}
|
||||
|
||||
0
root/etc/services.d/tvheadend/run
Normal file → Executable file
0
root/etc/services.d/tvheadend/run
Normal file → Executable file
Reference in New Issue
Block a user