From 7b69e21c99e32315fd5bc9fc2babfce2853024c1 Mon Sep 17 00:00:00 2001 From: thelamer Date: Mon, 21 Feb 2022 11:44:47 -0800 Subject: [PATCH] rebase to 3.15 include #183 symlink changes --- Dockerfile | 135 ++++++++++++++++++++++++++------------------- Dockerfile.aarch64 | 135 ++++++++++++++++++++++++++------------------- Dockerfile.armhf | 135 ++++++++++++++++++++++++++------------------- README.md | 5 +- readme-vars.yml | 5 +- 5 files changed, 237 insertions(+), 178 deletions(-) diff --git a/Dockerfile b/Dockerfile index 83ce4e6..067202b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,6 @@ -FROM ghcr.io/linuxserver/baseimage-alpine:3.13 +FROM ghcr.io/linuxserver/baseimage-alpine:3.15 +ARG UNRAR_VERSION=6.1.4 ARG BUILD_DATE ARG VERSION ARG TRANSMISSION_VERSION @@ -7,63 +8,81 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA LABEL maintainer="aptalca" RUN \ - echo "**** install packages ****" && \ - apk add --no-cache \ - ca-certificates \ - curl \ - findutils \ - jq \ - openssl \ - p7zip \ - python3 \ - rsync \ - tar \ - transmission-cli \ - transmission-daemon \ - unrar \ - unzip && \ - echo "**** install transmission ****" && \ - if [ -z ${TRANSMISSION_VERSION+x} ]; then \ - TRANSMISSION_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.13/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \ - && awk '/^P:transmission-daemon$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://'); \ - fi && \ - apk add --no-cache \ - transmission-cli==${TRANSMISSION_VERSION} \ - transmission-daemon==${TRANSMISSION_VERSION} && \ - echo "**** install third party themes ****" && \ - curl -o \ - /tmp/combustion.zip -L \ - "https://github.com/Secretmapper/combustion/archive/release.zip" && \ - unzip \ - /tmp/combustion.zip -d \ - / && \ - mkdir -p /tmp/twctemp && \ - TWCVERSION=$(curl -sX GET "https://api.github.com/repos/ronggang/transmission-web-control/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]') && \ - curl -o \ - /tmp/twc.tar.gz -L \ - "https://github.com/ronggang/transmission-web-control/archive/${TWCVERSION}.tar.gz" && \ - tar xf \ - /tmp/twc.tar.gz -C \ - /tmp/twctemp --strip-components=1 && \ - mv /tmp/twctemp/src /transmission-web-control && \ - mkdir -p /kettu && \ - curl -o \ - /tmp/kettu.tar.gz -L \ - "https://github.com/endor/kettu/archive/master.tar.gz" && \ - tar xf \ - /tmp/kettu.tar.gz -C \ - /kettu --strip-components=1 && \ - curl -o \ - /tmp/flood-for-transmission.tar.gz -L \ - "https://github.com/johman10/flood-for-transmission/releases/download/latest/flood-for-transmission.tar.gz" && \ - tar xf \ - /tmp/flood-for-transmission.tar.gz -C \ - / && \ - echo "**** cleanup ****" && \ - rm -rf \ - /tmp/* - + echo "**** install build packages ****" && \ + apk add --no-cache --upgrade --virtual=build-dependencies \ + make \ + g++ \ + gcc && \ + echo "**** install packages ****" && \ + apk add --no-cache \ + ca-certificates \ + curl \ + findutils \ + jq \ + openssl \ + p7zip \ + python3 \ + rsync \ + tar \ + transmission-cli \ + transmission-daemon \ + unzip && \ + echo "**** install transmission ****" && \ + apk add --no-cache \ + transmission-cli \ + transmission-daemon && \ + echo "**** install unrar from source ****" && \ + mkdir /tmp/unrar && \ + curl -o \ + /tmp/unrar.tar.gz -L \ + "https://www.rarlab.com/rar/unrarsrc-${UNRAR_VERSION}.tar.gz" && \ + tar xf \ + /tmp/unrar.tar.gz -C \ + /tmp/unrar --strip-components=1 && \ + cd /tmp/unrar && \ + make && \ + install -v -m755 unrar /usr/local/bin && \ + echo "**** install third party themes ****" && \ + curl -o \ + /tmp/combustion.zip -L \ + "https://github.com/Secretmapper/combustion/archive/release.zip" && \ + unzip \ + /tmp/combustion.zip -d \ + / && \ + mkdir -p /tmp/twctemp && \ + TWCVERSION=$(curl -sX GET "https://api.github.com/repos/ronggang/transmission-web-control/releases/latest" \ + | awk '/tag_name/{print $4;exit}' FS='[""]') && \ + curl -o \ + /tmp/twc.tar.gz -L \ + "https://github.com/ronggang/transmission-web-control/archive/${TWCVERSION}.tar.gz" && \ + tar xf \ + /tmp/twc.tar.gz -C \ + /tmp/twctemp --strip-components=1 && \ + mv /tmp/twctemp/src /transmission-web-control && \ + # Enables the original UI button in transmission-web-control + ln -s /usr/share/transmission/web/style /transmission-web-control && \ + ln -s /usr/share/transmission/web/images /transmission-web-control && \ + ln -s /usr/share/transmission/web/javascript /transmission-web-control && \ + ln -s /usr/share/transmission/web/index.html /transmission-web-control/index.original.html && \ + mkdir -p /kettu && \ + curl -o \ + /tmp/kettu.tar.gz -L \ + "https://github.com/endor/kettu/archive/master.tar.gz" && \ + tar xf \ + /tmp/kettu.tar.gz -C \ + /kettu --strip-components=1 && \ + curl -o \ + /tmp/flood-for-transmission.tar.gz -L \ + "https://github.com/johman10/flood-for-transmission/releases/download/latest/flood-for-transmission.tar.gz" && \ + tar xf \ + /tmp/flood-for-transmission.tar.gz -C \ + / && \ + echo "**** cleanup ****" && \ + apk del --purge \ + build-dependencies && \ + rm -rf \ + /root/.cache \ + /tmp/* # copy local files COPY root/ / diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index 226bb5f..ede607e 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -1,5 +1,6 @@ -FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.13 +FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.15 +ARG UNRAR_VERSION=6.1.4 ARG BUILD_DATE ARG VERSION ARG TRANSMISSION_VERSION @@ -7,63 +8,81 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA LABEL maintainer="aptalca" RUN \ - echo "**** install packages ****" && \ - apk add --no-cache \ - ca-certificates \ - curl \ - findutils \ - jq \ - openssl \ - p7zip \ - python3 \ - rsync \ - tar \ - transmission-cli \ - transmission-daemon \ - unrar \ - unzip && \ - echo "**** install transmission ****" && \ - if [ -z ${TRANSMISSION_VERSION+x} ]; then \ - TRANSMISSION_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.13/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \ - && awk '/^P:transmission-daemon$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://'); \ - fi && \ - apk add --no-cache \ - transmission-cli==${TRANSMISSION_VERSION} \ - transmission-daemon==${TRANSMISSION_VERSION} && \ - echo "**** install third party themes ****" && \ - curl -o \ - /tmp/combustion.zip -L \ - "https://github.com/Secretmapper/combustion/archive/release.zip" && \ - unzip \ - /tmp/combustion.zip -d \ - / && \ - mkdir -p /tmp/twctemp && \ - TWCVERSION=$(curl -sX GET "https://api.github.com/repos/ronggang/transmission-web-control/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]') && \ - curl -o \ - /tmp/twc.tar.gz -L \ - "https://github.com/ronggang/transmission-web-control/archive/${TWCVERSION}.tar.gz" && \ - tar xf \ - /tmp/twc.tar.gz -C \ - /tmp/twctemp --strip-components=1 && \ - mv /tmp/twctemp/src /transmission-web-control && \ - mkdir -p /kettu && \ - curl -o \ - /tmp/kettu.tar.gz -L \ - "https://github.com/endor/kettu/archive/master.tar.gz" && \ - tar xf \ - /tmp/kettu.tar.gz -C \ - /kettu --strip-components=1 && \ - curl -o \ - /tmp/flood-for-transmission.tar.gz -L \ - "https://github.com/johman10/flood-for-transmission/releases/download/latest/flood-for-transmission.tar.gz" && \ - tar xf \ - /tmp/flood-for-transmission.tar.gz -C \ - / && \ - echo "**** cleanup ****" && \ - rm -rf \ - /tmp/* - + echo "**** install build packages ****" && \ + apk add --no-cache --upgrade --virtual=build-dependencies \ + make \ + g++ \ + gcc && \ + echo "**** install packages ****" && \ + apk add --no-cache \ + ca-certificates \ + curl \ + findutils \ + jq \ + openssl \ + p7zip \ + python3 \ + rsync \ + tar \ + transmission-cli \ + transmission-daemon \ + unzip && \ + echo "**** install transmission ****" && \ + apk add --no-cache \ + transmission-cli \ + transmission-daemon && \ + echo "**** install unrar from source ****" && \ + mkdir /tmp/unrar && \ + curl -o \ + /tmp/unrar.tar.gz -L \ + "https://www.rarlab.com/rar/unrarsrc-${UNRAR_VERSION}.tar.gz" && \ + tar xf \ + /tmp/unrar.tar.gz -C \ + /tmp/unrar --strip-components=1 && \ + cd /tmp/unrar && \ + make && \ + install -v -m755 unrar /usr/local/bin && \ + echo "**** install third party themes ****" && \ + curl -o \ + /tmp/combustion.zip -L \ + "https://github.com/Secretmapper/combustion/archive/release.zip" && \ + unzip \ + /tmp/combustion.zip -d \ + / && \ + mkdir -p /tmp/twctemp && \ + TWCVERSION=$(curl -sX GET "https://api.github.com/repos/ronggang/transmission-web-control/releases/latest" \ + | awk '/tag_name/{print $4;exit}' FS='[""]') && \ + curl -o \ + /tmp/twc.tar.gz -L \ + "https://github.com/ronggang/transmission-web-control/archive/${TWCVERSION}.tar.gz" && \ + tar xf \ + /tmp/twc.tar.gz -C \ + /tmp/twctemp --strip-components=1 && \ + mv /tmp/twctemp/src /transmission-web-control && \ + # Enables the original UI button in transmission-web-control + ln -s /usr/share/transmission/web/style /transmission-web-control && \ + ln -s /usr/share/transmission/web/images /transmission-web-control && \ + ln -s /usr/share/transmission/web/javascript /transmission-web-control && \ + ln -s /usr/share/transmission/web/index.html /transmission-web-control/index.original.html && \ + mkdir -p /kettu && \ + curl -o \ + /tmp/kettu.tar.gz -L \ + "https://github.com/endor/kettu/archive/master.tar.gz" && \ + tar xf \ + /tmp/kettu.tar.gz -C \ + /kettu --strip-components=1 && \ + curl -o \ + /tmp/flood-for-transmission.tar.gz -L \ + "https://github.com/johman10/flood-for-transmission/releases/download/latest/flood-for-transmission.tar.gz" && \ + tar xf \ + /tmp/flood-for-transmission.tar.gz -C \ + / && \ + echo "**** cleanup ****" && \ + apk del --purge \ + build-dependencies && \ + rm -rf \ + /root/.cache \ + /tmp/* # copy local files COPY root/ / diff --git a/Dockerfile.armhf b/Dockerfile.armhf index 552178b..67c003e 100644 --- a/Dockerfile.armhf +++ b/Dockerfile.armhf @@ -1,5 +1,6 @@ -FROM ghcr.io/linuxserver/baseimage-alpine:arm32v7-3.13 +FROM ghcr.io/linuxserver/baseimage-alpine:arm32v7-3.15 +ARG UNRAR_VERSION=6.1.4 ARG BUILD_DATE ARG VERSION ARG TRANSMISSION_VERSION @@ -7,63 +8,81 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA LABEL maintainer="aptalca" RUN \ - echo "**** install packages ****" && \ - apk add --no-cache \ - ca-certificates \ - curl \ - findutils \ - jq \ - openssl \ - p7zip \ - python3 \ - rsync \ - tar \ - transmission-cli \ - transmission-daemon \ - unrar \ - unzip && \ - echo "**** install transmission ****" && \ - if [ -z ${TRANSMISSION_VERSION+x} ]; then \ - TRANSMISSION_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.13/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \ - && awk '/^P:transmission-daemon$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://'); \ - fi && \ - apk add --no-cache \ - transmission-cli==${TRANSMISSION_VERSION} \ - transmission-daemon==${TRANSMISSION_VERSION} && \ - echo "**** install third party themes ****" && \ - curl -o \ - /tmp/combustion.zip -L \ - "https://github.com/Secretmapper/combustion/archive/release.zip" && \ - unzip \ - /tmp/combustion.zip -d \ - / && \ - mkdir -p /tmp/twctemp && \ - TWCVERSION=$(curl -sX GET "https://api.github.com/repos/ronggang/transmission-web-control/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]') && \ - curl -o \ - /tmp/twc.tar.gz -L \ - "https://github.com/ronggang/transmission-web-control/archive/${TWCVERSION}.tar.gz" && \ - tar xf \ - /tmp/twc.tar.gz -C \ - /tmp/twctemp --strip-components=1 && \ - mv /tmp/twctemp/src /transmission-web-control && \ - mkdir -p /kettu && \ - curl -o \ - /tmp/kettu.tar.gz -L \ - "https://github.com/endor/kettu/archive/master.tar.gz" && \ - tar xf \ - /tmp/kettu.tar.gz -C \ - /kettu --strip-components=1 && \ - curl -o \ - /tmp/flood-for-transmission.tar.gz -L \ - "https://github.com/johman10/flood-for-transmission/releases/download/latest/flood-for-transmission.tar.gz" && \ - tar xf \ - /tmp/flood-for-transmission.tar.gz -C \ - / && \ - echo "**** cleanup ****" && \ - rm -rf \ - /tmp/* - + echo "**** install build packages ****" && \ + apk add --no-cache --upgrade --virtual=build-dependencies \ + make \ + g++ \ + gcc && \ + echo "**** install packages ****" && \ + apk add --no-cache \ + ca-certificates \ + curl \ + findutils \ + jq \ + openssl \ + p7zip \ + python3 \ + rsync \ + tar \ + transmission-cli \ + transmission-daemon \ + unzip && \ + echo "**** install transmission ****" && \ + apk add --no-cache \ + transmission-cli \ + transmission-daemon && \ + echo "**** install unrar from source ****" && \ + mkdir /tmp/unrar && \ + curl -o \ + /tmp/unrar.tar.gz -L \ + "https://www.rarlab.com/rar/unrarsrc-${UNRAR_VERSION}.tar.gz" && \ + tar xf \ + /tmp/unrar.tar.gz -C \ + /tmp/unrar --strip-components=1 && \ + cd /tmp/unrar && \ + make && \ + install -v -m755 unrar /usr/local/bin && \ + echo "**** install third party themes ****" && \ + curl -o \ + /tmp/combustion.zip -L \ + "https://github.com/Secretmapper/combustion/archive/release.zip" && \ + unzip \ + /tmp/combustion.zip -d \ + / && \ + mkdir -p /tmp/twctemp && \ + TWCVERSION=$(curl -sX GET "https://api.github.com/repos/ronggang/transmission-web-control/releases/latest" \ + | awk '/tag_name/{print $4;exit}' FS='[""]') && \ + curl -o \ + /tmp/twc.tar.gz -L \ + "https://github.com/ronggang/transmission-web-control/archive/${TWCVERSION}.tar.gz" && \ + tar xf \ + /tmp/twc.tar.gz -C \ + /tmp/twctemp --strip-components=1 && \ + mv /tmp/twctemp/src /transmission-web-control && \ + # Enables the original UI button in transmission-web-control + ln -s /usr/share/transmission/web/style /transmission-web-control && \ + ln -s /usr/share/transmission/web/images /transmission-web-control && \ + ln -s /usr/share/transmission/web/javascript /transmission-web-control && \ + ln -s /usr/share/transmission/web/index.html /transmission-web-control/index.original.html && \ + mkdir -p /kettu && \ + curl -o \ + /tmp/kettu.tar.gz -L \ + "https://github.com/endor/kettu/archive/master.tar.gz" && \ + tar xf \ + /tmp/kettu.tar.gz -C \ + /kettu --strip-components=1 && \ + curl -o \ + /tmp/flood-for-transmission.tar.gz -L \ + "https://github.com/johman10/flood-for-transmission/releases/download/latest/flood-for-transmission.tar.gz" && \ + tar xf \ + /tmp/flood-for-transmission.tar.gz -C \ + / && \ + echo "**** cleanup ****" && \ + apk del --purge \ + build-dependencies && \ + rm -rf \ + /root/.cache \ + /tmp/* # copy local files COPY root/ / diff --git a/README.md b/README.md index aa9daeb..9311315 100644 --- a/README.md +++ b/README.md @@ -275,8 +275,9 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions -* **09.07.21:** - Wait for the transmission-daemon termination after a caught sigterm -* **06.03.21:** - Add Flood for Transmission as a UI option +* **21.02.22:** - Build unrar from source, rebase to Alpine 3.15, add symlinks neeeded for TWC. Credit @alexbelgium +* **09.07.21:** - Wait for the transmission-daemon termination after a caught sigterm. +* **06.03.21:** - Add Flood for Transmission as a UI option. * **23.01.21:** - Rebasing to alpine 3.13. * **02.11.20:** - Add ca-certificates package to allow connecting to https trackers. * **02.06.20:** - Rebase to alpine 3.12, update to transmission 3.0, remove python2, add python3. diff --git a/readme-vars.yml b/readme-vars.yml index 78dc89e..4711ef7 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -84,8 +84,9 @@ app_setup_block: | # changelog changelogs: - - { date: "09.07.21:", desc: "Wait for the transmission-daemon termination after a caught sigterm" } - - { date: "06.03.21:", desc: "Add Flood for Transmission as a UI option" } + - { date: "21.02.22:", desc: "Build unrar from source, rebase to Alpine 3.15, add symlinks neeeded for TWC. Credit @alexbelgium" } + - { date: "09.07.21:", desc: "Wait for the transmission-daemon termination after a caught sigterm." } + - { date: "06.03.21:", desc: "Add Flood for Transmission as a UI option." } - { date: "23.01.21:", desc: "Rebasing to alpine 3.13." } - { date: "02.11.20:", desc: "Add ca-certificates package to allow connecting to https trackers." } - { date: "02.06.20:", desc: "Rebase to alpine 3.12, update to transmission 3.0, remove python2, add python3." }