Переглянути джерело

Merge pull request #1693 from joshuaboniface/update-libssl

Update Debian build to Buster and LibSSL 1.1
Joshua M. Boniface 5 роки тому
батько
коміт
fde9dd2a61

+ 5 - 5
deployment/debian-package-arm64/Dockerfile.amd64

@@ -1,4 +1,4 @@
-FROM debian:9
+FROM debian:10
 # Docker build arguments
 # Docker build arguments
 ARG SOURCE_DIR=/jellyfin
 ARG SOURCE_DIR=/jellyfin
 ARG PLATFORM_DIR=/jellyfin/deployment/debian-package-arm64
 ARG PLATFORM_DIR=/jellyfin/deployment/debian-package-arm64
@@ -16,7 +16,7 @@ RUN apt-get update \
 
 
 # Install dotnet repository
 # Install dotnet repository
 # https://dotnet.microsoft.com/download/linux-package-manager/debian9/sdk-current
 # https://dotnet.microsoft.com/download/linux-package-manager/debian9/sdk-current
-RUN wget https://download.visualstudio.microsoft.com/download/pr/69937b49-a877-4ced-81e6-286620b390ab/8ab938cf6f5e83b2221630354160ef21/dotnet-sdk-2.2.104-linux-x64.tar.gz -O dotnet-sdk.tar.gz \
+RUN wget https://download.visualstudio.microsoft.com/download/pr/228832ea-805f-45ab-8c88-fa36165701b9/16ce29a06031eeb09058dee94d6f5330/dotnet-sdk-2.2.401-linux-x64.tar.gz -O dotnet-sdk.tar.gz \
  && mkdir -p dotnet-sdk \
  && mkdir -p dotnet-sdk \
  && tar -xzf dotnet-sdk.tar.gz -C dotnet-sdk \
  && tar -xzf dotnet-sdk.tar.gz -C dotnet-sdk \
  && ln -s $( pwd )/dotnet-sdk/dotnet /usr/bin/dotnet
  && ln -s $( pwd )/dotnet-sdk/dotnet /usr/bin/dotnet
@@ -25,9 +25,9 @@ RUN wget https://download.visualstudio.microsoft.com/download/pr/69937b49-a877-4
 RUN dpkg --add-architecture arm64 \
 RUN dpkg --add-architecture arm64 \
  && apt-get update \
  && apt-get update \
  && apt-get install -y cross-gcc-dev \
  && apt-get install -y cross-gcc-dev \
- && TARGET_LIST="arm64" cross-gcc-gensource 6 \
- && cd cross-gcc-packages-amd64/cross-gcc-6-arm64 \
- && apt-get install -y gcc-6-source libstdc++6-arm64-cross binutils-aarch64-linux-gnu bison flex libtool gdb sharutils netbase libcloog-isl-dev libmpc-dev libmpfr-dev libgmp-dev systemtap-sdt-dev autogen expect chrpath zlib1g-dev zip libc6-dev:arm64 linux-libc-dev:arm64 libgcc1:arm64 libcurl4-openssl-dev:arm64 libfontconfig1-dev:arm64 libfreetype6-dev:arm64 liblttng-ust0:arm64 libstdc++6:arm64
+ && TARGET_LIST="arm64" cross-gcc-gensource 8 \
+ && cd cross-gcc-packages-amd64/cross-gcc-8-arm64 \
+ && apt-get install -y gcc-8-source libstdc++-8-dev-arm64-cross binutils-aarch64-linux-gnu bison flex libtool gdb sharutils netbase libmpc-dev libmpfr-dev libgmp-dev systemtap-sdt-dev autogen expect chrpath zlib1g-dev zip libc6-dev:arm64 linux-libc-dev:arm64 libgcc1:arm64 libcurl4-openssl-dev:arm64 libfontconfig1-dev:arm64 libfreetype6-dev:arm64 libssl-dev:arm64 liblttng-ust0:arm64 libstdc++-8-dev:arm64
 
 
 # Link to docker-build script
 # Link to docker-build script
 RUN ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh
 RUN ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh

+ 3 - 3
deployment/debian-package-arm64/Dockerfile.arm64

