Преглед на файлове

Merge pull request #48 from linuxserver/cpanm_one_block_stable

use one block and --installdeps for cpanm packages
saarg преди 9 години
родител
ревизия
9b9df1bd04
променени са 3 файла, в които са добавени 47 реда и са изтрити 29 реда
  1. 24 29
      Dockerfile
  2. 1 0
      README.md
  3. 22 0
      patches/cpanfile

+ 24 - 29
Dockerfile

@@ -3,7 +3,9 @@ MAINTAINER saarg
 
 
 # package version
 # package version
 ARG ARGTABLE_VER="2.13"
 ARG ARGTABLE_VER="2.13"
+ARG FFMPEG_VER="ffmpeg2.8"
 ARG TVH_VER="v4.0.9"
 ARG TVH_VER="v4.0.9"
+ARG TZ="Europe/Oslo"
 ARG XMLTV_VER="0.5.69"
 ARG XMLTV_VER="0.5.69"
 
 
 # set version label
 # set version label
@@ -17,6 +19,17 @@ ENV HOME="/config"
 # copy patches
 # copy patches
 COPY patches/ /tmp/patches/
 COPY patches/ /tmp/patches/
 
 
+# set version label
+ARG BUILD_DATE
+ARG VERSION
+LABEL build_version="Build-date:- ${BUILD_DATE}"
+
+# Environment settings
+ENV HOME="/config"
+
+# copy patches
+COPY patches/ /tmp/patches/
+
 # install build packages
 # install build packages
 RUN \
 RUN \
  apk add --no-cache --virtual=build-dependencies \
  apk add --no-cache --virtual=build-dependencies \
@@ -24,7 +37,7 @@ RUN \
 	automake \
 	automake \
 	cmake \
 	cmake \
 	coreutils \
 	coreutils \
-	ffmpeg2.8-dev \
+	${FFMPEG_VER}-dev \
 	file \
 	file \
 	findutils \
 	findutils \
 	g++ \
 	g++ \
@@ -115,12 +128,16 @@ RUN \
 	wget \
 	wget \
 	zlib && \
 	zlib && \
 
 
-# build libiconv
+# install perl modules for xmltv
+ curl -L http://cpanmin.us | perl - App::cpanminus && \
+ cpanm --installdeps /tmp/patches && \
+
+# build libiconv
  mkdir -p \
  mkdir -p \
  /tmp/iconv-src && \
  /tmp/iconv-src && \
  curl -o \
  curl -o \
  /tmp/iconv.tar.gz -L \
  /tmp/iconv.tar.gz -L \
-	http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz && \
+	ftp://www.mirrorservice.org/sites/ftp.gnu.org/gnu/libiconv/libiconv-1.14.tar.gz && \
  tar xf /tmp/iconv.tar.gz -C \
  tar xf /tmp/iconv.tar.gz -C \
 	/tmp/iconv-src --strip-components=1 && \
 	/tmp/iconv-src --strip-components=1 && \
  cd /tmp/iconv-src && \
  cd /tmp/iconv-src && \
@@ -132,28 +149,6 @@ RUN \
  make install && \
  make install && \
  libtool --finish /usr/local/lib && \
  libtool --finish /usr/local/lib && \
 
 
-# install perl modules
- curl -L http://cpanmin.us | perl - App::cpanminus && \
- cpanm DateTime::Format::ISO8601 && \
- cpanm DateTime::Format::SQLite && \
- cpanm Encode && \
- cpanm File::HomeDir && \
- cpanm File::Path && \
- cpanm HTML::Entities && \
- cpanm HTML::TableExtract && \
- 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 && \
- cpanm HTTP::Cache::Transparent && \
-
 # 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 && \
  cd /tmp/dvb-apps && \
  cd /tmp/dvb-apps && \
@@ -196,7 +191,7 @@ RUN \
  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 && \
@@ -212,7 +207,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 && \
@@ -224,8 +219,8 @@ RUN \
 
 
 # install runtime packages
 # install runtime packages
  apk add --no-cache \
  apk add --no-cache \
-	ffmpeg2.8 \
-	ffmpeg2.8-libs \
+	${FFMPEG_VER} \
+	${FFMPEG_VER}-libs \
 	libhdhomerun-libs \
 	libhdhomerun-libs \
 	libxml2 \
 	libxml2 \
 	libxslt && \
 	libxslt && \

+ 1 - 0
README.md

@@ -141,6 +141,7 @@ You need to enable minimum advanced view level to see the picons options.
 
 
 ## Versions
 ## Versions
 
 
++ **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, compile only dvb-apps libs and add indentation patch for tvheadend from alpine git. Removed ls -la left over from testing.
 + **05.02.2017:** Update to Alpine 3.5, compile only dvb-apps libs and add indentation patch for tvheadend from alpine git. Removed ls -la left over from testing.

+ 22 - 0
patches/cpanfile

@@ -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' ;