From c680dbcb064760eb867bbac89c599667caff0b38 Mon Sep 17 00:00:00 2001 From: Sam Maes Date: Tue, 23 Jul 2019 20:07:40 +0000 Subject: [PATCH 01/15] Add Home Assistant --- README.md | 1 + docs/applications/homeassistant.md | 12 ++++++++++++ docs/configuration/application_ports.md | 1 + group_vars/all.yml.dist | 10 +++++++++- nas.yml | 4 ++++ tasks/homeassistant.yml | 25 +++++++++++++++++++++++++ templates/traefik/traefik.toml | 1 + 7 files changed, 53 insertions(+), 1 deletion(-) create mode 100644 docs/applications/homeassistant.md create mode 100644 tasks/homeassistant.yml diff --git a/README.md b/README.md index cae3cf95..c510e1de 100644 --- a/README.md +++ b/README.md @@ -41,6 +41,7 @@ Ansible config and a bunch of Docker containers. * [Grafana](https://github.com/grafana/grafana) - Dashboarding tool * [Guacamole](https://guacamole.apache.org/) - Web based remote desktop gateway, supports VNC, RDP and SSH * [Heimdall](https://heimdall.site/) - Home server dashboard +* [Home Assistant](https://www.home-assistant.io) - Open source home automation * [InfluxDB](https://github.com/influxdata/influxdb) - Time series database used for stats collection * [Jackett](https://github.com/Jackett/Jackett) - API Support for your favorite torrent trackers * [MiniDlna](https://sourceforge.net/projects/minidlna/) - simple media server which is fully compliant with DLNA/UPnP-AV clients diff --git a/docs/applications/homeassistant.md b/docs/applications/homeassistant.md new file mode 100644 index 00000000..29983c2e --- /dev/null +++ b/docs/applications/homeassistant.md @@ -0,0 +1,12 @@ +# Home Assistant + +Homepage: [https://www.home-assistant.io/](https://www.home-assistant.io/) + + +## Usage + +Set `homeassistant_enabled: true` in your `group_vars/all.yml` file. + +If you want to access Home Assistant externally, don't forget to set `homeassistant_available_externally: "true"` in your `group_vars/all.yml` file. + +The Home Assistant web interface can be found at http://ansible_nas_host_or_ip:8123. diff --git a/docs/configuration/application_ports.md b/docs/configuration/application_ports.md index f0f8e848..78db7c61 100644 --- a/docs/configuration/application_ports.md +++ b/docs/configuration/application_ports.md @@ -18,6 +18,7 @@ By default, applications can be found on the ports listed below. | Grafana | 3000 | | | Guacamole | 8090 | | | Heimdall | 10080 | | +| Home Assistant | 8123 | | | Jackett | 9117 | | | MiniDLNA | 8201 | | | Miniflux | 8070 | | diff --git a/group_vars/all.yml.dist b/group_vars/all.yml.dist index 08a5dc04..83ac71e9 100644 --- a/group_vars/all.yml.dist +++ b/group_vars/all.yml.dist @@ -74,7 +74,8 @@ firefly_enabled: false # Wallabag wallabag_enabled: false -# MQTT +# Home Automation +homeassistant_enabled: true mosquitto_enabled: false ### @@ -568,7 +569,14 @@ nzbget_group_id: 0 wallabag_available_externally: "false" wallabag_data_directory: "{{ docker_home }}/wallabag" +### ### Mosquitto ### mosquitto_available_externally: "false" mosquitto_data_directory: "{{ docker_home }}/mosquitto" + +### +### Home Assistant +### +homeassistant_available_externally: "false" +homeassistant_data_directory: "{{ docker_home }}/homeassistant" diff --git a/nas.yml b/nas.yml index c351ca5e..0c6a0802 100644 --- a/nas.yml +++ b/nas.yml @@ -171,3 +171,7 @@ - import_tasks: tasks/mosquitto.yml when: (mosquitto_enabled | default(False)) tags: mosquitto + + - import_tasks: tasks/homeassistant.yml + when: (homeassistant_enabled | default(False)) + tags: homeassistant diff --git a/tasks/homeassistant.yml b/tasks/homeassistant.yml new file mode 100644 index 00000000..5b249991 --- /dev/null +++ b/tasks/homeassistant.yml @@ -0,0 +1,25 @@ +- name: Create Home Assistant Directories + file: + path: "{{ item }}" + state: directory + with_items: + - "{{ homeassistant_data_directory }}/config" + +- name: Home Assistant Docker Container + docker_container: + name: homeassistant + image: homeassistant/home-assistant + pull: true + volumes: + - "{{ homeassistant_data_directory }}/config:/config:rw" + ports: + - "8123:8123" + network_mode: "host" + restart_policy: unless-stopped + labels: + traefik.backend: "homeassistant" + traefik.frontend.rule: "Host:homeassistant.{{ ansible_nas_domain }}" + traefik.enable: "{{ homeassistant_available_externally }}" + traefik.port: "80" + traefik.frontend.headers.SSLRedirect: "true" + memory: 1g diff --git a/templates/traefik/traefik.toml b/templates/traefik/traefik.toml index c22832eb..d5c23712 100644 --- a/templates/traefik/traefik.toml +++ b/templates/traefik/traefik.toml @@ -190,6 +190,7 @@ onDemand = false # create certificate when container is created "grafana.{{ ansible_nas_domain }}", "guacamole.{{ ansible_nas_domain }}", "heimdall.{{ ansible_nas_domain }}", + "homeassistant.{{ ansible_nas_domain }}", "jackett.{{ ansible_nas_domain }}", "miniflux.{{ ansible_nas_domain }}", "netdata.{{ ansible_nas_domain }}", From daef412da0d7d41438a9ed1a61be8ba8dc00f24f Mon Sep 17 00:00:00 2001 From: Ryan Olf Date: Wed, 28 Aug 2019 22:13:18 -0700 Subject: [PATCH 02/15] traefik networking to host mode --- tasks/traefik.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/tasks/traefik.yml b/tasks/traefik.yml index f4a66c91..1b9d0d64 100644 --- a/tasks/traefik.yml +++ b/tasks/traefik.yml @@ -26,10 +26,7 @@ name: traefik image: "{{ traefik_docker_image }}" pull: true - ports: - - "80:80" - - "443:443" - - "8083:8083" + network_mode: host volumes: - "{{ traefik_data_directory }}/traefik.toml:/etc/traefik/traefik.toml:ro" - "/var/run/docker.sock:/var/run/docker.sock:ro" From 86fe360945ed502ef95717aef9a6b97659918547 Mon Sep 17 00:00:00 2001 From: Milan Jubitz Date: Sat, 31 Aug 2019 23:10:51 +0200 Subject: [PATCH 03/15] The code part of the changes, docs to follow --- group_vars/all.yml.dist | 14 ++++++++++++++ nas.yml | 4 ++++ tasks/calibre.yml | 29 +++++++++++++++++++++++++++++ templates/traefik/traefik.toml | 1 + 4 files changed, 48 insertions(+) create mode 100755 tasks/calibre.yml diff --git a/group_vars/all.yml.dist b/group_vars/all.yml.dist index 1a1ca01c..8c1b101d 100644 --- a/group_vars/all.yml.dist +++ b/group_vars/all.yml.dist @@ -77,6 +77,9 @@ wallabag_enabled: false # MQTT mosquitto_enabled: false +# Calibre +calibre_enabled: false + ### ### General ### @@ -571,7 +574,18 @@ nzbget_group_id: 0 wallabag_available_externally: "false" wallabag_data_directory: "{{ docker_home }}/wallabag" +### ### Mosquitto ### mosquitto_available_externally: "false" mosquitto_data_directory: "{{ docker_home }}/mosquitto" + +### +### Calibre +### +calibre_available_externally: "false" +calibre_data_directory: "{{ docker_home }}/calibre" +calibre_user_id: 0 +calibre_group_id: 0 +#To disable ebook conversion set calibre_ebook_conversion to "". To enable it set it to "linuxserver/calibre-web:calibre" +calibre_ebook_conversion: "linuxserver/calibre-web:calibre" \ No newline at end of file diff --git a/nas.yml b/nas.yml index c351ca5e..b570e5d5 100644 --- a/nas.yml +++ b/nas.yml @@ -171,3 +171,7 @@ - import_tasks: tasks/mosquitto.yml when: (mosquitto_enabled | default(False)) tags: mosquitto + + - import_tasks: tasks/calibre.yml + when: (calibre_enabled | default(False)) + tags: calibre \ No newline at end of file diff --git a/tasks/calibre.yml b/tasks/calibre.yml new file mode 100755 index 00000000..60908903 --- /dev/null +++ b/tasks/calibre.yml @@ -0,0 +1,29 @@ +- name: Create Calibre Directories + file: + path: "{{ item }}" + state: directory + with_items: + - "{{ calibre_data_directory }}/config" + - "{{ calibre_data_directory }}/books" +- name: Calibre Docker Container + docker_container: + name: calibre + image: linuxserver/calibre-web:latest + pull: true + volumes: + - "{{ calibre_data_directory }}/config:/config" + - "{{ calibre_data_directory }}/books:/books" + env: + TZ: "{{ ansible_nas_timezone }}" + PUID: "{{ calibre_user_id }}" + PGID: "{{ calibre_group_id }}" + DOCKER_MODS: "{{ calibre_ebook_conversion }}" + ports: + - "8084:8083" + restart_policy: unless-stopped + labels: + traefik.backend: "calibre" + traefik.frontend.rule: "Host:calibre.{{ ansible_nas_domain }}" + traefik.enable: "{{ calibre_available_externally }}" + traefik.port: "8083" + memory: 1g \ No newline at end of file diff --git a/templates/traefik/traefik.toml b/templates/traefik/traefik.toml index c22832eb..a099df99 100644 --- a/templates/traefik/traefik.toml +++ b/templates/traefik/traefik.toml @@ -181,6 +181,7 @@ onDemand = false # create certificate when container is created # we request a certificate for everything, because why not. sans = ["airsonic.{{ ansible_nas_domain }}", "bitwarden.{{ ansible_nas_domain }}", + "calibre.{{ ansible_nas_domain }}", "couchpotato.{{ ansible_nas_domain }}", "duplicati.{{ ansible_nas_domain }}", "emby.{{ ansible_nas_domain }}", From 58a2ea639988c0a44d046d604784c0d120b4a46a Mon Sep 17 00:00:00 2001 From: Milan Jubitz Date: Sun, 1 Sep 2019 11:03:23 +0200 Subject: [PATCH 04/15] Calibre-web Docs --- README.md | 2 ++ docs/applications/calibre.md | 20 ++++++++++++++++++++ docs/configuration/application_ports.md | 1 + 3 files changed, 23 insertions(+) create mode 100644 docs/applications/calibre.md diff --git a/README.md b/README.md index d2d21568..3181ae72 100644 --- a/README.md +++ b/README.md @@ -25,11 +25,13 @@ Ansible config and a bunch of Docker containers. * A Docker host with Portainer for image and container management * An automatic dynamic DNS updater if you use Cloudflare to host your domain DNS * A Personal finance manager +* eBook management with calibre-web ### Docker Containers Used * [Airsonic](https://airsonic.github.io/) - catalog and stream music * [Bitwarden_rs](https://github.com/dani-garcia/bitwarden_rs) - Self-Hosting port of password manager +* [Calibre](https://hub.docker.com/r/linuxserver/calibre-web) - eBook Library * [Cloudflare DDNS](https://hub.docker.com/r/joshuaavalon/cloudflare-ddns/) - automatically update Cloudflare with your IP address * [CouchPotato](https://couchpota.to/) - for downloading and managing movies * [Duplicati](https://www.duplicati.com/) - for backing up your stuff diff --git a/docs/applications/calibre.md b/docs/applications/calibre.md new file mode 100644 index 00000000..3d55f9aa --- /dev/null +++ b/docs/applications/calibre.md @@ -0,0 +1,20 @@ +# Calibre(-web) eBook Library + +Homepage: [https://github.com/janeczku/calibre-web](https://github.com/linuxserver/docker-calibre-web) + + +Calibre-Web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing Calibre database. + +## Usage + +Set `calibre_enabled: true` in your `group_vars/all.yml` file. + +## Specific Configuration + +If you do not need eBook conversion you can disable it to save resources by setting the `calibre_ebook_conversion` variable in `group_vars/all.yml` file to be empty: +Conversion enabled: +`calibre_ebook_conversion: "linuxserver/calibre-web:calibre"` +Conversion disabled: +`calibre_ebook_conversion: ""` + +You can target just Calibre by appending `-t calibre` to your `ansible-playbook` command. \ No newline at end of file diff --git a/docs/configuration/application_ports.md b/docs/configuration/application_ports.md index f0f8e848..a03a9978 100644 --- a/docs/configuration/application_ports.md +++ b/docs/configuration/application_ports.md @@ -7,6 +7,7 @@ By default, applications can be found on the ports listed below. | Couchpotato | 5050 | | | Bitwarden "hub" | 3012 | Web Not. | | Bitwarden | 19080 | HTTP | +| Calibre | 8084 | HTTP | | Duplicati | 8200 | | | Emby | 8096 | HTTP | | Emby | 8920 | HTTPS | From 345fdbdc02b1990312e35fd71caceb9b3e8d8fe3 Mon Sep 17 00:00:00 2001 From: Milan Jubitz Date: Sun, 1 Sep 2019 11:24:59 +0200 Subject: [PATCH 05/15] Changed location where books are saved to a samba share --- group_vars/all.yml.dist | 11 +++++++++++ tasks/calibre.yml | 3 +-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/group_vars/all.yml.dist b/group_vars/all.yml.dist index 8c1b101d..b42cdbaf 100644 --- a/group_vars/all.yml.dist +++ b/group_vars/all.yml.dist @@ -140,6 +140,9 @@ music_root: "{{ samba_shares_root }}/music" # Where podcasts are stored podcasts_root: "{{ samba_shares_root }}/podcasts" +# Where your books are stored +books_root: "{{ samba_shares_root }}/books" + # The description that'll appear next to your Ansible-NAS box when browsing your network samba_server_string: Ansible NAS @@ -209,6 +212,14 @@ samba_shares: browsable: yes path: "{{ samba_shares_root }}/photos" + - name: books + comment: 'Books' + guest_ok: yes + public: yes + writable: yes + browsable: yes + path: "{{ samba_shares_root }}/books" + ### ### NFS ### diff --git a/tasks/calibre.yml b/tasks/calibre.yml index 60908903..eaa854b0 100755 --- a/tasks/calibre.yml +++ b/tasks/calibre.yml @@ -4,7 +4,6 @@ state: directory with_items: - "{{ calibre_data_directory }}/config" - - "{{ calibre_data_directory }}/books" - name: Calibre Docker Container docker_container: name: calibre @@ -12,7 +11,7 @@ pull: true volumes: - "{{ calibre_data_directory }}/config:/config" - - "{{ calibre_data_directory }}/books:/books" + - "{{ samba_shares_root }}/books:/books" env: TZ: "{{ ansible_nas_timezone }}" PUID: "{{ calibre_user_id }}" From e70d3216235acb008a3b11c9d1b939aab600b48a Mon Sep 17 00:00:00 2001 From: Koen Vervloesem Date: Tue, 17 Sep 2019 08:37:41 +0200 Subject: [PATCH 06/15] Prevent pulling in Traefik 2.0 with another configuration file format. --- group_vars/all.yml.dist | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/group_vars/all.yml.dist b/group_vars/all.yml.dist index 1a1ca01c..cb24bea1 100644 --- a/group_vars/all.yml.dist +++ b/group_vars/all.yml.dist @@ -274,7 +274,7 @@ samba_netbios_name: "{{ ansible_nas_hostname }}" ### ### Traefik ### -traefik_docker_image: traefik:latest +traefik_docker_image: traefik:v1.7 traefik_data_directory: "{{ docker_home }}/traefik" traefik_debug: "false" From dd83170eae3d7c9ccd5fcef4013e2251d5b4dea9 Mon Sep 17 00:00:00 2001 From: Koen Vervloesem Date: Tue, 17 Sep 2019 08:40:16 +0200 Subject: [PATCH 07/15] Fix typo in Ansible rule name for Traefik --- tasks/traefik.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks/traefik.yml b/tasks/traefik.yml index f4a66c91..498d2705 100644 --- a/tasks/traefik.yml +++ b/tasks/traefik.yml @@ -9,7 +9,7 @@ name: letsencrypt-nginx-proxy-companion state: absent -- name: Create Trafik Directories +- name: Create Traefik Directories file: path: "{{ item }}" state: directory From e1ddd28d0dc90b2d98a7ca5fd25c38ac7a8fb648 Mon Sep 17 00:00:00 2001 From: Shaun Steenkamp Date: Thu, 3 Oct 2019 10:43:34 +0100 Subject: [PATCH 08/15] =?UTF-8?q?"Permission=20share=20dir=E2=80=A6s"=20fi?= =?UTF-8?q?le:=20state:=20directory?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tasks/general.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/tasks/general.yml b/tasks/general.yml index 7affee87..7ad21cef 100644 --- a/tasks/general.yml +++ b/tasks/general.yml @@ -47,6 +47,7 @@ - name: "Permission share directories" file: path: "{{ item.path }}" + state: directory owner: ansible-nas group: ansible-nas mode: "u=rwX,g=rwX,o=rX" From b517558b2e75cffb9974fb55f6419de4fb18521f Mon Sep 17 00:00:00 2001 From: David Stephens Date: Sun, 13 Oct 2019 22:29:55 +0100 Subject: [PATCH 09/15] Tweak Calibre docs --- docs/applications/calibre.md | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/docs/applications/calibre.md b/docs/applications/calibre.md index 3d55f9aa..07968bac 100644 --- a/docs/applications/calibre.md +++ b/docs/applications/calibre.md @@ -11,10 +11,16 @@ Set `calibre_enabled: true` in your `group_vars/all.yml` file. ## Specific Configuration -If you do not need eBook conversion you can disable it to save resources by setting the `calibre_ebook_conversion` variable in `group_vars/all.yml` file to be empty: -Conversion enabled: -`calibre_ebook_conversion: "linuxserver/calibre-web:calibre"` -Conversion disabled: -`calibre_ebook_conversion: ""` +### Admin login -You can target just Calibre by appending `-t calibre` to your `ansible-playbook` command. \ No newline at end of file +**Default admin login:** Username: admin Password: admin123 + +### eBook Conversion + +If you do not need eBook conversion you can disable it to save resources by setting the `calibre_ebook_conversion` variable in `group_vars/all.yml` file to be empty. + + - Conversion enabled: `calibre_ebook_conversion: "linuxserver/calibre-web:calibre"` + + - Conversion disabled: `calibre_ebook_conversion: ""` + +You can target just Calibre by appending `-t calibre` to your `ansible-playbook` command. From 4a280e9480be102ed2fbca48a0bd3424a5777997 Mon Sep 17 00:00:00 2001 From: David Stephens Date: Sun, 13 Oct 2019 22:32:17 +0100 Subject: [PATCH 10/15] Fix calibre environment variables for latest ansible version --- group_vars/all.yml.dist | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/group_vars/all.yml.dist b/group_vars/all.yml.dist index 50a84bc6..b891cc31 100644 --- a/group_vars/all.yml.dist +++ b/group_vars/all.yml.dist @@ -596,7 +596,7 @@ mosquitto_data_directory: "{{ docker_home }}/mosquitto" ### calibre_available_externally: "false" calibre_data_directory: "{{ docker_home }}/calibre" -calibre_user_id: 0 -calibre_group_id: 0 -#To disable ebook conversion set calibre_ebook_conversion to "". To enable it set it to "linuxserver/calibre-web:calibre" +calibre_user_id: "0" +calibre_group_id: "0" +# To disable ebook conversion set calibre_ebook_conversion to "". To enable it set it to "linuxserver/calibre-web:calibre" calibre_ebook_conversion: "linuxserver/calibre-web:calibre" \ No newline at end of file From d2bef695d93488b4e39637fc78f592dfefa092cd Mon Sep 17 00:00:00 2001 From: David Stephens Date: Sun, 13 Oct 2019 22:33:25 +0100 Subject: [PATCH 11/15] Use books_root in calibre.yml --- tasks/calibre.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tasks/calibre.yml b/tasks/calibre.yml index eaa854b0..f42e0dc1 100755 --- a/tasks/calibre.yml +++ b/tasks/calibre.yml @@ -4,6 +4,7 @@ state: directory with_items: - "{{ calibre_data_directory }}/config" + - name: Calibre Docker Container docker_container: name: calibre @@ -11,7 +12,7 @@ pull: true volumes: - "{{ calibre_data_directory }}/config:/config" - - "{{ samba_shares_root }}/books:/books" + - "{{ books_root }}:/books" env: TZ: "{{ ansible_nas_timezone }}" PUID: "{{ calibre_user_id }}" From e6375411febb44ed8c55ecc4c2d778a1f61fd197 Mon Sep 17 00:00:00 2001 From: David Stephens Date: Sun, 13 Oct 2019 23:10:54 +0100 Subject: [PATCH 12/15] Fix Home Assistant traefik port --- tasks/homeassistant.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks/homeassistant.yml b/tasks/homeassistant.yml index 5b249991..b557feaf 100644 --- a/tasks/homeassistant.yml +++ b/tasks/homeassistant.yml @@ -20,6 +20,6 @@ traefik.backend: "homeassistant" traefik.frontend.rule: "Host:homeassistant.{{ ansible_nas_domain }}" traefik.enable: "{{ homeassistant_available_externally }}" - traefik.port: "80" + traefik.port: "8123" traefik.frontend.headers.SSLRedirect: "true" memory: 1g From c159e37279cc8c40f4a331b3e1c2e56dbb3f6963 Mon Sep 17 00:00:00 2001 From: David Stephens Date: Sun, 13 Oct 2019 23:23:37 +0100 Subject: [PATCH 13/15] home assistant - Added timezone and removed docker host mode networking --- tasks/homeassistant.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tasks/homeassistant.yml b/tasks/homeassistant.yml index b557feaf..3b615e3d 100644 --- a/tasks/homeassistant.yml +++ b/tasks/homeassistant.yml @@ -14,8 +14,9 @@ - "{{ homeassistant_data_directory }}/config:/config:rw" ports: - "8123:8123" - network_mode: "host" restart_policy: unless-stopped + env: + TZ: "{{ ansible_nas_timezone }}" labels: traefik.backend: "homeassistant" traefik.frontend.rule: "Host:homeassistant.{{ ansible_nas_domain }}" From 331f0e2e83998fa408948a485b577ef3219c2c61 Mon Sep 17 00:00:00 2001 From: David Stephens Date: Sun, 13 Oct 2019 23:31:55 +0100 Subject: [PATCH 14/15] Fix linting issues --- nas.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nas.yml b/nas.yml index 934dd074..8a615e8f 100644 --- a/nas.yml +++ b/nas.yml @@ -175,7 +175,7 @@ - import_tasks: tasks/calibre.yml when: (calibre_enabled | default(False)) tags: calibre - + - import_tasks: tasks/homeassistant.yml when: (homeassistant_enabled | default(False)) tags: homeassistant From 0c548e8e69dd2fda7b41113948446dcbd30af90d Mon Sep 17 00:00:00 2001 From: David Stephens Date: Sun, 13 Oct 2019 23:32:57 +0100 Subject: [PATCH 15/15] Disable homeassistant by default --- group_vars/all.yml.dist | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/group_vars/all.yml.dist b/group_vars/all.yml.dist index 857774df..76ce41b6 100644 --- a/group_vars/all.yml.dist +++ b/group_vars/all.yml.dist @@ -75,7 +75,7 @@ firefly_enabled: false wallabag_enabled: false # Home Automation -homeassistant_enabled: true +homeassistant_enabled: false mosquitto_enabled: false # Calibre