@@ -1,4 +1,4 @@
-FROM debian:9
+FROM debian:10
 # Docker build arguments
 # Docker build arguments
 ARG SOURCE_DIR=/jellyfin
 ARG SOURCE_DIR=/jellyfin
 ARG PLATFORM_DIR=/jellyfin/deployment/debian-package-arm64
 ARG PLATFORM_DIR=/jellyfin/deployment/debian-package-arm64
@@ -12,11 +12,11 @@ ENV ARCH=arm64
 
 
 # Prepare Debian build environment
 # Prepare Debian build environment
 RUN apt-get update \
 RUN apt-get update \
- && apt-get install -y apt-transport-https debhelper gnupg wget devscripts mmv libc6-dev libcurl4-openssl-dev libfontconfig1-dev libfreetype6-dev liblttng-ust0
+ && apt-get install -y apt-transport-https debhelper gnupg wget devscripts mmv libc6-dev libcurl4-openssl-dev libfontconfig1-dev libfreetype6-dev libssl-dev liblttng-ust0
 
 
 # Install dotnet repository
 # Install dotnet repository
 # https://dotnet.microsoft.com/download/linux-package-manager/debian9/sdk-current
 # https://dotnet.microsoft.com/download/linux-package-manager/debian9/sdk-current
-RUN wget https://download.visualstudio.microsoft.com/download/pr/d9f37b73-df8d-4dfa-a905-b7648d3401d0/6312573ac13d7a8ddc16e4058f7d7dc5/dotnet-sdk-2.2.104-linux-arm.tar.gz -O dotnet-sdk.tar.gz \
+RUN wget https://download.visualstudio.microsoft.com/download/pr/1560f31a-d566-4de0-9fef-1a40b2b2a748/163f23fb8018e064034f3492f54358f1/dotnet-sdk-2.2.401-linux-arm64.tar.gz -O dotnet-sdk.tar.gz \
  && mkdir -p dotnet-sdk \
  && mkdir -p dotnet-sdk \
  && tar -xzf dotnet-sdk.tar.gz -C dotnet-sdk \
  && tar -xzf dotnet-sdk.tar.gz -C dotnet-sdk \
  && ln -s $( pwd )/dotnet-sdk/dotnet /usr/bin/dotnet
  && ln -s $( pwd )/dotnet-sdk/dotnet /usr/bin/dotnet

+ 5 - 5
deployment/debian-package-armhf/Dockerfile.amd64

@@ -1,4 +1,4 @@
-FROM debian:9
+FROM debian:10
 # Docker build arguments
 # Docker build arguments
 ARG SOURCE_DIR=/jellyfin
 ARG SOURCE_DIR=/jellyfin
 ARG PLATFORM_DIR=/jellyfin/deployment/debian-package-armhf
 ARG PLATFORM_DIR=/jellyfin/deployment/debian-package-armhf
@@ -16,7 +16,7 @@ RUN apt-get update \
 
 
 # Install dotnet repository
 # Install dotnet repository
 # https://dotnet.microsoft.com/download/linux-package-manager/debian9/sdk-current
 # https://dotnet.microsoft.com/download/linux-package-manager/debian9/sdk-current
-RUN wget https://download.visualstudio.microsoft.com/download/pr/69937b49-a877-4ced-81e6-286620b390ab/8ab938cf6f5e83b2221630354160ef21/dotnet-sdk-2.2.104-linux-x64.tar.gz -O dotnet-sdk.tar.gz \
+RUN wget https://download.visualstudio.microsoft.com/download/pr/228832ea-805f-45ab-8c88-fa36165701b9/16ce29a06031eeb09058dee94d6f5330/dotnet-sdk-2.2.401-linux-x64.tar.gz -O dotnet-sdk.tar.gz \
  && mkdir -p dotnet-sdk \
  && mkdir -p dotnet-sdk \
  && tar -xzf dotnet-sdk.tar.gz -C dotnet-sdk \
  && tar -xzf dotnet-sdk.tar.gz -C dotnet-sdk \
  && ln -s $( pwd )/dotnet-sdk/dotnet /usr/bin/dotnet
  && ln -s $( pwd )/dotnet-sdk/dotnet /usr/bin/dotnet
@@ -25,9 +25,9 @@ RUN wget https://download.visualstudio.microsoft.com/download/pr/69937b49-a877-4
 RUN dpkg --add-architecture armhf \
 RUN dpkg --add-architecture armhf \
  && apt-get update \
  && apt-get update \
  && apt-get install -y cross-gcc-dev \
  && apt-get install -y cross-gcc-dev \
