Compare commits

...

34 Commits
66 ... 121

Author SHA1 Message Date
aptalca
3a054b8a57 Merge pull request #62 from linuxserver/x264_fix
add codec dependencies
2017-09-01 21:23:11 -04:00
sparklyballs
6d486e90d0 add codec dependencies 2017-09-02 00:16:44 +01:00
aptalca
4aeef6554b Merge pull request #60 from linuxserver/config_patches
increased uniformity across all archs
2017-07-13 20:27:40 -04:00
sparklyballs
2e0e6d028c increased uniformity across all archs 2017-07-13 20:17:36 +01:00
sparklyballs
d4fb416e62 correct label tags 2017-07-12 15:51:58 +01:00
sparklyballs
51f45f4d30 update of README with badges for new ci 2017-07-11 09:36:12 +01:00
sparklyballs
6a4d853235 Merge pull request #58 from linuxserver/readme-master
Update README with full path for comskip
2017-07-09 12:25:44 +01:00
tobbenb
0b1069a088 Update README with full path for comskip 2017-07-08 12:26:54 +02:00
sparklyballs
c9181d7131 Update README.md 2017-07-03 12:22:17 +01:00
j0nnymoe
9a3b13ad27 Merge pull request #56 from linuxserver/readme
Update README with new branch
2017-07-03 12:15:49 +01:00
sparklyballs
bdc1f87ac6 tidy up dockerfile edit README with changes to release branch 2017-07-03 12:05:15 +01:00
sparklyballs
e4e07121af tidy up Dockerfile and use only one install run for runtime packages 2017-07-03 11:34:18 +01:00
sparklyballs
0e8ea6063c change branch for release 4.2 2017-07-02 16:03:09 +01:00
tobbenb
9b161c87f9 Update README with new branch 2017-07-02 16:50:26 +02:00
saarg
ec6ff1a886 Merge pull request #54 from linuxserver/alpine_3.6
bump to alpine 3.6
2017-05-28 16:12:13 +02:00
sparklyballs
87d4b9c811 remove unneeded ffmpeg variable 2017-05-28 02:34:06 +01:00
sparklyballs
0d53fe87a0 add pcre2 dependency 2017-05-27 23:52:54 +01:00
sparklyballs
314f59a89f bump to alpine 3.6 2017-05-27 23:37:20 +01:00
j0nnymoe
4e44306b81 Merge pull request #53 from linuxserver/README_edits
"placeholder" image to fix broken link, add missing image version info
2017-05-11 10:46:09 +01:00
sparklyballs
68a5beb2ce "placeholder" image to fix broken link, add missing image version info 2017-05-11 07:43:55 +01:00
j0nnymoe
9ce7af875d Merge pull request #52 from linuxserver/fix_duplicates_dockerfile
fix duplicates in Dockerfile, some spacing issues
2017-05-09 15:58:20 +01:00
sparklyballs
51e21fbae9 fix duplicates in Dockerfile, some spacing issues 2017-05-09 11:48:56 +01:00
sparklyballs
97ed2af733 use readme from 4.2.1 branch 2017-05-01 14:01:38 +01:00
saarg
bac8634898 Merge pull request #49 from linuxserver/gnu-libiconv
use repo version of gnu-libiconv rather than compile it
2017-04-18 22:50:29 +02:00
sparklyballs
ad949ef08c use repo version of gnu-libiconv rather than compile it 2017-04-18 21:18:36 +01:00
saarg
310b4e4fc2 Merge pull request #47 from linuxserver/cpanm_one_block
use one block and --installdeps for cpanm packages
2017-04-09 23:04:37 +02:00
sparklyballs
342e1f8627 "pin HTTP::Cache::Transparent " version via cpanfile 2017-04-09 13:47:20 +01:00
sparklyballs
82c9a350ac use cpanfile in patches folder for perl dependencies 2017-04-09 13:16:20 +01:00
sparklyballs
82ae97760e standardise build 2017-04-09 11:51:49 +01:00
sparklyballs
b0d9b54c45 standardise build 2017-04-09 11:51:17 +01:00
sparklyballs
8fbc5fdec8 use one block and --installdeps for cpanm packages 2017-04-09 09:58:32 +01:00
j0nnymoe
abf4ff8bd9 Merge pull request #45 from linuxserver/change_cpanm_order
change order of perl cpan package installs
2017-04-08 01:01:12 +01:00
sparklyballs
cf3b5da9a3 change order of perl cpan package installs 2017-04-08 00:32:31 +01:00
sparklyballs
81abf8bc9b fix formatting markdown README 2017-03-15 17:51:03 +00:00
5 changed files with 3398 additions and 74 deletions

