From 1c56d3a16a36dfa46d205ab3febc8182a23d029d Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 29 Apr 2022 15:04:20 +0200 Subject: [PATCH] calibre initial build --- calibre/CHANGELOG.md | 1 + calibre/Dockerfile | 109 ++++++++++++++++++ calibre/Readme.md | 72 ++++++++++++ calibre/apparmor.txt | 56 +++++++++ calibre/build.json | 10 ++ calibre/config.json | 86 ++++++++++++++ calibre/icon.png | Bin 0 -> 68636 bytes calibre/logo.png | Bin 0 -> 68636 bytes .../cont-init.d/00-aaa_dockerfile_backup.sh | 33 ++++++ .../etc/cont-init.d/00-data_location.sh | 47 ++++++++ calibre/rootfs/etc/cont-init.d/20-folders.sh | 8 ++ calibre/rootfs/etc/cont-init.d/32-nginx.sh | 33 ++++++ calibre/rootfs/etc/nginx/includes/mime.types | 96 +++++++++++++++ .../etc/nginx/includes/proxy_params.conf | 15 +++ .../rootfs/etc/nginx/includes/resolver.conf | 1 + .../etc/nginx/includes/server_params.conf | 6 + .../rootfs/etc/nginx/includes/ssl_params.conf | 9 ++ .../rootfs/etc/nginx/includes/upstream.conf | 3 + calibre/rootfs/etc/nginx/nginx.conf | 56 +++++++++ calibre/rootfs/etc/nginx/servers/ingress.conf | 18 +++ calibre/rootfs/etc/services.d/nginx/finish | 8 ++ calibre/rootfs/etc/services.d/nginx/run | 10 ++ calibre/updater.json | 8 ++ 23 files changed, 685 insertions(+) create mode 100644 calibre/CHANGELOG.md create mode 100644 calibre/Dockerfile create mode 100644 calibre/Readme.md create mode 100644 calibre/apparmor.txt create mode 100644 calibre/build.json create mode 100644 calibre/config.json create mode 100644 calibre/icon.png create mode 100644 calibre/logo.png create mode 100644 calibre/rootfs/etc/cont-init.d/00-aaa_dockerfile_backup.sh create mode 100644 calibre/rootfs/etc/cont-init.d/00-data_location.sh create mode 100644 calibre/rootfs/etc/cont-init.d/20-folders.sh create mode 100644 calibre/rootfs/etc/cont-init.d/32-nginx.sh create mode 100644 calibre/rootfs/etc/nginx/includes/mime.types create mode 100644 calibre/rootfs/etc/nginx/includes/proxy_params.conf create mode 100644 calibre/rootfs/etc/nginx/includes/resolver.conf create mode 100644 calibre/rootfs/etc/nginx/includes/server_params.conf create mode 100644 calibre/rootfs/etc/nginx/includes/ssl_params.conf create mode 100644 calibre/rootfs/etc/nginx/includes/upstream.conf create mode 100644 calibre/rootfs/etc/nginx/nginx.conf create mode 100644 calibre/rootfs/etc/nginx/servers/ingress.conf create mode 100644 calibre/rootfs/etc/services.d/nginx/finish create mode 100644 calibre/rootfs/etc/services.d/nginx/run create mode 100644 calibre/updater.json diff --git a/calibre/CHANGELOG.md b/calibre/CHANGELOG.md new file mode 100644 index 000000000..66f7e8b76 --- /dev/null +++ b/calibre/CHANGELOG.md @@ -0,0 +1 @@ +- Initial release diff --git a/calibre/Dockerfile b/calibre/Dockerfile new file mode 100644 index 000000000..6c65d85a5 --- /dev/null +++ b/calibre/Dockerfile @@ -0,0 +1,109 @@ +#============================# +# ALEXBELGIUM'S DOCKERFILE # +#============================# +# _.------. +# _.-` ('>.-`"""-. +# '.--'` _'` _ .--.) +# -' '-.-';` ` +# ' - _.' ``'--. +# '---` .-'""` +# /` +#=== Home Assistant Addon ===# + +################# +# 1 Build Image # +################# + +ARG BUILD_FROM +ARG BUILD_VERSION +FROM ${BUILD_FROM} +ENV BASHIO_VERSION=1.29.1 + +################## +# 2 Modify Image # +################## + +# Allow UID and GID setting +RUN sed -i 's/bash/bashio/g' /etc/cont-init.d/10-adduser \ + && sed -i 's/{PUID:-911}/(bashio::config "PUID")/g' /etc/cont-init.d/10-adduser \ + && sed -i 's/{PGID:-911}/(bashio::config "PGID")/g' /etc/cont-init.d/10-adduser \ + \ + # Change home folder location + && sed -i 's|/config|/config/addons_config/addons_config/calibre|g' /defaults/* \ + && sed -i 's|/config|/config/addons_config/addons_config/calibre|g' /etc/cont-init.d/* \ + && sed -i 's|/config|/config/addons_config/addons_config/calibre|g' /etc/services.d/*/run \ + && usermod --home /config/addons_config/addons_config/calibre abc \ + \ + # Correct error in upstream image + && sed -i 's|startwm |startwm.sh |g' /etc/cont-init.d/30-config \ + \ + # Update distribution + # hadolint ignore=DL3017 + && apk upgrade --no-cache + +################## +# 3 Install apps # +################## + +# Copy local files +COPY rootfs/ / + +# Modules +ARG MODULES="00-banner.sh 00-global_var.sh 92-local_mounts.sh 92-smb_mounts.sh" + +# Automatic modules download +RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash) >/dev/null; fi \ + && if ! command -v curl >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends curl || apk add --no-cache curl) >/dev/null; fi \ + && mkdir -p /etc/cont-init.d \ + && for scripts in $MODULES; do echo "$scripts" && curl -f -L -s -S "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/$scripts" -o /etc/cont-init.d/"$scripts" && [ "$(sed -n '/\/bin/p;q' /etc/cont-init.d/"$scripts")" != "" ] || (echo "script failed to install $scripts" && exit 1); done \ + && chmod -R 755 /etc/cont-init.d || printf '%s\n' "${MODULES}" >/MODULESFILE + +# Manual apps +ENV PACKAGES="" + +# Automatic apps & bashio +RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash) >/dev/null; fi \ + && if ! command -v curl >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends curl || apk add --no-cache curl) >/dev/null; fi \ + && curl -f -L -s -S "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/automatic_packages.sh" --output /automatic_packages.sh \ + && chmod 777 /automatic_packages.sh \ + && eval /./automatic_packages.sh "${PACKAGES:-}" \ + && rm /automatic_packages.sh || printf '%s\n' "${PACKAGES:-}" > /ENVFILE + +################ +# 4 Entrypoint # +################ + +#RUN chmod 777 /entrypoint.sh +#WORKDIR / +#ENTRYPOINT [ "/usr/bin/env" ] +#CMD [ "/entrypoint.sh" ] + +############ +# 5 Labels # +############ + +ARG BUILD_ARCH +ARG BUILD_DATE +ARG BUILD_DESCRIPTION +ARG BUILD_NAME +ARG BUILD_REF +ARG BUILD_REPOSITORY +ARG BUILD_VERSION +LABEL \ + io.hass.name="${BUILD_NAME}" \ + io.hass.description="${BUILD_DESCRIPTION}" \ + io.hass.arch="${BUILD_ARCH}" \ + io.hass.type="addon" \ + io.hass.version=${BUILD_VERSION} \ + maintainer="alexbelgium (https://github.com/alexbelgium)" \ + org.opencontainers.image.title="${BUILD_NAME}" \ + org.opencontainers.image.description="${BUILD_DESCRIPTION}" \ + org.opencontainers.image.vendor="Home Assistant Add-ons" \ + org.opencontainers.image.authors="alexbelgium (https://github.com/alexbelgium)" \ + org.opencontainers.image.licenses="MIT" \ + org.opencontainers.image.url="https://github.com/alexbelgium" \ + org.opencontainers.image.source="https://github.com/${BUILD_REPOSITORY}" \ + org.opencontainers.image.documentation="https://github.com/${BUILD_REPOSITORY}/blob/main/README.md" \ + org.opencontainers.image.created=${BUILD_DATE} \ + org.opencontainers.image.revision=${BUILD_REF} \ + org.opencontainers.image.version=${BUILD_VERSION} diff --git a/calibre/Readme.md b/calibre/Readme.md new file mode 100644 index 000000000..b63687155 --- /dev/null +++ b/calibre/Readme.md @@ -0,0 +1,72 @@ +# Home assistant add-on: calibre + +[![Donate][donation-badge]](https://www.buymeacoffee.com/alexbelgium) + +![Version](https://img.shields.io/badge/dynamic/json?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fcalibre%2Fconfig.json) +![Ingress](https://img.shields.io/badge/dynamic/json?label=Ingress&query=%24.ingress&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fcalibre%2Fconfig.json) +![Arch](https://img.shields.io/badge/dynamic/json?color=success&label=Arch&query=%24.arch&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fcalibre%2Fconfig.json) + +[![Codacy Badge](https://app.codacy.com/project/badge/Grade/9c6cf10bdbba45ecb202d7f579b5be0e)](https://www.codacy.com/gh/alexbelgium/hassio-addons/dashboard?utm_source=github.com&utm_medium=referral&utm_content=alexbelgium/hassio-addons&utm_campaign=Badge_Grade) +[![GitHub Super-Linter](https://github.com/alexbelgium/hassio-addons/workflows/Lint%20Code%20Base/badge.svg)](https://github.com/marketplace/actions/super-linter) +[![Builder](https://github.com/alexbelgium/hassio-addons/workflows/Builder/badge.svg)](https://github.com/alexbelgium/hassio-addons/actions/workflows/builder.yaml) + +[donation-badge]: https://img.shields.io/badge/Buy%20me%20a%20coffee-%23d32f2f?logo=buy-me-a-coffee&style=flat&logoColor=white + +_Thanks to everyone having starred my repo! To star it click on the image below, then it will be on top right. Thanks!_ + +[![Stargazers repo roster for @alexbelgium/hassio-addons](https://reporoster.com/stars/alexbelgium/hassio-addons)](https://github.com/alexbelgium/hassio-addons/stargazers) + +## About + +--- + +[Calibre](https://calibre-ebook.com/) is a powerful and easy to use e-book manager. Users say it’s outstanding and a must-have. It’ll allow you to do nearly everything and it takes things a step beyond normal e-book software. It’s also completely free and open source and great for both casual users and computer experts. + +This addon is based on the docker image https://github.com/linuxserver/docker-calibre + +## Installation + +--- + +The installation of this add-on is pretty straightforward and not different in comparison to installing any other add-on. + +1. Add my add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA) + [![Open your Home Assistant instance and show the add add-on repository dialog with a specific repository URL pre-filled.](https://my.home-assistant.io/badges/supervisor_add_addon_repository.svg)](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons) +1. Install this add-on. +1. Click the `Save` button to store your configuration. +1. Set the add-on options to your preferences +1. Start the add-on. +1. Check the logs of the add-on to see if everything went well. +1. Open the webUI and adapt the software options + +## Configuration + +--- + +Webui can be found at . +The default username/password : described in the startup log. +Configurations can be done through the app webUI, except for the following options + +```yaml +GUID: user +GPID: user +TZ: timezone +PASSWORD: Optionally set a password for the gui +CLI_ARGS: Optionally pass cli start arguments to calibre +localdisks: sda1 #put the hardware name of your drive to mount separated by commas, or its label. Ex: sda1, sdb1, MYNAS... +networkdisks: "//SERVER/SHARE" # optional, list of smb servers to mount, separated by commas +cifsusername: "username" # optional, smb username, same for all smb shares +cifspassword: "password" # optional, smb password +``` + +## Support + +Create an issue on github + +## Illustration + +--- + +![illustration](https://calibre.com/img/slider/artistdetails.png) + +[repository]: https://github.com/alexbelgium/hassio-addons diff --git a/calibre/apparmor.txt b/calibre/apparmor.txt new file mode 100644 index 000000000..17f52ab7d --- /dev/null +++ b/calibre/apparmor.txt @@ -0,0 +1,56 @@ +#include + +profile calibre_addon flags=(attach_disconnected,mediate_deleted) { + #include + + capability, + file, + signal, + mount, + umount, + remount, + network udp, + network tcp, + network dgram, + network stream, + network inet, + network inet6, + network netlink raw, + + capability setgid, + capability setuid, + capability sys_admin, + capability dac_read_search, + # capability dac_override, + # capability sys_rawio, + +# S6-Overlay + /bin/** ix, + /usr/bin/** ix, + /usr/lib/bashio/** ix, + /etc/s6/** rix, + /run/s6/** rix, + /etc/services.d/** rwix, + /etc/cont-init.d/** rwix, + /etc/cont-finish.d/** rwix, + /init rix, + /var/run/** mrwkl, + /var/run/ mrwkl, + /dev/i2c-1 mrwkl, + # Files required + /dev/sda1 mrwkl, + /dev/sdb1 mrwkl, + /dev/mmcblk0p1 mrwkl, + /dev/* mrwkl, + /tmp/** mrkwl, + + # Data access + /data/** rw, + + # suppress ptrace denials when using 'docker ps' or using 'ps' inside a container + ptrace (trace,read) peer=docker-default, + + # docker daemon confinement requires explict allow rule for signal + signal (receive) set=(kill,term) peer=/usr/bin/docker, + +} diff --git a/calibre/build.json b/calibre/build.json new file mode 100644 index 000000000..7af98d690 --- /dev/null +++ b/calibre/build.json @@ -0,0 +1,10 @@ +{ + "build_from": { + "aarch64": "lscr.io/linuxserver/calibre:arm64v8-latest", + "amd64": "lscr.io/linuxserver/calibre:amd64-latest", + "armv7": "lscr.io/linuxserver/calibre:arm32v7-latest" + }, + "codenotary": { + "signer": "alexandrep.github@gmail.com" + } +} \ No newline at end of file diff --git a/calibre/config.json b/calibre/config.json new file mode 100644 index 000000000..aa39d212d --- /dev/null +++ b/calibre/config.json @@ -0,0 +1,86 @@ +{ + "arch": [ + "aarch64", + "amd64", + "armv7" + ], + "codenotary": "alexandrep.github@gmail.com", + "description": "Request management and media discovery tool built to work with your existing Plex ecosystem", + "devices": [ + "/dev/sda", + "/dev/sdb", + "/dev/sdc", + "/dev/sdd", + "/dev/sde", + "/dev/sdf", + "/dev/sdg", + "/dev/nvme", + "/dev/mmcblk", + "/dev/sda1", + "/dev/sdb1", + "/dev/sdc1", + "/dev/sdd1", + "/dev/sde1", + "/dev/sdf1", + "/dev/sdg1", + "/dev/sda2", + "/dev/sdb2", + "/dev/sdc2", + "/dev/sdd2", + "/dev/sde2", + "/dev/sdf2", + "/dev/sdg2", + "/dev/sda3", + "/dev/sdb3", + "/dev/sda4", + "/dev/sdb4", + "/dev/nvme0", + "/dev/nvme1", + "/dev/nvme2" + ], + "environment": { + "PGID": "0", + "PUID": "0", + "CALIBRE_CONFIG_DIRECTORY": "/config/addons_config/calibre", + "FM_HOME": "/config/addons_config/calibre", + "HOME": "/config/addons_config/calibre", + "shm_size": "1gb" + }, + "ingress": true, + "map": [ + "media:rw", + "share:rw", + "ssl" + ], + "name": "Calibre", + "options": { + "PGID": 0, + "PUID": 0 + }, + "panel_icon": "mdi:monitor", + "ports": { + "8080/tcp": 8080, + "8081/tcp": 8081, + }, + "ports_description": { + "8080/tcp": "Calibre desktop gui" + "8081/tcp": "Calibre webserver gui" + }, + "privileged": [], + "schema": { + "PGID": "int", + "PUID": "int", + "TZ": "str?", + "PASSWORD": "str?", + "CLI_ARGS": "str?", + "cifspassword": "str?", + "cifsusername": "str?", + "localdisks": "str?", + "networkdisks": "str?" + }, + "slug": "calibre", + "url": "https://github.com/alexbelgium/hassio-addons/tree/master/calibre", + "version": "1.29.1", + "webui": "http://[HOST]:[PORT:8080]", + "video": true +} \ No newline at end of file diff --git a/calibre/icon.png b/calibre/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..6f28f70d11805f426b2cfa0ae3844bea8eefbf82 GIT binary patch literal 68636 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/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash) >/dev/null; fi \ + && if ! command -v curl >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends curl || apk add --no-cache curl) >/dev/null; fi \ + && mkdir -p /etc/cont-init.d \ + && for scripts in $MODULES; do echo "$scripts" && curl -f -L -s -S "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/$scripts" -o /etc/cont-init.d/"$scripts" && [ "$(sed -n '/\/bin/p;q' /etc/cont-init.d/"$scripts")" != "" ] || (echo "script failed to install $scripts" && exit 1); done \ + && chmod -R 755 /etc/cont-init.d +fi + +####################### +# Automatic installer # +####################### +if [ -e "/ENVFILE" ]; then + PACKAGES=$(/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash) >/dev/null; fi \ + && if ! command -v curl >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends curl || apk add --no-cache curl) >/dev/null; fi \ + && curl -f -L -s -S "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/automatic_packages.sh" --output /automatic_packages.sh \ + && chmod 777 /automatic_packages.sh \ + && eval /./automatic_packages.sh "${PACKAGES:-}" \ + && rm /automatic_packages.sh +fi diff --git a/calibre/rootfs/etc/cont-init.d/00-data_location.sh b/calibre/rootfs/etc/cont-init.d/00-data_location.sh new file mode 100644 index 000000000..895b62a8d --- /dev/null +++ b/calibre/rootfs/etc/cont-init.d/00-data_location.sh @@ -0,0 +1,47 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash + +# Define user +PUID=$(bashio::config "PUID") +PGID=$(bashio::config "PGID") + +# Check data location +LOCATION=$(bashio::config 'data_location') + +if [[ "$LOCATION" = "null" || -z "$LOCATION" ]]; then + # Default location + LOCATION="/config/addons_config/addons_config/calibre" +else + bashio::log.warning "Warning : a custom data location was selected, but the previous folder will NOT be copied. You need to do it manually" + + # Check if config is located in an acceptable location + LOCATIONOK="" + for location in "/share" "/config" "/data" "/mnt"; do + if [[ "$LOCATION" == "$location"* ]]; then + LOCATIONOK=true + fi + done + + if [ -z "$LOCATIONOK" ]; then + LOCATION=/config/addons_config/${HOSTNAME#*-} + bashio::log.fatal "Your data_location value can only be set in /share, /config or /data (internal to addon). It will be reset to the default location : $LOCATION" + fi + +fi + +# Set data location +bashio::log.info "Setting data location to $LOCATION" +sed -i "1a export HOME=$LOCATION" /etc/services.d/web/run +sed -i "1a export FM_HOME=$LOCATION" /etc/services.d/web/run +sed -i "s|/config/addons_config/addons_config/calibre|$LOCATION|g" /defaults/* +sed -i "s|/config/addons_config/addons_config/calibre|$LOCATION|g" /etc/cont-init.d/* +sed -i "s|/config/addons_config/addons_config/calibre|$LOCATION|g" /etc/services.d/*/run +usermod --home "$LOCATION" abc + +# Create folder +echo "Creating $LOCATION" +mkdir -p "$LOCATION" + +# Set ownership +bashio::log.info "Setting ownership to $PUID:$PGID" +chown "$PUID":"$PGID" "$LOCATION" diff --git a/calibre/rootfs/etc/cont-init.d/20-folders.sh b/calibre/rootfs/etc/cont-init.d/20-folders.sh new file mode 100644 index 000000000..a84c02095 --- /dev/null +++ b/calibre/rootfs/etc/cont-init.d/20-folders.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +if [ ! -d /config/addons_config/calibre ]; then + echo "Creating /config/addons_config/calibre" + mkdir -p /config/addons_config/calibre +fi + +chown -R abc:abc /config/addons_config/calibre diff --git a/calibre/rootfs/etc/cont-init.d/32-nginx.sh b/calibre/rootfs/etc/cont-init.d/32-nginx.sh new file mode 100644 index 000000000..6ac38a5b6 --- /dev/null +++ b/calibre/rootfs/etc/cont-init.d/32-nginx.sh @@ -0,0 +1,33 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash + +################# +# NGINX SETTING # +################# +declare port +declare certfile +declare ingress_interface +declare ingress_port +declare keyfile + +port=$(bashio::addon.port 80) +if bashio::var.has_value "${port}"; then + bashio::config.require.ssl + + if bashio::config.true 'ssl'; then + certfile=$(bashio::config 'certfile') + keyfile=$(bashio::config 'keyfile') + + mv /etc/nginx/servers/direct-ssl.disabled /etc/nginx/servers/direct.conf + sed -i "s/%%certfile%%/${certfile}/g" /etc/nginx/servers/direct.conf + sed -i "s/%%keyfile%%/${keyfile}/g" /etc/nginx/servers/direct.conf + + else + mv /etc/nginx/servers/direct.disabled /etc/nginx/servers/direct.conf + fi +fi + +ingress_port=$(bashio::addon.ingress_port) +ingress_interface=$(bashio::addon.ip_address) +sed -i "s/%%port%%/${ingress_port}/g" /etc/nginx/servers/ingress.conf +sed -i "s/%%interface%%/${ingress_interface}/g" /etc/nginx/servers/ingress.conf diff --git a/calibre/rootfs/etc/nginx/includes/mime.types b/calibre/rootfs/etc/nginx/includes/mime.types new file mode 100644 index 000000000..7c7cdef2d --- /dev/null +++ b/calibre/rootfs/etc/nginx/includes/mime.types @@ -0,0 +1,96 @@ +types { + text/html html htm shtml; + text/css css; + text/xml xml; + image/gif gif; + image/jpeg jpeg jpg; + application/javascript js; + application/atom+xml atom; + application/rss+xml rss; + + text/mathml mml; + text/plain txt; + text/vnd.sun.j2me.app-descriptor jad; + text/vnd.wap.wml wml; + text/x-component htc; + + image/png png; + image/svg+xml svg svgz; + image/tiff tif tiff; + image/vnd.wap.wbmp wbmp; + image/webp webp; + image/x-icon ico; + image/x-jng jng; + image/x-ms-bmp bmp; + + font/woff woff; + font/woff2 woff2; + + application/java-archive jar war ear; + application/json json; + application/mac-binhex40 hqx; + application/msword doc; + application/pdf pdf; + application/postscript ps eps ai; + application/rtf rtf; + application/vnd.apple.mpegurl m3u8; + application/vnd.google-earth.kml+xml kml; + application/vnd.google-earth.kmz kmz; + application/vnd.ms-excel xls; + application/vnd.ms-fontobject eot; + application/vnd.ms-powerpoint ppt; + application/vnd.oasis.opendocument.graphics odg; + application/vnd.oasis.opendocument.presentation odp; + application/vnd.oasis.opendocument.spreadsheet ods; + application/vnd.oasis.opendocument.text odt; + application/vnd.openxmlformats-officedocument.presentationml.presentation + pptx; + application/vnd.openxmlformats-officedocument.spreadsheetml.sheet + xlsx; + application/vnd.openxmlformats-officedocument.wordprocessingml.document + docx; + application/vnd.wap.wmlc wmlc; + application/x-7z-compressed 7z; + application/x-cocoa cco; + application/x-java-archive-diff jardiff; + application/x-java-jnlp-file jnlp; + application/x-makeself run; + application/x-perl pl pm; + application/x-pilot prc pdb; + application/x-rar-compressed rar; + application/x-redhat-package-manager rpm; + application/x-sea sea; + application/x-shockwave-flash swf; + application/x-stuffit sit; + application/x-tcl tcl tk; + application/x-x509-ca-cert der pem crt; + application/x-xpinstall xpi; + application/xhtml+xml xhtml; + application/xspf+xml xspf; + application/zip zip; + + application/octet-stream bin exe dll; + application/octet-stream deb; + application/octet-stream dmg; + application/octet-stream iso img; + application/octet-stream msi msp msm; + + audio/midi mid midi kar; + audio/mpeg mp3; + audio/ogg ogg; + audio/x-m4a m4a; + audio/x-realaudio ra; + + video/3gpp 3gpp 3gp; + video/mp2t ts; + video/mp4 mp4; + video/mpeg mpeg mpg; + video/quicktime mov; + video/webm webm; + video/x-flv flv; + video/x-m4v m4v; + video/x-mng mng; + video/x-ms-asf asx asf; + video/x-ms-wmv wmv; + video/x-msvideo avi; +} diff --git a/calibre/rootfs/etc/nginx/includes/proxy_params.conf b/calibre/rootfs/etc/nginx/includes/proxy_params.conf new file mode 100644 index 000000000..1990d4959 --- /dev/null +++ b/calibre/rootfs/etc/nginx/includes/proxy_params.conf @@ -0,0 +1,15 @@ +proxy_http_version 1.1; +proxy_ignore_client_abort off; +proxy_read_timeout 86400s; +proxy_redirect off; +proxy_send_timeout 86400s; +proxy_max_temp_file_size 0; + +proxy_set_header Accept-Encoding ""; +proxy_set_header Connection $connection_upgrade; +proxy_set_header Host $http_host; +proxy_set_header Upgrade $http_upgrade; +proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; +proxy_set_header X-Forwarded-Proto $scheme; +proxy_set_header X-NginX-Proxy true; +proxy_set_header X-Real-IP $remote_addr; diff --git a/calibre/rootfs/etc/nginx/includes/resolver.conf b/calibre/rootfs/etc/nginx/includes/resolver.conf new file mode 100644 index 000000000..6485af141 --- /dev/null +++ b/calibre/rootfs/etc/nginx/includes/resolver.conf @@ -0,0 +1 @@ +resolver 127.0.0.11; diff --git a/calibre/rootfs/etc/nginx/includes/server_params.conf b/calibre/rootfs/etc/nginx/includes/server_params.conf new file mode 100644 index 000000000..09c06543e --- /dev/null +++ b/calibre/rootfs/etc/nginx/includes/server_params.conf @@ -0,0 +1,6 @@ +root /dev/null; +server_name $hostname; + +add_header X-Content-Type-Options nosniff; +add_header X-XSS-Protection "1; mode=block"; +add_header X-Robots-Tag none; diff --git a/calibre/rootfs/etc/nginx/includes/ssl_params.conf b/calibre/rootfs/etc/nginx/includes/ssl_params.conf new file mode 100644 index 000000000..6f1500599 --- /dev/null +++ b/calibre/rootfs/etc/nginx/includes/ssl_params.conf @@ -0,0 +1,9 @@ +ssl_protocols TLSv1.2; +ssl_prefer_server_ciphers on; +ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-SHA; +ssl_ecdh_curve secp384r1; +ssl_session_timeout 10m; +ssl_session_cache shared:SSL:10m; +ssl_session_tickets off; +ssl_stapling on; +ssl_stapling_verify on; diff --git a/calibre/rootfs/etc/nginx/includes/upstream.conf b/calibre/rootfs/etc/nginx/includes/upstream.conf new file mode 100644 index 000000000..b292326bd --- /dev/null +++ b/calibre/rootfs/etc/nginx/includes/upstream.conf @@ -0,0 +1,3 @@ +upstream backend { + server 127.0.0.1:8080; +} diff --git a/calibre/rootfs/etc/nginx/nginx.conf b/calibre/rootfs/etc/nginx/nginx.conf new file mode 100644 index 000000000..7e5bc6f7c --- /dev/null +++ b/calibre/rootfs/etc/nginx/nginx.conf @@ -0,0 +1,56 @@ +# Run nginx in foreground. +daemon off; + +# This is run inside Docker. +user root; + +# Pid storage location. +pid /var/run/nginx.pid; + +# Set number of worker processes. +worker_processes 1; + +# Enables the use of JIT for regular expressions to speed-up their processing. +pcre_jit on; + +# Write error log to Hass.io add-on log. +error_log /proc/1/fd/1 error; + +# Load allowed environment vars +env HASSIO_TOKEN; + +# Load dynamic modules. +include /etc/nginx/modules/*.conf; + +# Max num of simultaneous connections by a worker process. +events { + worker_connections 512; +} + +http { + include /etc/nginx/includes/mime.types; + + log_format hassio '[$time_local] $status ' + '$http_x_forwarded_for($remote_addr) ' + '$request ($http_user_agent)'; + + access_log /proc/1/fd/1 hassio; + client_max_body_size 4G; + default_type application/octet-stream; + gzip on; + keepalive_timeout 65; + sendfile on; + server_tokens off; + tcp_nodelay on; + tcp_nopush on; + + map $http_upgrade $connection_upgrade { + default upgrade; + '' close; + } + + include /etc/nginx/includes/resolver.conf; + include /etc/nginx/includes/upstream.conf; + + include /etc/nginx/servers/*.conf; +} diff --git a/calibre/rootfs/etc/nginx/servers/ingress.conf b/calibre/rootfs/etc/nginx/servers/ingress.conf new file mode 100644 index 000000000..736940492 --- /dev/null +++ b/calibre/rootfs/etc/nginx/servers/ingress.conf @@ -0,0 +1,18 @@ +server { + listen %%interface%%:%%port%% default_server; + include /etc/nginx/includes/server_params.conf; + include /etc/nginx/includes/proxy_params.conf; + client_max_body_size 0; + server_name webtop.*; + + location / { + add_header Access-Control-Allow-Origin *; + proxy_pass http://127.0.0.1:8080; + proxy_buffering off; + proxy_read_timeout 30; + proxy_set_header Connection "Upgrade"; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Host $host; + } +} + diff --git a/calibre/rootfs/etc/services.d/nginx/finish b/calibre/rootfs/etc/services.d/nginx/finish new file mode 100644 index 000000000..444240135 --- /dev/null +++ b/calibre/rootfs/etc/services.d/nginx/finish @@ -0,0 +1,8 @@ +#!/usr/bin/execlineb -S0 +# ============================================================================== +# Take down the S6 supervision tree when Nginx fails +# ============================================================================== +if { s6-test ${1} -ne 0 } +if { s6-test ${1} -ne 256 } + +s6-svscanctl -t /var/run/s6/services diff --git a/calibre/rootfs/etc/services.d/nginx/run b/calibre/rootfs/etc/services.d/nginx/run new file mode 100644 index 000000000..07447d8b8 --- /dev/null +++ b/calibre/rootfs/etc/services.d/nginx/run @@ -0,0 +1,10 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +# ============================================================================== + +# Wait for transmission to become available +bashio::net.wait_for 8080 localhost 900 + +bashio::log.info "Starting NGinx..." + +exec nginx diff --git a/calibre/updater.json b/calibre/updater.json new file mode 100644 index 000000000..1fedcfb36 --- /dev/null +++ b/calibre/updater.json @@ -0,0 +1,8 @@ +{ + "last_update": "27-04-2022", + "repository": "alexbelgium/hassio-addons", + "slug": "calibre", + "source": "github", + "upstream_repo": "linuxserver/docker-calibre", + "upstream_version": "1.29.1" +} \ No newline at end of file