From 458af04859b08c03a187e1b34dfc532bbb4c6394 Mon Sep 17 00:00:00 2001 From: Arne Petersen Date: Sat, 15 Aug 2020 12:23:57 +0200 Subject: [PATCH] add heimdall --- README.md | 3 ++ azure-pipelines.yml | 3 ++ heimdall/CHANGELOG.md | 3 ++ heimdall/Dockerfile | 30 +++++++++++++++ heimdall/README.md | 26 +++++++++++++ heimdall/build.json | 13 +++++++ heimdall/config.json | 45 +++++++++++++++++++++++ heimdall/icon.png | Bin 0 -> 33408 bytes heimdall/logo.png | Bin 0 -> 33408 bytes heimdall/root/etc/cont-init.d/00-ha-env | 5 +++ heimdall/root/etc/cont-init.d/20-folders | 7 ++++ 11 files changed, 135 insertions(+) create mode 100644 heimdall/CHANGELOG.md create mode 100644 heimdall/Dockerfile create mode 100644 heimdall/README.md create mode 100644 heimdall/build.json create mode 100644 heimdall/config.json create mode 100644 heimdall/icon.png create mode 100644 heimdall/logo.png create mode 100644 heimdall/root/etc/cont-init.d/00-ha-env create mode 100644 heimdall/root/etc/cont-init.d/20-folders diff --git a/README.md b/README.md index 387d2ac05..7698fa86c 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,9 @@ https://github.com/petersendev/hassio-addons ### [emby](emby/) A Free Software Media System that puts you in control of managing and streaming your media. +### [heimdall](heimdall/) +Application Dashboard + ### [hydra2](hydra2/) Meta search application for NZB indexers diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 05e30b9bc..250b14bec 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -77,3 +77,6 @@ stages: - addon: jellyfin jobName: jellyfin arch: '--armhf --amd64 --aarch64' + - addon: heimdall + jobName: heimdall + arch: '--armhf --amd64 --aarch64' diff --git a/heimdall/CHANGELOG.md b/heimdall/CHANGELOG.md new file mode 100644 index 000000000..dcb057983 --- /dev/null +++ b/heimdall/CHANGELOG.md @@ -0,0 +1,3 @@ +## 0.1.0 + + - heimdall 2.2.2 (linuxserver/heimdall:2.2.2-ls96) \ No newline at end of file diff --git a/heimdall/Dockerfile b/heimdall/Dockerfile new file mode 100644 index 000000000..c952065c6 --- /dev/null +++ b/heimdall/Dockerfile @@ -0,0 +1,30 @@ +ARG BUILD_FROM +# hadolint ignore=DL3006 +FROM $BUILD_FROM + +RUN 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/* + +# fix folders for hassio environment +RUN sed -i "s|/config/keys/cert.crt|/ssl/fullchain.pem|g" /defaults/default && \ + sed -i "s|/config/keys/cert.key|/ssl/privkey.pem|g" /defaults/default && \ + sed -i "s|/config|/config/heimdall|g" /defaults/default && \ + sed -i "s|/config|/config/heimdall|g" /defaults/nginx.conf && \ + sed -i "s|/config/keys/cert.crt|/ssl/fullchain.pem|g" /etc/cont-init.d/* && \ + sed -i "s|/config/keys/cert.key|/ssl/privkey.pem|g" /etc/cont-init.d/* && \ + sed -i "s|/config/heimdall/keys|/ssl|g" /etc/cont-init.d/* && \ + sed -i "s|/config|/config/heimdall|g" /etc/cont-init.d/* && \ + sed -i "s|/config|/config/heimdall|g" /etc/services.d/nginx/* && \ + sed -i "s|/config|/config/heimdall|g" /etc/logrotate.d/heimdall + + +# copy local files +COPY root/ / \ No newline at end of file diff --git a/heimdall/README.md b/heimdall/README.md new file mode 100644 index 000000000..818ec763f --- /dev/null +++ b/heimdall/README.md @@ -0,0 +1,26 @@ +# Hassio Add-ons by petersendev: heimdall + +## About + +[Heimdall](https://heimdall.site/) is a way to organise all those links to your most used web sites and web applications in a simple way. Simplicity is the key to Heimdall. Why not use it as your browser start page? It even has the ability to include a search bar using either Google, Bing or DuckDuckGo. + +This addon is based on the [docker image](https://github.com/linuxserver/docker-heimdall) 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 `:82`. + +[repository]: https://github.com/petersendev/hassio-addons \ No newline at end of file diff --git a/heimdall/build.json b/heimdall/build.json new file mode 100644 index 000000000..ddb0e38f4 --- /dev/null +++ b/heimdall/build.json @@ -0,0 +1,13 @@ +{ + "build_from_template": { + "image": "linuxserver/heimdall", + "version": "2.2.2-ls96" + }, + "build_from": { + "armhf": "linuxserver/heimdall:arm32v7-2.2.2-ls96", + "aarch64": "linuxserver/heimdall:arm64v8-2.2.2-ls96", + "amd64": "linuxserver/heimdall:amd64-2.2.2-ls96" + }, + "squash": false, + "args": {} +} diff --git a/heimdall/config.json b/heimdall/config.json new file mode 100644 index 000000000..4664c1ea6 --- /dev/null +++ b/heimdall/config.json @@ -0,0 +1,45 @@ +{ + "name": "heimdall", + "version": "0.1.0", + "slug": "heimdall", + "legacy": false, + "maintenance": { + "github_release": "https://github.com/linuxserver/docker-heimdall", + "version_regex": "(\\d+\\.\\d+\\.\\d+)-(ls\\d+)" + }, + "description": "Application Dashboard", + "url": "https://github.com/petersendev/hassio-addons/heimdall", + "startup": "services", + "arch": [ + "aarch64", + "amd64", + "armhf" + ], + "ports": { + "80/tcp": 82, + "443/tcp": 8445 + }, + "ports_description": { + "80/tcp": "web interface", + "443/tcp": "web interface (SSL)" + }, + "map": [ + "config:rw", + "share:rw", + "ssl" + ], + "webui": "http://[HOST]:[PORT:82]", + "boot": "auto", + "options": { + "PUID": 1001, + "PGID": 1001 + }, + "schema": { + "PUID": "int", + "PGID": "int", + "TZ": "str?" + }, + "environment": { + }, + "image": "petersendev/hassio-heimdall-{arch}" +} diff --git a/heimdall/icon.png b/heimdall/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ed59a9ca23513ecf27cfbd8016edcf9fc70729d6 GIT binary patch literal 33408 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 U-0vBFA)a^k^m)a!Q&;Z%f6I&Eg8%>k literal 0 HcmV?d00001 diff --git a/heimdall/logo.png b/heimdall/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..ed59a9ca23513ecf27cfbd8016edcf9fc70729d6 GIT binary patch literal 33408 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 U-0vBFA)a^k^m)a!Q&;Z%f6I&Eg8%>k literal 0 HcmV?d00001 diff --git a/heimdall/root/etc/cont-init.d/00-ha-env b/heimdall/root/etc/cont-init.d/00-ha-env new file mode 100644 index 000000000..3b3e69246 --- /dev/null +++ b/heimdall/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/heimdall/root/etc/cont-init.d/20-folders b/heimdall/root/etc/cont-init.d/20-folders new file mode 100644 index 000000000..8b2bb6273 --- /dev/null +++ b/heimdall/root/etc/cont-init.d/20-folders @@ -0,0 +1,7 @@ +#!/usr/bin/with-contenv bash + +if [ ! -d /config/heimdall ]; then + echo "Creating /config/heimdall" + mkdir -p /config/heimdall + chown -R abc:abc /config/heimdall +fi