diff --git a/emby-beta/CHANGELOG.md b/emby-beta/CHANGELOG.md new file mode 100644 index 000000000..c730cc82e --- /dev/null +++ b/emby-beta/CHANGELOG.md @@ -0,0 +1,32 @@ +## 0.7.1 + + - Mount /media folder + +## 0.7.0 + + - Update emby to 4.5.2.0 (linuxserver/emby:4.5.2.0-ls58) + +## 0.6.0 + + - Update emby to 4.5.1.0 (linuxserver/emby:4.5.1.0-ls58) + +## 0.5.0 + + - Update emby to 4.5.0.50 (linuxserver/emby:4.5.0.50-ls56) + +## 0.4.0 + + - Update emby to 4.4.3.0 (linuxserver/emby:4.4.3.0-ls45) + +## 0.3.0 + + - Update emby to 4.4.2.0 (linuxserver/emby:4.4.2.0-ls40) + +## 0.2.0 + + - not a legacy addon anymore + - Update base image to linuxserver/emby:4.3.1.0-ls31 + +## 0.1.0 + + - emby to 4.3.1.0 (linuxserver/emby:4.3.1.0-ls26) \ No newline at end of file diff --git a/emby-beta/Dockerfile b/emby-beta/Dockerfile new file mode 100644 index 000000000..964f5c845 --- /dev/null +++ b/emby-beta/Dockerfile @@ -0,0 +1,33 @@ +ARG BUILD_FROM +ARG BUILD_VERSION + +FROM ${BUILD_FROM}${BUILD_VERSION} + +# Set shell +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +RUN apt-get update \ + \ + && apt-get install -y --no-install-recommends \ + jq \ + \ + && apt-get -y upgrade cifs-utils \ + && curl -J -L -o /tmp/bashio.tar.gz \ + "https://github.com/hassio-addons/bashio/archive/v0.7.1.tar.gz" \ + && mkdir /tmp/bashio \ + && tar zxvf \ + /tmp/bashio.tar.gz \ + --strip 1 -C /tmp/bashio \ + \ + && mv /tmp/bashio/lib /usr/lib/bashio \ + && ln -s /usr/lib/bashio/bashio /usr/bin/bashio \ + && rm -fr \ + /tmp/* \ + /var/{cache,log}/* \ + /var/lib/apt/lists/* + +RUN sed -i "s|/config|/emby|g" /etc/services.d/emby/run \ + && sed -i "s|/config|/emby|g" /etc/cont-init.d/30-config + +# copy local files +COPY root/ / diff --git a/emby-beta/README.md b/emby-beta/README.md new file mode 100644 index 000000000..d99098c4c --- /dev/null +++ b/emby-beta/README.md @@ -0,0 +1,36 @@ +# Home assistant add-on: emby +![Supports aarch64 Architecture][aarch64-shield] ![Supports amd64 Architecture][amd64-shield] ![Supports armhf Architecture][armhf-shield] ![Supports armv7 Architecture][armv7-shield] + +## About + +Forked to add latest beta versions, smb and local hdd mount. +- Inital version : https://github.com/petersendev/hassio-addons +- CIFS code : https://github.com/dianlight/hassio-addons + +[emby](https://emby.media/) organizes video, music, live TV, and photos from personal media libraries and streams them to smart TVs, streaming boxes and mobile devices. This container is packaged as a standalone emby Media Server. + +This addon is based on the [docker image](https://github.com/linuxserver/docker-emby) from linuxserver.io. + +## Installation + +The installation of this add-on is pretty straightforward and not different in +comparison to installing any other Hass.io add-on. + +1. [Add my Hass.io add-ons repository][repository] to your Hass.io instance. +1. Install this add-on. +1. Click the `Save` button to store your configuration. +1. Start the add-on. +1. Check the logs of the add-on to see if everything went well. +1. Carefully configure the add-on to your preferences, see the official documentation for for that. + + +## Configuration + +Webui can be found at `:8096`. + + +[repository]: https://github.com/alexbelgium/hassio-addons +[aarch64-shield]: https://img.shields.io/badge/aarch64-yes-green.svg +[amd64-shield]: https://img.shields.io/badge/amd64-yes-green.svg +[armhf-shield]: https://img.shields.io/badge/armhf-yes-green.svg +[armv7-shield]: https://img.shields.io/badge/armv7-yes-green.svg diff --git a/emby-beta/build.json b/emby-beta/build.json new file mode 100644 index 000000000..059fcaafe --- /dev/null +++ b/emby-beta/build.json @@ -0,0 +1,8 @@ +{ + "build_from": { + "armv7": "linuxserver/emby:arm32v7-version-", + "armhf": "linuxserver/emby:arm32v7-version-", + "aarch64": "linuxserver/emby:arm64v8-version-", + "amd64": "linuxserver/emby:amd64-version-" + } +} diff --git a/emby-beta/config.json b/emby-beta/config.json new file mode 100644 index 000000000..1bae1baa4 --- /dev/null +++ b/emby-beta/config.json @@ -0,0 +1,59 @@ +{ + "name": "Emby beta NAS", + "version": "4.6.0.22", + "slug": "emby_nas", + "legacy": false, + "maintenance": { + "github_release": "https://github.com/linuxserver/docker-emby", + "version_regex": "(\\d+\\.\\d+\\.\\d+.\\d+)-(ls\\d+)" + }, + "description": "A Free Software Media System that puts you in control of managing and streaming your media.", + "url": "https://github.com/petersendev/hassio-addons/tree/master/emby#readme", + "startup": "services", + "arch": [ + "aarch64", + "amd64", + "armv7", + "armhf" + ], + "ports": { + "8096/tcp": 8096, + "8920/tcp": null, + "7359/udp": null, + "1900/udp": null + }, + "ports_description": { + "8096/tcp": "web interface", + "8920/tcp": "https web interface (optional)", + "7359/udp": "udp server discover (optional)", + "1900/udp": "dlna (optional)" + }, + "map": [ + "config:rw", + "share:rw", + "media:rw", + "ssl" + ], + "webui": "http://[HOST]:[PORT:8096]", + "boot": "auto", + "privileged": ["SYS_ADMIN", "DAC_READ_SEARCH"], + "full_access": true, + "options": { + "PUID": 1001, + "PGID": 1001, + "localdisks": ["sda1"], + "networkdisks": "", + "cifsusername": "", + "cifspassword": "" + }, + "schema": { + "PUID": "int", + "PGID": "int", + "TZ": "str?", + "localdisks": ["str"], + "networkdisks": "str", + "cifsusername": "str", + "cifspassword": "str" + } + +} diff --git a/emby-beta/icon.png b/emby-beta/icon.png new file mode 100644 index 000000000..3ece9e138 Binary files /dev/null and b/emby-beta/icon.png differ diff --git a/emby-beta/logo.png b/emby-beta/logo.png new file mode 100644 index 000000000..3ece9e138 Binary files /dev/null and b/emby-beta/logo.png differ diff --git a/emby-beta/root/etc/cont-init.d/00-ha-env b/emby-beta/root/etc/cont-init.d/00-ha-env new file mode 100644 index 000000000..3b3e69246 --- /dev/null +++ b/emby-beta/root/etc/cont-init.d/00-ha-env @@ -0,0 +1,5 @@ +#!/usr/bin/with-contenv bashio + +for k in $(bashio::jq "${__BASHIO_ADDON_CONFIG}" 'keys | .[]'); do + printf "$(bashio::config $k)" > /var/run/s6/container_environment/$k +done \ No newline at end of file diff --git a/emby-beta/root/etc/cont-init.d/20-folders b/emby-beta/root/etc/cont-init.d/20-folders new file mode 100644 index 000000000..8f46b7ce5 --- /dev/null +++ b/emby-beta/root/etc/cont-init.d/20-folders @@ -0,0 +1,82 @@ +#!/usr/bin/with-contenv bash + +if [ ! -d /emby ]; then + echo "Creating /emby" + mkdir -p /emby + chown -R abc:abc /emby +fi + +if [ ! -d /share/storage/tv ]; then + echo "Creating /share/storage/tv" + mkdir -p /share/storage/tv + chown -R abc:abc /share/storage/tv +fi + +if [ ! -d /share/storage/movies ]; then + echo "Creating /share/storage/movies" + mkdir -p /share/storage/movies + chown -R abc:abc /share/storage/movies +fi + +if [ ! -d /share/emby ]; then + echo "Creating /share/emby" + mkdir -p /share/emby + chown -R abc:abc /share/emby +fi + +if [ ! -d /config/emby ]; then + echo "Creating /config/emby" + mkdir -p /config/emby + chown -R abc:abc /config/emby +fi + +# links + +if [ ! -d /emby/cache ]; then + echo "Creating link for /emby/cache" + mkdir -p /share/emby/cache + chown -R abc:abc /share/emby/cache + ln -s /share/emby/cache /emby/cache +fi + +if [ ! -d /emby/config ]; then + echo "Creating link for /emby/config" + mkdir -p /config/emby + chown -R abc:abc /config/emby + ln -s /config/emby /emby/config +fi + +if [ ! -d /emby/data ]; then + echo "Creating link for /emby/data" + mkdir -p /share/emby/data + chown -R abc:abc /share/emby/data + ln -s /share/emby/data /emby/data +fi + +if [ ! -d /emby/logs ]; then + echo "Creating link for /emby/logs" + mkdir -p /share/emby/logs + chown -R abc:abc /share/emby/logs + ln -s /share/emby/logs /emby/logs +fi + +if [ ! -d /emby/metadata ]; then + echo "Creating link for /emby/metadata" + mkdir -p /share/emby/metadata + chown -R abc:abc /share/emby/metadata + ln -s /share/emby/metadata /emby/metadata +fi + +if [ ! -d /emby/plugins ]; then + echo "Creating link for /emby/plugins" + mkdir -p /share/emby/plugins + chown -R abc:abc /share/emby/plugins + ln -s /share/emby/plugins /emby/plugins +fi + +if [ ! -d /emby/root ]; then + echo "Creating link for /emby/root" + mkdir -p /share/emby/root + chown -R abc:abc /share/emby/root + ln -s /share/emby/root /emby/root +fi diff --git a/emby-beta/root/etc/cont-init.d/50-mounts b/emby-beta/root/etc/cont-init.d/50-mounts new file mode 100644 index 000000000..e7fb49d35 --- /dev/null +++ b/emby-beta/root/etc/cont-init.d/50-mounts @@ -0,0 +1,43 @@ +#!/usr/bin/with-contenv bashio +bashio::log.info 'Mounting external hdd...' + +# Mount local Share if configured and if Protection Mode is active +if bashio::config.has_value 'localdisks'; then + MOREDISKS=$(bashio::config 'localdisks') + bashio::log.info "Local Disks mounting.. ${MOREDISKS}" && \ + for disk in $MOREDISKS + do + bashio::log.info "Mount ${disk}" + mkdir -p /share/$disk && \ + if [ ! -d /share/$disk ]; then + echo "Creating /share/$disk" + mkdir -p /share/$disk + chown -R abc:abc /share/$disk + fi + mount /dev/$disk /share/$disk && \ + bashio::log.info "Success!" + done || \ + bashio::log.warning "Protection mode is ON. Unable to mount local drives!" +fi + +# Mount CIFS Share if configured and if Protection Mode is active +if bashio::config.has_value 'networkdisks'; then + MOREDISKS=$(bashio::config 'networkdisks') + CIFS_USERNAME=$(bashio::config 'cifsusername') + CIFS_PASSWORD=$(bashio::config 'cifspassword') + bashio::log.info "Network Disks mounting.. ${MOREDISKS}" && \ + for disk in $MOREDISKS + do + bashio::log.info "Mount ${disk}" + mkdir -p /share/storagecifs && \ + if [ ! -d /storage/storagecifs ]; then + echo "Creating /storage/storagecifs" + mkdir -p /storage/storagecifs + chown -R abc:abc /storage/storagecifs + fi + + mount -t cifs -o username=$CIFS_USERNAME,password=$CIFS_PASSWORD $disk /storage/storagecifs && \ + bashio::log.info "Success!" + done || \ + bashio::log.warning "Protection mode is ON. Unable to mount external drives!" +fi diff --git a/emby/config.json b/emby/config.json index 1bae1baa4..a35a3fd17 100644 --- a/emby/config.json +++ b/emby/config.json @@ -1,7 +1,7 @@ { - "name": "Emby beta NAS", - "version": "4.6.0.22", - "slug": "emby_nas", + "name": "Emby NAS", + "version": "4.5.4.0", + "slug": "emby", "legacy": false, "maintenance": { "github_release": "https://github.com/linuxserver/docker-emby",