View File

@@ -1,19 +1,20 @@
FROM lsiobase/alpine:3.5 FROM lsiobase/alpine:3.6
MAINTAINER saarg MAINTAINER saarg
# package version
ARG ARGTABLE_VER="2.13"
ARG XMLTV_VER="0.5.69"
# set version label # set version label
ARG BUILD_DATE ARG BUILD_DATE
ARG VERSION ARG VERSION
LABEL build_version="Build-date:- ${BUILD_DATE}" LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
# package version
ARG ARGTABLE_VER="2.13"
ARG TZ="Europe/Oslo"
ARG XMLTV_VER="0.5.69"
# Environment settings # Environment settings
ENV HOME="/config" ENV HOME="/config"
# copy patches # copy patches
COPY patches/ /tmp/patches/ COPY patches/ /tmp/patches/
# install build packages # install build packages
@@ -22,7 +23,6 @@ RUN \
autoconf \ autoconf \
automake \ automake \
cmake \ cmake \
coreutils \
ffmpeg-dev \ ffmpeg-dev \
file \ file \
findutils \ findutils \
@@ -30,33 +30,49 @@ RUN \
gcc \ gcc \
gettext-dev \ gettext-dev \
git \ git \
libhdhomerun-dev \
libgcrypt-dev \ libgcrypt-dev \
libhdhomerun-dev \
libressl-dev \
libtool \ libtool \
libvpx-dev \
libxml2-dev \ libxml2-dev \
libxslt-dev \ libxslt-dev \
make \ make \
mercurial \ mercurial \
libressl-dev \ opus-dev \
patch \ patch \
pcre2-dev \
perl-dev \ perl-dev \
pkgconf \ pkgconf \
sdl-dev \ sdl-dev \
uriparser-dev \ uriparser-dev \
wget \ wget \
x264-dev \
x265-dev \
zlib-dev && \ zlib-dev && \
apk add --no-cache --virtual=build-dependencies \
--repository http://nl.alpinelinux.org/alpine/edge/testing \
gnu-libiconv-dev && \
# add runtime dependencies required in build stage # install runtime packages
apk add --no-cache \ apk add --no-cache \
bsd-compat-headers \ bsd-compat-headers \
bzip2 \ bzip2 \
curl \ curl \
ffmpeg \
ffmpeg-libs \
gzip \ gzip \
libcrypto1.0 \ libcrypto1.0 \
libcurl \ libcurl \
libssl1.0 \ libhdhomerun-libs \
linux-headers \
libressl \ libressl \
libssl1.0 \
libvpx \
libxml2 \
libxslt \
linux-headers \
opus \
pcre2 \
perl \ perl \
perl-archive-zip \ perl-archive-zip \
perl-boolean \ perl-boolean \
@@ -71,6 +87,7 @@ RUN \
perl-dbd-sqlite \ perl-dbd-sqlite \
perl-dbi \ perl-dbi \
perl-digest-sha1 \ perl-digest-sha1 \
perl-doc \
perl-file-slurp \ perl-file-slurp \
perl-file-temp \ perl-file-temp \
perl-file-which \ perl-file-which \
@@ -112,46 +129,16 @@ RUN \
tar \ tar \
uriparser \ uriparser \
wget \ wget \
x264 \
x265 \
zlib && \ zlib && \
apk add --no-cache \
--repository http://nl.alpinelinux.org/alpine/edge/testing \
gnu-libiconv && \
# install perl modules for xmltv # install perl modules for xmltv
curl -L http://cpanmin.us | perl - App::cpanminus && \ curl -L http://cpanmin.us | perl - App::cpanminus && \
cpanm DateTime::Format::ISO8601 && \ cpanm --installdeps /tmp/patches && \
cpanm DateTime::Format::SQLite && \
cpanm Encode && \
cpanm File::HomeDir && \
cpanm File::Path && \
cpanm HTML::Entities && \
cpanm HTML::TableExtract && \
cpanm HTTP::Cache::Transparent && \
cpanm inc && \
cpanm JSON::PP && \
cpanm LWP::Simple && \
cpanm LWP::UserAgent && \
cpanm PerlIO::gzip && \
cpanm SOAP::Lite && \
cpanm Storable && \
cpanm Unicode::UTF8simple && \
cpanm version && \
cpanm WWW::Mechanize && \
cpanm XML::DOM && \
# build libiconv
mkdir -p \
/tmp/iconv-src && \
curl -o \
/tmp/iconv.tar.gz -L \
ftp://www.mirrorservice.org/sites/ftp.gnu.org/gnu/libiconv/libiconv-1.14.tar.gz && \
tar xf /tmp/iconv.tar.gz -C \
/tmp/iconv-src --strip-components=1 && \
cd /tmp/iconv-src && \
./configure \
--prefix=/usr/local && \
patch -p1 -i \
/tmp/patches/libiconv-1-fixes.patch && \
make && \
make install && \
libtool --finish /usr/local/lib && \
# build dvb-apps # build dvb-apps
hg clone http://linuxtv.org/hg/dvb-apps /tmp/dvb-apps && \ hg clone http://linuxtv.org/hg/dvb-apps /tmp/dvb-apps && \
@@ -180,28 +167,32 @@ RUN \
--prefix=/usr \ --prefix=/usr \
--sysconfdir=/config && \ --sysconfdir=/config && \
make && \ make && \
make install && \ make install && \
# build XMLTV # build XMLTV
curl -o /tmp/xmtltv-src.tar.bz2 -L \ curl -o \
/tmp/xmtltv-src.tar.bz2 -L \
"http://kent.dl.sourceforge.net/project/xmltv/xmltv/${XMLTV_VER}/xmltv-${XMLTV_VER}.tar.bz2" && \ "http://kent.dl.sourceforge.net/project/xmltv/xmltv/${XMLTV_VER}/xmltv-${XMLTV_VER}.tar.bz2" && \
tar xf /tmp/xmtltv-src.tar.bz2 -C \ tar xf \
/tmp/xmtltv-src.tar.bz2 -C \
/tmp --strip-components=1 && \ /tmp --strip-components=1 && \
cd "/tmp/xmltv-${XMLTV_VER}" && \ cd "/tmp/xmltv-${XMLTV_VER}" && \
/bin/echo -e "yes" | perl Makefile.PL PREFIX=/usr/ INSTALLDIRS=vendor && \ echo -e "yes" | perl Makefile.PL PREFIX=/usr/ INSTALLDIRS=vendor && \
make && \ make && \
make test && \ make test && \
make install && \ make install && \
# build argtable2 # build argtable2
ARGTABLE_VER1="${ARGTABLE_VER//./-}" && \ ARGTABLE_VER1="${ARGTABLE_VER//./-}" && \
mkdir -p \ mkdir -p \
/tmp/argtable && \ /tmp/argtable && \
curl -o \ curl -o \
/tmp/argtable-src.tar.gz -L \ /tmp/argtable-src.tar.gz -L \
"https://sourceforge.net/projects/argtable/files/argtable/argtable-${ARGTABLE_VER}/argtable${ARGTABLE_VER1}.tar.gz" && \ "https://sourceforge.net/projects/argtable/files/argtable/argtable-${ARGTABLE_VER}/argtable${ARGTABLE_VER1}.tar.gz" && \
tar xf /tmp/argtable-src.tar.gz -C \ tar xf \
/tmp/argtable-src.tar.gz -C \
/tmp/argtable --strip-components=1 && \ /tmp/argtable --strip-components=1 && \
cp /tmp/patches/config.* /tmp/argtable && \
cd /tmp/argtable && \ cd /tmp/argtable && \
./configure \ ./configure \
--prefix=/usr && \ --prefix=/usr && \
@@ -209,7 +200,7 @@ RUN \
make check && \ make check && \
make install && \ make install && \
# build comskip # build comskip
git clone git://github.com/erikkaashoek/Comskip /tmp/comskip && \ git clone git://github.com/erikkaashoek/Comskip /tmp/comskip && \
cd /tmp/comskip && \ cd /tmp/comskip && \
./autogen.sh && \ ./autogen.sh && \
@@ -219,14 +210,6 @@ RUN \
make && \ make && \
make install && \ make install && \
# install runtime packages
apk add --no-cache \
ffmpeg \
ffmpeg-libs \
libhdhomerun-libs \
libxml2 \
libxslt && \
# cleanup # cleanup
apk del --purge \ apk del --purge \
build-dependencies && \ build-dependencies && \

