diff --git a/Dockerfile b/Dockerfile index 2b35cc8..0c7642c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,65 +8,65 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA LABEL maintainer="chbmb" RUN \ - echo "**** install build packages ****" && \ - apt-get update && \ - apt-get install -y \ - git \ - libldap2-dev \ - libsasl2-dev \ - python3-pip && \ - echo "**** install runtime packages ****" && \ - apt-get install -y \ - imagemagick \ - libnss3 \ - libxcomposite1 \ - libxi6 \ - libxslt1.1 \ - libldap-2.4-2 \ - libsasl2-2 \ - libxrandr2 \ - python3-minimal \ - python3-pkg-resources \ - unrar && \ - echo "**** install calibre-web ****" && \ - if [ -z ${CALIBREWEB_COMMIT+x} ]; then \ - CALIBREWEB_COMMIT=$(curl -sX GET "https://api.github.com/repos/janeczku/calibre-web/commits/master" \ - | awk '/sha/{print $4;exit}' FS='[""]'); \ - fi && \ - curl -o \ - /tmp/calibre-web.tar.gz -L \ - "https://github.com/janeczku/calibre-web/archive/${CALIBREWEB_COMMIT}.tar.gz" && \ - mkdir -p \ - /app/calibre-web && \ - tar xf \ - /tmp/calibre-web.tar.gz -C \ - /app/calibre-web --strip-components=1 && \ - cd /app/calibre-web && \ - pip3 install --no-cache-dir -U \ - pip && \ - pip install --no-cache-dir -U -r \ - requirements.txt -r \ - optional-requirements.txt && \ - echo "***install kepubify" && \ - if [ -z ${KEPUBIFY_RELEASE+x} ]; then \ + echo "**** install build packages ****" && \ + apt-get update && \ + apt-get install -y \ + git \ + libldap2-dev \ + libsasl2-dev \ + python3-pip && \ + echo "**** install runtime packages ****" && \ + apt-get install -y \ + imagemagick \ + libnss3 \ + libxcomposite1 \ + libxi6 \ + libxslt1.1 \ + libldap-2.4-2 \ + libsasl2-2 \ + libxrandr2 \ + python3-minimal \ + python3-pkg-resources \ + unrar && \ + echo "**** install calibre-web ****" && \ + if [ -z ${CALIBREWEB_COMMIT+x} ]; then \ + CALIBREWEB_COMMIT=$(curl -sX GET "https://api.github.com/repos/janeczku/calibre-web/commits/master" \ + | awk '/sha/{print $4;exit}' FS='[""]'); \ + fi && \ + curl -o \ + /tmp/calibre-web.tar.gz -L \ + "https://github.com/janeczku/calibre-web/archive/${CALIBREWEB_COMMIT}.tar.gz" && \ + mkdir -p \ + /app/calibre-web && \ + tar xf \ + /tmp/calibre-web.tar.gz -C \ + /app/calibre-web --strip-components=1 && \ + cd /app/calibre-web && \ + pip3 install --no-cache-dir -U \ + pip && \ + pip install --no-cache-dir -U --find-links https://wheel-index.linuxserver.io/ubuntu/ -r \ + requirements.txt -r \ + optional-requirements.txt && \ + echo "***install kepubify" && \ + if [ -z ${KEPUBIFY_RELEASE+x} ]; then \ KEPUBIFY_RELEASE=$(curl -sX GET "https://api.github.com/repos/pgaskin/kepubify/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]'); \ - fi && \ - curl -o \ - /usr/bin/kepubify -L \ - https://github.com/pgaskin/kepubify/releases/download/${KEPUBIFY_RELEASE}/kepubify-linux-64bit && \ - echo "**** cleanup ****" && \ - apt-get -y purge \ - git \ - libldap2-dev \ - libsasl2-dev \ - python3-pip && \ - apt-get -y autoremove && \ - rm -rf \ - /tmp/* \ - /var/lib/apt/lists/* \ - /var/tmp/* \ - /root/.cache + | awk '/tag_name/{print $4;exit}' FS='[""]'); \ + fi && \ + curl -o \ + /usr/bin/kepubify -L \ + https://github.com/pgaskin/kepubify/releases/download/${KEPUBIFY_RELEASE}/kepubify-linux-64bit && \ + echo "**** cleanup ****" && \ + apt-get -y purge \ + git \ + libldap2-dev \ + libsasl2-dev \ + python3-pip && \ + apt-get -y autoremove && \ + rm -rf \ + /tmp/* \ + /var/lib/apt/lists/* \ + /var/tmp/* \ + /root/.cache # add local files COPY root/ / diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index 947e956..df26a2b 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -8,79 +8,79 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA LABEL maintainer="chbmb" RUN \ - echo "**** install build packages ****" && \ - apt-get update && \ - apt-get install -y \ - g++ \ - gcc \ - git \ - libffi-dev \ - libjpeg-dev \ - libldap2-dev \ - libsasl2-dev \ - libxml2-dev \ - libxslt1-dev \ - python3-pip \ - zlib1g-dev && \ - echo "**** install runtime packages ****" && \ - apt-get install -y \ - imagemagick \ - libldap-2.4-2 \ - libnss3 \ - libsasl2-2 \ - libxcomposite1 \ - libxi6 \ - libxrandr2 \ - libxslt1.1 \ - python3-minimal \ - python3-pkg-resources \ - unrar && \ - echo "**** install calibre-web ****" && \ - if [ -z ${CALIBREWEB_COMMIT+x} ]; then \ - CALIBREWEB_COMMIT=$(curl -sX GET "https://api.github.com/repos/janeczku/calibre-web/commits/master" \ - | awk '/sha/{print $4;exit}' FS='[""]'); \ - fi && \ - curl -o \ - /tmp/calibre-web.tar.gz -L \ - "https://github.com/janeczku/calibre-web/archive/${CALIBREWEB_COMMIT}.tar.gz" && \ - mkdir -p \ - /app/calibre-web && \ - tar xf \ - /tmp/calibre-web.tar.gz -C \ - /app/calibre-web --strip-components=1 && \ - cd /app/calibre-web && \ - pip3 install --no-cache-dir -U \ - pip && \ - pip install --no-cache-dir -U -r \ - requirements.txt -r \ - optional-requirements.txt && \ - echo "***install kepubify" && \ - if [ -z ${KEPUBIFY_RELEASE+x} ]; then \ + echo "**** install build packages ****" && \ + apt-get update && \ + apt-get install -y \ + g++ \ + gcc \ + git \ + libffi-dev \ + libjpeg-dev \ + libldap2-dev \ + libsasl2-dev \ + libxml2-dev \ + libxslt1-dev \ + python3-pip \ + zlib1g-dev && \ + echo "**** install runtime packages ****" && \ + apt-get install -y \ + imagemagick \ + libldap-2.4-2 \ + libnss3 \ + libsasl2-2 \ + libxcomposite1 \ + libxi6 \ + libxrandr2 \ + libxslt1.1 \ + python3-minimal \ + python3-pkg-resources \ + unrar && \ + echo "**** install calibre-web ****" && \ + if [ -z ${CALIBREWEB_COMMIT+x} ]; then \ + CALIBREWEB_COMMIT=$(curl -sX GET "https://api.github.com/repos/janeczku/calibre-web/commits/master" \ + | awk '/sha/{print $4;exit}' FS='[""]'); \ + fi && \ + curl -o \ + /tmp/calibre-web.tar.gz -L \ + "https://github.com/janeczku/calibre-web/archive/${CALIBREWEB_COMMIT}.tar.gz" && \ + mkdir -p \ + /app/calibre-web && \ + tar xf \ + /tmp/calibre-web.tar.gz -C \ + /app/calibre-web --strip-components=1 && \ + cd /app/calibre-web && \ + pip3 install --no-cache-dir -U \ + pip && \ + pip install --no-cache-dir -U --find-links https://wheel-index.linuxserver.io/ubuntu/ -r \ + requirements.txt -r \ + optional-requirements.txt && \ + echo "***install kepubify" && \ + if [ -z ${KEPUBIFY_RELEASE+x} ]; then \ KEPUBIFY_RELEASE=$(curl -sX GET "https://api.github.com/repos/pgaskin/kepubify/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]'); \ - fi && \ - curl -o \ - /usr/bin/kepubify -L \ - https://github.com/pgaskin/kepubify/releases/download/${KEPUBIFY_RELEASE}/kepubify-linux-arm64 && \ - echo "**** cleanup ****" && \ - apt-get -y purge \ - g++ \ - gcc \ - git \ - libffi-dev \ - libjpeg-dev \ - libldap2-dev \ - libsasl2-dev \ - libxml2-dev \ - libxslt1-dev \ - python3-pip \ - zlib1g-dev && \ - apt-get -y autoremove && \ - rm -rf \ - /tmp/* \ - /var/lib/apt/lists/* \ - /var/tmp/* \ - /root/.cache + | awk '/tag_name/{print $4;exit}' FS='[""]'); \ + fi && \ + curl -o \ + /usr/bin/kepubify -L \ + https://github.com/pgaskin/kepubify/releases/download/${KEPUBIFY_RELEASE}/kepubify-linux-arm64 && \ + echo "**** cleanup ****" && \ + apt-get -y purge \ + g++ \ + gcc \ + git \ + libffi-dev \ + libjpeg-dev \ + libldap2-dev \ + libsasl2-dev \ + libxml2-dev \ + libxslt1-dev \ + python3-pip \ + zlib1g-dev && \ + apt-get -y autoremove && \ + rm -rf \ + /tmp/* \ + /var/lib/apt/lists/* \ + /var/tmp/* \ + /root/.cache # add local files COPY root/ / diff --git a/Dockerfile.armhf b/Dockerfile.armhf index d19bfad..f2e6b0a 100644 --- a/Dockerfile.armhf +++ b/Dockerfile.armhf @@ -8,84 +8,84 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA LABEL maintainer="chbmb" RUN \ - echo "**** install build packages ****" && \ - apt-get update && \ - apt-get install -y \ - g++ \ - gcc \ - git \ - libffi-dev \ - libjpeg-dev \ - libldap2-dev \ - libsasl2-dev \ - libssl-dev \ - libxml2-dev \ - libxslt1-dev \ - python3-pip \ - rustc \ - zlib1g-dev && \ - echo "**** install runtime packages ****" && \ - apt-get install -y \ - imagemagick \ - libldap-2.4-2 \ - libnss3 \ - libsasl2-2 \ - libxcomposite1 \ - libxi6 \ - libxrandr2 \ - libxslt1.1 \ - python3-minimal \ + echo "**** install build packages ****" && \ + apt-get update && \ + apt-get install -y \ + g++ \ + gcc \ + git \ + libffi-dev \ + libjpeg-dev \ + libldap2-dev \ + libsasl2-dev \ + libssl-dev \ + libxml2-dev \ + libxslt1-dev \ + python3-pip \ + rustc \ + zlib1g-dev && \ + echo "**** install runtime packages ****" && \ + apt-get install -y \ + imagemagick \ + libldap-2.4-2 \ + libnss3 \ + libsasl2-2 \ + libxcomposite1 \ + libxi6 \ + libxrandr2 \ + libxslt1.1 \ + python3-minimal \ python3-pkg-resources \ - unrar && \ - echo "**** install calibre-web ****" && \ - if [ -z ${CALIBREWEB_COMMIT+x} ]; then \ - CALIBREWEB_COMMIT=$(curl -sX GET "https://api.github.com/repos/janeczku/calibre-web/commits/master" \ - | awk '/sha/{print $4;exit}' FS='[""]'); \ - fi && \ - curl -o \ - /tmp/calibre-web.tar.gz -L \ - "https://github.com/janeczku/calibre-web/archive/${CALIBREWEB_COMMIT}.tar.gz" && \ - mkdir -p \ - /app/calibre-web && \ - tar xf \ - /tmp/calibre-web.tar.gz -C \ - /app/calibre-web --strip-components=1 && \ - cd /app/calibre-web && \ - pip3 install --no-cache-dir -U \ - pip && \ - pip install --no-cache-dir -U -r \ - requirements.txt -r \ - optional-requirements.txt && \ - echo "***install kepubify" && \ - if [ -z ${KEPUBIFY_RELEASE+x} ]; then \ + unrar && \ + echo "**** install calibre-web ****" && \ + if [ -z ${CALIBREWEB_COMMIT+x} ]; then \ + CALIBREWEB_COMMIT=$(curl -sX GET "https://api.github.com/repos/janeczku/calibre-web/commits/master" \ + | awk '/sha/{print $4;exit}' FS='[""]'); \ + fi && \ + curl -o \ + /tmp/calibre-web.tar.gz -L \ + "https://github.com/janeczku/calibre-web/archive/${CALIBREWEB_COMMIT}.tar.gz" && \ + mkdir -p \ + /app/calibre-web && \ + tar xf \ + /tmp/calibre-web.tar.gz -C \ + /app/calibre-web --strip-components=1 && \ + cd /app/calibre-web && \ + pip3 install --no-cache-dir -U \ + pip && \ + pip install --no-cache-dir -U --find-links https://wheel-index.linuxserver.io/ubuntu/ -r \ + requirements.txt -r \ + optional-requirements.txt && \ + echo "***install kepubify" && \ + if [ -z ${KEPUBIFY_RELEASE+x} ]; then \ KEPUBIFY_RELEASE=$(curl -sX GET "https://api.github.com/repos/pgaskin/kepubify/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]'); \ - fi && \ - curl -o \ - /usr/bin/kepubify -L \ - https://github.com/pgaskin/kepubify/releases/download/${KEPUBIFY_RELEASE}/kepubify-linux-arm && \ - echo "**** cleanup ****" && \ - apt-get -y purge \ - g++ \ - gcc \ - git \ - libffi-dev \ - libjpeg-dev \ - libldap2-dev \ - libsasl2-dev \ - libssl-dev \ - libxml2-dev \ - libxslt1-dev \ - python3-pip \ - rustc \ - zlib1g-dev && \ - apt-get -y autoremove && \ - rm -rf \ - /tmp/* \ - /var/lib/apt/lists/* \ - /var/tmp/* \ - /root/.cache \ - /root/.cargo + | awk '/tag_name/{print $4;exit}' FS='[""]'); \ + fi && \ + curl -o \ + /usr/bin/kepubify -L \ + https://github.com/pgaskin/kepubify/releases/download/${KEPUBIFY_RELEASE}/kepubify-linux-arm && \ + echo "**** cleanup ****" && \ + apt-get -y purge \ + g++ \ + gcc \ + git \ + libffi-dev \ + libjpeg-dev \ + libldap2-dev \ + libsasl2-dev \ + libssl-dev \ + libxml2-dev \ + libxslt1-dev \ + python3-pip \ + rustc \ + zlib1g-dev && \ + apt-get -y autoremove && \ + rm -rf \ + /tmp/* \ + /var/lib/apt/lists/* \ + /var/tmp/* \ + /root/.cache \ + /root/.cargo # add local files COPY root/ / diff --git a/root/etc/cont-init.d/30-config b/root/etc/cont-init.d/30-config index 384f5cb..4ca17b9 100644 --- a/root/etc/cont-init.d/30-config +++ b/root/etc/cont-init.d/30-config @@ -2,48 +2,48 @@ # create symlinks for imagemagick policy.xml [[ -f /etc/ImageMagick-6/policy.xml ]] && \ - rm /etc/ImageMagick-6/policy.xml + rm /etc/ImageMagick-6/policy.xml [[ ! -L /etc/ImageMagick-6/policy.xml ]] && \ - ln -s /defaults/policy.xml /etc/ImageMagick-6/policy.xml + ln -s /defaults/policy.xml /etc/ImageMagick-6/policy.xml # create symlinks for database and log [[ ! -f /config/app.db ]] && \ - cp /defaults/app.db /config/app.db + cp /defaults/app.db /config/app.db [[ -f /app/calibre-web/app.db ]] && \ - rm /app/calibre-web/app.db + rm /app/calibre-web/app.db [[ ! -L /app/calibre-web/app.db ]] && \ - ln -s /config/app.db /app/calibre-web/app.db + ln -s /config/app.db /app/calibre-web/app.db # create symlinks for log [[ ! -f /config/calibre-web.log ]] && \ - touch /config/calibre-web.log + touch /config/calibre-web.log [[ -f /app/calibre-web/calibre-web.log ]] && \ - rm /app/calibre-web/calibre-web.log + rm /app/calibre-web/calibre-web.log [[ ! -L /app/calibre-web/calibre-web.log ]] && \ - ln -s /config/calibre-web.log /app/calibre-web/calibre-web.log + ln -s /config/calibre-web.log /app/calibre-web/calibre-web.log # create Google drive client_secrets.json file [[ ! -f /config/client_secrets.json ]] && \ - echo "{}" > /config/client_secrets.json + echo "{}" > /config/client_secrets.json [[ -f /app/calibre-web/client_secrets.json ]] && - rm /app/calibre-web/client_secrets.json + rm /app/calibre-web/client_secrets.json [[ ! -L /app/calibre-web/client_secrets.json ]] && - ln -s /config/client_secrets.json /app/calibre-web/client_secrets.json + ln -s /config/client_secrets.json /app/calibre-web/client_secrets.json # create Google drive symlinks for database [[ ! -f /config/gdrive.db ]] && \ - cp /app/calibre-web/gdrive.db /config/gdrive.db + cp /app/calibre-web/gdrive.db /config/gdrive.db [[ -f /app/calibre-web/gdrive.db ]] && \ - rm /app/calibre-web/gdrive.db + rm /app/calibre-web/gdrive.db [[ ! -L /app/calibre-web/gdrive.db ]] && \ - ln -s /config/gdrive.db /app/calibre-web/gdrive.db + ln -s /config/gdrive.db /app/calibre-web/gdrive.db # check if kepubify is present and if so make executable [[ -f /usr/bin/kepubify ]] && \ [[ ! -x /usr/bin/kepubify ]] && \ - chmod +x /usr/bin/kepubify + chmod +x /usr/bin/kepubify # permissions chown -R abc:abc \ - /config \ - /app/calibre-web + /config \ + /app/calibre-web diff --git a/root/etc/services.d/calibre-web/run b/root/etc/services.d/calibre-web/run index 228e498..98523a3 100644 --- a/root/etc/services.d/calibre-web/run +++ b/root/etc/services.d/calibre-web/run @@ -3,4 +3,4 @@ cd /app/calibre-web || exit exec \ - s6-setuidgid abc python3 /app/calibre-web/cps.py + s6-setuidgid abc python3 /app/calibre-web/cps.py