- && TARGET_LIST="armhf" cross-gcc-gensource 6 \
- && cd cross-gcc-packages-amd64/cross-gcc-6-armhf \
- && apt-get install -y gcc-6-source libstdc++6-armhf-cross binutils-arm-linux-gnueabihf bison flex libtool gdb sharutils netbase libcloog-isl-dev libmpc-dev libmpfr-dev libgmp-dev systemtap-sdt-dev autogen expect chrpath zlib1g-dev zip libc6-dev:armhf linux-libc-dev:armhf libgcc1:armhf libcurl4-openssl-dev:armhf libfontconfig1-dev:armhf libfreetype6-dev:armhf liblttng-ust0:armhf libstdc++6:armhf
+ && TARGET_LIST="armhf" cross-gcc-gensource 8 \
+ && cd cross-gcc-packages-amd64/cross-gcc-8-armhf \
+ && apt-get install -y gcc-8-source libstdc++-8-dev-armhf-cross binutils-aarch64-linux-gnu bison flex libtool gdb sharutils netbase libmpc-dev libmpfr-dev libgmp-dev systemtap-sdt-dev autogen expect chrpath zlib1g-dev zip binutils-arm-linux-gnueabihf libc6-dev:armhf linux-libc-dev:armhf libgcc1:armhf libcurl4-openssl-dev:armhf libfontconfig1-dev:armhf libfreetype6-dev:armhf libssl-dev:armhf liblttng-ust0:armhf libstdc++-8-dev:armhf
 
 
 # Link to docker-build script
 # Link to docker-build script
 RUN ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh
 RUN ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh

+ 3 - 3
deployment/debian-package-armhf/Dockerfile.armhf

@@ -1,4 +1,4 @@
-FROM debian:9
+FROM debian:10
 # Docker build arguments
 # Docker build arguments
 ARG SOURCE_DIR=/jellyfin
 ARG SOURCE_DIR=/jellyfin
 ARG PLATFORM_DIR=/jellyfin/deployment/debian-package-armhf
 ARG PLATFORM_DIR=/jellyfin/deployment/debian-package-armhf
@@ -12,11 +12,11 @@ ENV ARCH=armhf
 
 
 # Prepare Debian build environment
 # Prepare Debian build environment
 RUN apt-get update \
 RUN apt-get update \
- && apt-get install -y apt-transport-https debhelper gnupg wget devscripts mmv libc6-dev libcurl4-openssl-dev libfontconfig1-dev libfreetype6-dev liblttng-ust0
+ && apt-get install -y apt-transport-https debhelper gnupg wget devscripts mmv libc6-dev libcurl4-openssl-dev libfontconfig1-dev libfreetype6-dev libssl-dev liblttng-ust0
 
 
 # Install dotnet repository
 # Install dotnet repository
 # https://dotnet.microsoft.com/download/linux-package-manager/debian9/sdk-current
 # https://dotnet.microsoft.com/download/linux-package-manager/debian9/sdk-current
-RUN wget https://download.visualstudio.microsoft.com/download/pr/d9f37b73-df8d-4dfa-a905-b7648d3401d0/6312573ac13d7a8ddc16e4058f7d7dc5/dotnet-sdk-2.2.104-linux-arm.tar.gz -O dotnet-sdk.tar.gz \
+RUN wget https://download.visualstudio.microsoft.com/download/pr/3cb1d917-19cc-4399-9a53-03bb5de223f6/be3e011601610d9fe0a4f6b1962378ea/dotnet-sdk-2.2.401-linux-arm.tar.gz -O dotnet-sdk.tar.gz \
  && mkdir -p dotnet-sdk \
  && mkdir -p dotnet-sdk \
  && tar -xzf dotnet-sdk.tar.gz -C dotnet-sdk \
  && tar -xzf dotnet-sdk.tar.gz -C dotnet-sdk \
  && ln -s $( pwd )/dotnet-sdk/dotnet /usr/bin/dotnet
  && ln -s $( pwd )/dotnet-sdk/dotnet /usr/bin/dotnet

+ 17 - 4
deployment/debian-package-x64/Dockerfile

