diff --git a/apps/homeassistant-1/config.json b/apps/homeassistant-1/config.json new file mode 100644 index 00000000..93fe43e5 --- /dev/null +++ b/apps/homeassistant-1/config.json @@ -0,0 +1,22 @@ +{ + "$schema": "../schema.json", + "name": "Home Assistant", + "port": 8209, + "available": true, + "exposable": true, + "id": "homeassistant-1", + "tipi_version": 1, + "version": "2024.2.1", + "categories": [ + "automation" + ], + "description": "Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server.", + "short_desc": "Open source home automation that puts local control and privacy first", + "author": "Home Assistant", + "source": "https://github.com/home-assistant/core", + "form_fields": [], + "supported_architectures": [ + "arm64", + "amd64" + ] +} \ No newline at end of file diff --git a/apps/homeassistant-1/data/config/automations.yaml b/apps/homeassistant-1/data/config/automations.yaml new file mode 100644 index 00000000..0637a088 --- /dev/null +++ b/apps/homeassistant-1/data/config/automations.yaml @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/apps/homeassistant-1/data/config/configuration.yaml b/apps/homeassistant-1/data/config/configuration.yaml new file mode 100644 index 00000000..304fe25d --- /dev/null +++ b/apps/homeassistant-1/data/config/configuration.yaml @@ -0,0 +1,17 @@ +# Loads default set of integrations. Do not remove. +default_config: + +# Load frontend themes from the themes folder +frontend: + themes: !include_dir_merge_named themes + +automation: !include automations.yaml +script: !include scripts.yaml +scene: !include scenes.yaml + +http: + use_x_forwarded_for: true + trusted_proxies: + - 127.0.0.1 + - 172.16.0.0/12 + - ::1 diff --git a/apps/homeassistant-1/data/config/scenes.yaml b/apps/homeassistant-1/data/config/scenes.yaml new file mode 100644 index 00000000..e69de29b diff --git a/apps/homeassistant-1/data/config/scripts.yaml b/apps/homeassistant-1/data/config/scripts.yaml new file mode 100644 index 00000000..e69de29b diff --git a/apps/homeassistant-1/docker-compose.yml b/apps/homeassistant-1/docker-compose.yml new file mode 100644 index 00000000..3424ebe5 --- /dev/null +++ b/apps/homeassistant-1/docker-compose.yml @@ -0,0 +1,41 @@ +version: '3' + +services: + homeassistant-1: + image: ghcr.io/home-assistant/home-assistant:2024.2.1 + container_name: homeassistant-1 + environment: + - TZ=${TZ} + restart: unless-stopped + ports: + - ${APP_PORT}:8123 + volumes: + - /etc/localtime:/etc/localtime:ro + - ${APP_DATA_DIR}/data/config:/config + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.homeassistant-web-redirect.redirectscheme.scheme: https + traefik.http.services.homeassistant.loadbalancer.server.port: 8123 + # Web + traefik.http.routers.homeassistant-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.homeassistant-insecure.entrypoints: web + traefik.http.routers.homeassistant-insecure.service: homeassistant + traefik.http.routers.homeassistant-insecure.middlewares: homeassistant-web-redirect + # Websecure + traefik.http.routers.homeassistant.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.homeassistant.entrypoints: websecure + traefik.http.routers.homeassistant.service: homeassistant + traefik.http.routers.homeassistant.tls.certresolver: myresolver + # Local domain + traefik.http.routers.homeassistant-local-insecure.rule: Host(`homeassistant.${LOCAL_DOMAIN}`) + traefik.http.routers.homeassistant-local-insecure.entrypoints: web + traefik.http.routers.homeassistant-local-insecure.service: homeassistant + traefik.http.routers.homeassistant-local-insecure.middlewares: homeassistant-web-redirect + # Local domain secure + traefik.http.routers.homeassistant-local.rule: Host(`homeassistant.${LOCAL_DOMAIN}`) + traefik.http.routers.homeassistant-local.entrypoints: websecure + traefik.http.routers.homeassistant-local.service: homeassistant + traefik.http.routers.homeassistant-local.tls: true \ No newline at end of file diff --git a/apps/homeassistant-1/metadata/description.md b/apps/homeassistant-1/metadata/description.md new file mode 100644 index 00000000..62d6b043 --- /dev/null +++ b/apps/homeassistant-1/metadata/description.md @@ -0,0 +1,32 @@ +# Home Assistant + +Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server. + +Check out [home-assistant.io](https://home-assistant.io) for a [demo](https://home-assistant.io/demo/), installation [instructions](https://home-assistant.io/getting-started/), [tutorials](https://home-assistant.io/getting-started/automation/) and [documentation](https://home-assistant.io/docs/) + +## Migration + +February 2024 + +This version of Home Assistant can be exposed. To migrate from the non-exposable app, follow these steps: + +- stop the installed app +- rename `runtipi/app-data/homeassistant` to `runtipi/app-data/__homeassistant` +- uninstall the app +- install Home Assistant from the App Store +- stop the app +- remove `runtipi/app-data/homeassistant-1` +- rename `runtipi/app-data/__homeassistant` to `runtipi/app-data/homeassistant-1` +- add the following section to `runtipi/app-data/homeassistant/data/config/configuration.yaml` + ``` + http: + use_x_forwarded_for: true + trusted_proxies: + - 127.0.0.1 + - 172.16.0.0/12 + - ::1 + ``` +- change `APP_ID=homeassistant` to `APP_ID=homeassistant-1` in `runtipi/app-data/homeassistant/app.env` +- change `APP_PORT=8123` to `APP_PORT=8209` in `runtipi/app-data/homeassistant/app.env` +- change `APP_DATA_DIR={{ROOT_FOLDER_HOST}}/app-data/homeassistant` to `APP_DATA_DIR={{ROOT_FOLDER_HOST}}/app-data/homeassistant-1` in `runtipi/app-data/homeassistant/app.env` +- start the app \ No newline at end of file diff --git a/apps/homeassistant-1/metadata/logo.jpg b/apps/homeassistant-1/metadata/logo.jpg new file mode 100644 index 00000000..f090130e Binary files /dev/null and b/apps/homeassistant-1/metadata/logo.jpg differ diff --git a/apps/homeassistant/config.json b/apps/homeassistant/config.json index 5e6f0169..0364386b 100644 --- a/apps/homeassistant/config.json +++ b/apps/homeassistant/config.json @@ -1,16 +1,22 @@ { "$schema": "../schema.json", - "name": "Home Assistant", + "name": "Home Assistant non exposed", "available": true, + "deprecated": true, "port": 8123, - "tipi_version": 2, + "tipi_version": 3, "version": "stable", "id": "homeassistant", - "categories": ["automation"], + "categories": [ + "automation" + ], "description": "Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server.", "short_desc": "Open source home automation that puts local control and privacy first", "author": "ArneNaessens", "source": "https://github.com/home-assistant/core", "form_fields": [], - "supported_architectures": ["arm64", "amd64"] -} + "supported_architectures": [ + "arm64", + "amd64" + ] +} \ No newline at end of file diff --git a/apps/homeassistant/metadata/description.md b/apps/homeassistant/metadata/description.md index b7b2a420..34d1a78a 100644 --- a/apps/homeassistant/metadata/description.md +++ b/apps/homeassistant/metadata/description.md @@ -4,4 +4,31 @@ Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server. Check out [home-assistant.io](https://home-assistant.io) for a [demo](https://home-assistant.io/demo/), installation [instructions](https://home-assistant.io/getting-started/), [tutorials](https://home-assistant.io/getting-started/automation/) and [documentation](https://home-assistant.io/docs/) -![Screenshot](https://raw.githubusercontent.com/home-assistant/core/master/docs/screenshots.png) \ No newline at end of file +![Screenshot](https://raw.githubusercontent.com/home-assistant/core/master/docs/screenshots.png) + +## Migration + +February 2024 + +This version of Home Assistant can not be exposed. To migrate to the exposable app, follow these steps: + +- stop the installed app +- rename `runtipi/app-data/homeassistant` to `runtipi/app-data/__homeassistant` +- uninstall the app +- install Home Assistant from the App Store +- stop the app +- remove `runtipi/app-data/homeassistant-1` +- rename `runtipi/app-data/__homeassistant` to `runtipi/app-data/homeassistant-1` +- add the following section to `runtipi/app-data/homeassistant/data/config/configuration.yaml` + ``` + http: + use_x_forwarded_for: true + trusted_proxies: + - 127.0.0.1 + - 172.16.0.0/12 + - ::1 + ``` +- change `APP_ID=homeassistant` to `APP_ID=homeassistant-1` in `runtipi/app-data/homeassistant/app.env` +- change `APP_PORT=8123` to `APP_PORT=8209` in `runtipi/app-data/homeassistant/app.env` +- change `APP_DATA_DIR={{ROOT_FOLDER_HOST}}/app-data/homeassistant` to `APP_DATA_DIR={{ROOT_FOLDER_HOST}}/app-data/homeassistant-1` in `runtipi/app-data/homeassistant/app.env` +- start the app \ No newline at end of file