Delete tvheadend directory
This commit is contained in:
@@ -1,372 +0,0 @@
|
||||
ARG BUILD_FROM
|
||||
# hadolint ignore=DL3006
|
||||
FROM ghcr.io/linuxserver/baseimage-alpine:3.15 as buildstage
|
||||
############## build stage ##############
|
||||
|
||||
# package versions
|
||||
ARG ARGTABLE_VER="2.13"
|
||||
ARG XMLTV_VER="v1.0.0"
|
||||
|
||||
# environment settings
|
||||
ARG TZ="Europe/Berlin"
|
||||
ENV HOME="/config"
|
||||
|
||||
# copy patches
|
||||
COPY patches/ /tmp/patches/
|
||||
|
||||
RUN \
|
||||
echo "**** install build packages ****" && \
|
||||
apk add --no-cache \
|
||||
libcrypto1.1=1.1.1s-r1 \
|
||||
libssl1.1=1.1.1s-r1 \
|
||||
autoconf \
|
||||
automake \
|
||||
bsd-compat-headers \
|
||||
bzip2 \
|
||||
cmake \
|
||||
curl \
|
||||
ffmpeg-dev \
|
||||
file \
|
||||
findutils \
|
||||
g++ \
|
||||
gcc \
|
||||
gettext-dev \
|
||||
git \
|
||||
gnu-libiconv-dev \
|
||||
gzip \
|
||||
jq \
|
||||
libcurl \
|
||||
libdvbcsa-dev \
|
||||
libgcrypt-dev \
|
||||
libhdhomerun-dev \
|
||||
libtool \
|
||||
libva-dev \
|
||||
libvpx-dev \
|
||||
libxml2-dev \
|
||||
libxslt-dev \
|
||||
linux-headers \
|
||||
make \
|
||||
openssl-dev \
|
||||
opus-dev \
|
||||
patch \
|
||||
pcre2-dev \
|
||||
perl-archive-zip \
|
||||
perl-boolean \
|
||||
perl-capture-tiny \
|
||||
perl-cgi \
|
||||
perl-compress-raw-zlib \
|
||||
perl-date-manip \
|
||||
perl-datetime \
|
||||
perl-datetime-format-strptime \
|
||||
perl-datetime-timezone \
|
||||
perl-dbd-sqlite \
|
||||
perl-dbi \
|
||||
perl-dev \
|
||||
perl-digest-sha1 \
|
||||
perl-doc \
|
||||
perl-file-slurp \
|
||||
perl-file-temp \
|
||||
perl-file-which \
|
||||
perl-getopt-long \
|
||||
perl-html-parser \
|
||||
perl-html-tree \
|
||||
perl-http-cookies \
|
||||
perl-io \
|
||||
perl-io-html \
|
||||
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 \
|
||||
perl-parse-recdescent \
|
||||
perl-path-class \
|
||||
perl-scalar-list-utils \
|
||||
perl-term-progressbar \
|
||||
perl-term-readkey \
|
||||
perl-test-exception \
|
||||
perl-test-requires \
|
||||
perl-timedate \
|
||||
perl-try-tiny \
|
||||
perl-unicode-string \
|
||||
perl-xml-libxml \
|
||||
perl-xml-libxslt \
|
||||
perl-xml-parser \
|
||||
perl-xml-sax \
|
||||
perl-xml-treepp \
|
||||
perl-xml-twig \
|
||||
perl-xml-writer \
|
||||
pkgconf \
|
||||
pngquant \
|
||||
python3 \
|
||||
sdl-dev \
|
||||
tar \
|
||||
uriparser-dev \
|
||||
wget \
|
||||
x264-dev \
|
||||
x265-dev \
|
||||
zlib-dev
|
||||
|
||||
RUN \
|
||||
echo "**** remove musl iconv.h and replace with gnu-iconv.h ****" && \
|
||||
rm -rf /usr/include/iconv.h && \
|
||||
cp /usr/include/gnu-libiconv/iconv.h /usr/include/iconv.h
|
||||
|
||||
RUN \
|
||||
echo "**** install perl modules for xmltv ****" && \
|
||||
curl -s -L https://cpanmin.us | perl - App::cpanminus && \
|
||||
cpanm --installdeps /tmp/patches
|
||||
|
||||
RUN \
|
||||
echo "**** compile XMLTV ****" && \
|
||||
git clone https://github.com/XMLTV/xmltv.git /tmp/xmltv && \
|
||||
cd /tmp/xmltv && \
|
||||
git checkout ${XMLTV_VER} && \
|
||||
echo "**** Perl 5.26 fixes for XMTLV ****" && \
|
||||
sed "s/use POSIX 'tmpnam';//" -i filter/tv_to_latex && \
|
||||
sed "s/use POSIX 'tmpnam';//" -i filter/tv_to_text && \
|
||||
sed "s/\(lib\/set_share_dir.pl';\)/.\/\1/" -i grab/it/tv_grab_it.PL && \
|
||||
sed "s/\(filter\/Grep.pm';\)/.\/\1/" -i filter/tv_grep.PL && \
|
||||
sed "s/\(lib\/XMLTV.pm.in';\)/.\/\1/" -i lib/XMLTV.pm.PL && \
|
||||
sed "s/\(lib\/Ask\/Term.pm';\)/.\/\1/" -i Makefile.PL && \
|
||||
PERL5LIB=`pwd` && \
|
||||
echo -e "yes" | perl Makefile.PL PREFIX=/usr/ INSTALLDIRS=vendor && \
|
||||
make -j 2 && \
|
||||
make test && \
|
||||
make DESTDIR=/tmp/xmltv-build install
|
||||
|
||||
ARG TVHEADEND_COMMIT="52c3ed3e"
|
||||
|
||||
RUN \
|
||||
echo "**** compile tvheadend ****" && \
|
||||
if [ -z ${TVHEADEND_COMMIT} ]; then \
|
||||
TVHEADEND_COMMIT=$(curl -sX GET https://api.github.com/repos/tvheadend/tvheadend/commits/master \
|
||||
| jq -r '. | .sha'); \
|
||||
fi && \
|
||||
mkdir -p \
|
||||
/tmp/tvheadend && \
|
||||
git clone https://github.com/tvheadend/tvheadend.git /tmp/tvheadend && \
|
||||
cd /tmp/tvheadend && \
|
||||
git checkout ${TVHEADEND_COMMIT} && \
|
||||
./configure \
|
||||
`#Encoding` \
|
||||
--disable-ffmpeg_static \
|
||||
--disable-libfdkaac_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-execinfo \
|
||||
--disable-hdhomerun_static \
|
||||
--enable-hdhomerun_client \
|
||||
--enable-libav \
|
||||
--enable-pngquant \
|
||||
--enable-trace \
|
||||
--enable-vaapi \
|
||||
--infodir=/usr/share/info \
|
||||
--localstatedir=/var \
|
||||
--mandir=/usr/share/man \
|
||||
--prefix=/usr \
|
||||
--python=python3 \
|
||||
--sysconfdir=/config && \
|
||||
make -j 2 && \
|
||||
make DESTDIR=/tmp/tvheadend-build install
|
||||
|
||||
RUN \
|
||||
echo "**** compile argtable2 ****" && \
|
||||
ARGTABLE_VER1="${ARGTABLE_VER//./-}" && \
|
||||
mkdir -p \
|
||||
/tmp/argtable && \
|
||||
curl -s -o \
|
||||
/tmp/argtable-src.tar.gz -L \
|
||||
"https://sourceforge.net/projects/argtable/files/argtable/argtable-${ARGTABLE_VER}/argtable${ARGTABLE_VER1}.tar.gz" && \
|
||||
tar xf \
|
||||
/tmp/argtable-src.tar.gz -C \
|
||||
/tmp/argtable --strip-components=1 && \
|
||||
cp /tmp/patches/config.* /tmp/argtable && \
|
||||
cd /tmp/argtable && \
|
||||
./configure \
|
||||
--prefix=/usr && \
|
||||
make -j 2 && \
|
||||
make check && \
|
||||
make DESTDIR=/tmp/argtable-build install && \
|
||||
echo "**** copy to /usr for comskip dependency ****" && \
|
||||
cp -pr /tmp/argtable-build/usr/* /usr/
|
||||
|
||||
RUN \
|
||||
echo "***** compile comskip ****" && \
|
||||
git clone https://github.com/erikkaashoek/Comskip /tmp/comskip && \
|
||||
cd /tmp/comskip && \
|
||||
./autogen.sh && \
|
||||
./configure \
|
||||
--bindir=/usr/bin \
|
||||
--sysconfdir=/config/comskip && \
|
||||
make -j 2 && \
|
||||
make DESTDIR=/tmp/comskip-build install
|
||||
|
||||
############## picons stage ##############
|
||||
# built by https://github.com/linuxserver/picons-builder
|
||||
FROM ghcr.io/linuxserver/picons-builder as piconsstage
|
||||
|
||||
|
||||
############## runtime stage ##############
|
||||
FROM ${BUILD_FROM}
|
||||
|
||||
# set version label
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
|
||||
LABEL maintainer="saarg"
|
||||
|
||||
# environment settings
|
||||
ENV HOME="/config"
|
||||
|
||||
# libva-intel-driver \
|
||||
# intel-media-driver \
|
||||
RUN \
|
||||
echo "**** install runtime packages ****" && \
|
||||
apk add --no-cache \
|
||||
bsd-compat-headers \
|
||||
bzip2 \
|
||||
curl \
|
||||
ffmpeg \
|
||||
ffmpeg-libs \
|
||||
gnu-libiconv \
|
||||
gzip \
|
||||
libcrypto1.1 \
|
||||
libcurl \
|
||||
libdvbcsa \
|
||||
libhdhomerun-libs \
|
||||
libssl1.1 \
|
||||
libva \
|
||||
mesa-dri-ati \
|
||||
libvpx \
|
||||
libxml2 \
|
||||
libxslt \
|
||||
linux-headers \
|
||||
openssl \
|
||||
opus \
|
||||
pcre2 \
|
||||
perl \
|
||||
perl-archive-zip \
|
||||
perl-boolean \
|
||||
perl-capture-tiny \
|
||||
perl-cgi \
|
||||
perl-compress-raw-zlib \
|
||||
perl-date-manip \
|
||||
perl-datetime \
|
||||
perl-datetime-format-strptime \
|
||||
perl-datetime-timezone \
|
||||
perl-dbd-sqlite \
|
||||
perl-dbi \
|
||||
perl-digest-sha1 \
|
||||
perl-doc \
|
||||
perl-file-slurp \
|
||||
perl-file-temp \
|
||||
perl-file-which \
|
||||
perl-getopt-long \
|
||||
perl-html-parser \
|
||||
perl-html-tree \
|
||||
perl-http-cookies \
|
||||
perl-io \
|
||||
perl-io-html \
|
||||
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 \
|
||||
perl-parse-recdescent \
|
||||
perl-path-class \
|
||||
perl-scalar-list-utils \
|
||||
perl-term-progressbar \
|
||||
perl-term-readkey \
|
||||
perl-test-exception \
|
||||
perl-test-requires \
|
||||
perl-timedate \
|
||||
perl-try-tiny \
|
||||
perl-unicode-string \
|
||||
perl-xml-libxml \
|
||||
perl-xml-libxslt \
|
||||
perl-xml-parser \
|
||||
perl-xml-sax \
|
||||
perl-xml-treepp \
|
||||
perl-xml-twig \
|
||||
perl-xml-writer \
|
||||
py3-requests \
|
||||
python3 \
|
||||
tar \
|
||||
uriparser \
|
||||
wget \
|
||||
x264 \
|
||||
x265 \
|
||||
zlib
|
||||
|
||||
# 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/tvheadend-build/usr/ /usr/
|
||||
COPY --from=buildstage /tmp/xmltv-build/usr/ /usr/
|
||||
COPY --from=buildstage /usr/local/share/man/ /usr/local/share/man/
|
||||
COPY --from=buildstage /usr/local/share/perl5/ /usr/local/share/perl5/
|
||||
COPY --from=piconsstage /picons.tar.bz2 /picons.tar.bz2
|
||||
|
||||
# Copy root filesystem
|
||||
COPY rootfs /
|
||||
|
||||
# ports and volumes
|
||||
VOLUME /config
|
||||
|
||||
# Build arguments
|
||||
ARG BUILD_ARCH
|
||||
ARG BUILD_DATE
|
||||
ARG BUILD_DESCRIPTION
|
||||
ARG BUILD_NAME
|
||||
ARG BUILD_REF
|
||||
ARG BUILD_REPOSITORY
|
||||
ARG BUILD_VERSION
|
||||
|
||||
# Labels
|
||||
LABEL \
|
||||
io.hass.name="${BUILD_NAME}" \
|
||||
io.hass.description="${BUILD_DESCRIPTION}" \
|
||||
io.hass.arch="${BUILD_ARCH}" \
|
||||
io.hass.type="addon" \
|
||||
io.hass.version=${BUILD_VERSION} \
|
||||
maintainer="Gautham Varma K <43441192+GauthamVarmaK@users.noreply.github.com>" \
|
||||
org.opencontainers.image.title="${BUILD_NAME}" \
|
||||
org.opencontainers.image.description="${BUILD_DESCRIPTION}" \
|
||||
org.opencontainers.image.vendor="GauthamVarmaK" \
|
||||
org.opencontainers.image.authors="Gautham Varma K <43441192+GauthamVarmaK@users.noreply.github.com>" \
|
||||
org.opencontainers.image.licenses="MIT" \
|
||||
org.opencontainers.image.url="https://github.com/GauthamVarmaK/addon-tvheadend" \
|
||||
org.opencontainers.image.source="https://github.com/${BUILD_REPOSITORY}" \
|
||||
org.opencontainers.image.documentation="https://github.com/${BUILD_REPOSITORY}/blob/main/README.md" \
|
||||
org.opencontainers.image.created=${BUILD_DATE} \
|
||||
org.opencontainers.image.revision=${BUILD_REF} \
|
||||
org.opencontainers.image.version=${BUILD_VERSION}
|
||||
Reference in New Issue
Block a user