@@ -1,18 +1,31 @@
-FROM microsoft/dotnet:2.2-sdk-stretch
+FROM debian:10
 # Docker build arguments
 # Docker build arguments
 ARG SOURCE_DIR=/jellyfin
 ARG SOURCE_DIR=/jellyfin
 ARG PLATFORM_DIR=/jellyfin/deployment/debian-package-x64
 ARG PLATFORM_DIR=/jellyfin/deployment/debian-package-x64
 ARG ARTIFACT_DIR=/dist
 ARG ARTIFACT_DIR=/dist
+ARG SDK_VERSION=2.2
 # Docker run environment
 # Docker run environment
 ENV SOURCE_DIR=/jellyfin
 ENV SOURCE_DIR=/jellyfin
 ENV ARTIFACT_DIR=/dist
 ENV ARTIFACT_DIR=/dist
 ENV DEB_BUILD_OPTIONS=noddebs
 ENV DEB_BUILD_OPTIONS=noddebs
+ENV ARCH=amd64
 
 
 # Prepare Debian build environment
 # Prepare Debian build environment
 RUN apt-get update \
 RUN apt-get update \
- && apt-get install -y apt-transport-https debhelper gnupg wget devscripts mmv libc6-dev libcurl4-openssl-dev libfontconfig1-dev libfreetype6-dev \
- && ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh \
- && mkdir -p ${SOURCE_DIR} && ln -sf ${PLATFORM_DIR}/pkg-src ${SOURCE_DIR}/debian
+ && apt-get install -y apt-transport-https debhelper gnupg wget devscripts mmv libc6-dev libcurl4-openssl-dev libfontconfig1-dev libfreetype6-dev libssl-dev libssl1.1 liblttng-ust0
+
+# Install dotnet repository
+# https://dotnet.microsoft.com/download/linux-package-manager/debian9/sdk-current
+RUN wget https://download.visualstudio.microsoft.com/download/pr/228832ea-805f-45ab-8c88-fa36165701b9/16ce29a06031eeb09058dee94d6f5330/dotnet-sdk-2.2.401-linux-x64.tar.gz -O dotnet-sdk.tar.gz \
+ && mkdir -p dotnet-sdk \
+ && tar -xzf dotnet-sdk.tar.gz -C dotnet-sdk \
+ && ln -s $( pwd )/dotnet-sdk/dotnet /usr/bin/dotnet
+
+# Link to docker-build script
+RUN ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh
+
+# Link to Debian source dir; mkdir needed or it fails, can't force dest
+RUN mkdir -p ${SOURCE_DIR} && ln -sf ${PLATFORM_DIR}/pkg-src ${SOURCE_DIR}/debian
 
 
 VOLUME ${ARTIFACT_DIR}/
 VOLUME ${ARTIFACT_DIR}/
 
 

+ 3 - 2
deployment/debian-package-x64/pkg-src/control

@@ -7,7 +7,8 @@ Build-Depends:  debhelper (>= 9),
                 libc6-dev,
                 libc6-dev,
                 libcurl4-openssl-dev,
                 libcurl4-openssl-dev,
                 libfontconfig1-dev,
                 libfontconfig1-dev,
-                libfreetype6-dev
+                libfreetype6-dev,
+                libssl-dev
 Standards-Version: 3.9.4
 Standards-Version: 3.9.4
 Homepage: https://jellyfin.media/
 Homepage: https://jellyfin.media/
 Vcs-Git: https://github.org/jellyfin/jellyfin.git
 Vcs-Git: https://github.org/jellyfin/jellyfin.git
@@ -23,6 +24,6 @@ Depends: at,
          jellyfin-ffmpeg,
          jellyfin-ffmpeg,
          libfontconfig1,
          libfontconfig1,
          libfreetype6,
          libfreetype6,
-         libssl1.0.0 | libssl1.0.2 | libssl1.1
+         libssl1.1
 Description: Jellyfin is a home media server.
 Description: Jellyfin is a home media server.
  It is built on top of other popular open source technologies such as Service Stack, jQuery, jQuery mobile, and Mono. It features a REST-based api with built-in documentation to facilitate client development. We also have client libraries for our api to enable rapid development.
  It is built on top of other popular open source technologies such as Service Stack, jQuery, jQuery mobile, and Mono. It features a REST-based api with built-in documentation to facilitate client development. We also have client libraries for our api to enable rapid development.