View File

@@ -2,6 +2,8 @@
[forumurl]: https://forum.linuxserver.io [forumurl]: https://forum.linuxserver.io
[ircurl]: https://www.linuxserver.io/irc/ [ircurl]: https://www.linuxserver.io/irc/
[podcasturl]: https://www.linuxserver.io/podcast/ [podcasturl]: https://www.linuxserver.io/podcast/
[appurl]: https://www.tvheadend.org/
[hub]: https://hub.docker.com/r/linuxserver/tvheadend/
[![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)][linuxserverurl] [![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)][linuxserverurl]
@@ -11,16 +13,13 @@ The [LinuxServer.io][linuxserverurl] team brings you another container release f
* [Podcast][podcasturl] covers everything to do with getting the most from your Linux Server plus a focus on all things Docker and containerisation! * [Podcast][podcasturl] covers everything to do with getting the most from your Linux Server plus a focus on all things Docker and containerisation!
# linuxserver/tvheadend # linuxserver/tvheadend
[![](https://images.microbadger.com/badges/version/linuxserver/tvheadend.svg)](https://microbadger.com/images/linuxserver/tvheadend "Get your own version badge on microbadger.com")[![](https://images.microbadger.com/badges/image/linuxserver/tvheadend.svg)](http://microbadger.com/images/linuxserver/tvheadend "Get your own image badge on microbadger.com")[![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/tvheadend.svg)][hub][![Docker Stars](https://img.shields.io/docker/stars/linuxserver/tvheadend.svg)][hub][![Build Status](http://jenkins.linuxserver.io:8080/buildStatus/icon?job=Dockers/LinuxServer.io/linuxserver-tvheadend)](http://jenkins.linuxserver.io:8080/job/Dockers/job/LinuxServer.io/job/linuxserver-tvheadend/) [![](https://images.microbadger.com/badges/version/linuxserver/tvheadend.svg)](https://microbadger.com/images/linuxserver/tvheadend "Get your own version badge on microbadger.com")[![](https://images.microbadger.com/badges/image/linuxserver/tvheadend.svg)](https://microbadger.com/images/linuxserver/tvheadend "Get your own image badge on microbadger.com")[![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/tvheadend.svg)][hub][![Docker Stars](https://img.shields.io/docker/stars/linuxserver/tvheadend.svg)][hub][![Build Status](https://ci.linuxserver.io/buildStatus/icon?job=Docker-Builders/x86-64/x86-64-tvheadend)](https://ci.linuxserver.io/job/Docker-Builders/job/x86-64/job/x86-64-tvheadend/)
[hub]: https://hub.docker.com/r/linuxserver/tvheadend/
[Tvheadend](https://www.tvheadend.org/) is a TV streaming server and recorder for Linux, FreeBSD and Android supporting DVB-S, DVB-S2, DVB-C, DVB-T, ATSC, ISDB-T, IPTV, SAT>IP and HDHomeRun as input sources. [Tvheadend](https://www.tvheadend.org/) is a TV streaming server and recorder for Linux, FreeBSD and Android supporting DVB-S, DVB-S2, DVB-C, DVB-T, ATSC, ISDB-T, IPTV, SAT>IP and HDHomeRun as input sources.
Tvheadend offers the HTTP (VLC, MPlayer), HTSP (Kodi, Movian) and SAT>IP streaming. Tvheadend offers the HTTP (VLC, MPlayer), HTSP (Kodi, Movian) and SAT>IP streaming.
Multiple EPG sources are supported (over-the-air DVB and ATSC including OpenTV DVB extensions, XMLTV, PyXML). Multiple EPG sources are supported (over-the-air DVB and ATSC including OpenTV DVB extensions, XMLTV, PyXML).
[![tvheadend](https://s31.postimg.io/8urk8vdu3/logobig.png)][tvheadendurl] [![tvheadend](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/tvheadend-big.png)][appurl]
[tvheadendurl]: https://www.tvheadend.org/
## Usage ## Usage
@@ -40,13 +39,15 @@ docker create \
The --device=/dev/dvb is 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. The --device=/dev/dvb is 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.
You can choose between ,using tags, latest (default, and no tag required or a specific stable version of tvheadend. You can choose between ,using tags, latest (default, and no tag required or a specific release branch of tvheadend.
Add one of the tags, if required, to the linuxserver/tvheadend line of the run/create command in the following format, linuxserver/tvheadend:stable-4.0.9 Add one of the tags, if required, to the linuxserver/tvheadend line of the run/create command in the following format, linuxserver/tvheadend:release-4.2
#### Tags #### Tags
+ **stable-4.0.9** : latest stable version. + **release-4.2** : latest release from 4.2 branch. Freshly built every friday night uk time.
+ **stable-4.2.1** : old stable version. Will not be updated anymore!
+ **stable-4.0.9** : old stable version. Will not be updated anymore!
#### Host vs. Bridge #### Host vs. Bridge
@@ -121,7 +122,7 @@ This container comes with Comskip for commercial flagging of recordings. This yo
Go to Configuration --> Recording. Change the view level to advanced in the top right corner, and add the below in the Post-processor command field. Go to Configuration --> Recording. Change the view level to advanced in the top right corner, and add the below in the Post-processor command field.
``` ```
comskip --ini=/config/comskip/comskip.ini "%f" /usr/bin/comskip --ini=/config/comskip/comskip.ini "%f"
``` ```
Now comskip will run after each recording is finished. You will find comskip.ini in the comskip folder of your /config volume mapping. See the [Comskip](http://www.kaashoek.com/comskip/) homepage for tuning of the ini file. Now comskip will run after each recording is finished. You will find comskip.ini in the comskip folder of your /config volume mapping. See the [Comskip](http://www.kaashoek.com/comskip/) homepage for tuning of the ini file.
@@ -137,7 +138,7 @@ If you have EPG data in XML format from a supplier, you can drop it in the data
If you use WebGrab+Plus, choose the WebGrab+Plus XML file grabber. The XML file goes in the same path as above. If you use WebGrab+Plus, choose the WebGrab+Plus XML file grabber. The XML file goes in the same path as above.
The xml file has to be named guide.xml. The xml file has to be named guide.xml.
For advanced setup of tvheadend, go to [Tvheadend][tvheadendurl] For advanced setup of tvheadend, go to [Tvheadend][appurl]
**Picons** **Picons**
@@ -149,8 +150,24 @@ You need to enable minimum advanced view level to see the picons options.
* Shell access whilst the container is running: `docker exec -it tvheadend /bin/bash` * Shell access whilst the container is running: `docker exec -it tvheadend /bin/bash`
* To monitor the logs of the container in realtime: `docker logs -f tvheadend` * To monitor the logs of the container in realtime: `docker logs -f tvheadend`
* container version number
`docker inspect -f '{{ index .Config.Labels "build_version" }}' tvheadend`
* image version number
`docker inspect -f '{{ index .Config.Labels "build_version" }}' linuxserver/tvheadend`
## Versions ## Versions
+ **02.09.2017:** Add codec dependencies.
+ **13.07.2017:** Increase uniformity across all archs.
+ **08.07.2017:** Update README with full path for comskip.
+ **02.07.2017:** Move to one branch for all 4.2 releases.
+ **27.05.2017:** Rebase to alpine 3.6.
+ **01.05.2017:** Update to tvheadend 4.2.1 stable.
+ **18.04.2017:** Use repo version of gnu-libiconv rather than compiling.
+ **09.04.2017:** Chain cpanm installs in one block and use --installdeps.
+ **09.02.2017:** Perl changes, add picons file to gitignore and update XMLTV to 0.5.69. + **09.02.2017:** Perl changes, add picons file to gitignore and update XMLTV to 0.5.69.
+ **07.02.2017:** Add variable to add additional runtime paramters. + **07.02.2017:** Add variable to add additional runtime paramters.
+ **05.02.2017:** Update to alpine 3.5 and change dvb-apps to only compile needed libs. + **05.02.2017:** Update to alpine 3.5 and change dvb-apps to only compile needed libs.

1466
patches/config.guess vendored Normal file

File diff suppressed because it is too large Load Diff

1836
patches/config.sub vendored Normal file

File diff suppressed because it is too large Load Diff

22
patches/cpanfile Normal file
View File

@@ -0,0 +1,22 @@
requires 'perl' => '5.24.0';
# perl packages for tvheadend x86
requires 'DateTime::Format::ISO8601' ;
requires 'DateTime::Format::SQLite' ;
requires 'Encode' ;
requires 'File::HomeDir' ;
requires 'File::Path' ;
requires 'HTML::Entities' ;
requires 'HTML::TableExtract' ;
requires 'HTTP::Cache::Transparent' => ">= 1.3, != 1.4" ;
requires 'inc' ;
requires 'JSON::PP' ;
requires 'LWP::Simple' ;
requires 'LWP::UserAgent' ;
requires 'PerlIO::gzip' ;
requires 'SOAP::Lite' ;
requires 'Storable' ;
requires 'Unicode::UTF8simple' ;
requires 'version' ;
requires 'WWW::Mechanize' ;
requires 'XML::DOM' ;