feat: remove OwnTracks

Remove OwnTracks including Home Assistant integration.
I've replaced OwnTracks with Home Assistant Companion App & Zood
which are sufficient for my use cases.
This commit is contained in:
Felix Schröter 2022-12-29 20:16:11 +01:00
parent 5221775599
commit 4b3096f05b
Signed by: felschr
GPG key ID: 671E39E6744C807D
10 changed files with 11 additions and 136 deletions

View file

@ -62,7 +62,6 @@ in {
database_path = "/var/lib/hass/zigbee.db";
zigpy_config = { ota = { ikea_provider = true; }; };
};
owntracks = { mqtt_topic = "owntracks/#"; };
alarm_control_panel = [{
platform = "manual";
code = "!secret alarm_code";

View file

@ -16,7 +16,6 @@ in {
mqtt-birgit = mkSecret ../secrets/mqtt/birgit.age;
mqtt-hass = mkSecret ../secrets/mqtt/hass.age;
mqtt-tasmota = mkSecret ../secrets/mqtt/tasmota.age;
mqtt-owntracks = mkSecret ../secrets/mqtt/owntracks.age;
};
services.nginx = {
@ -34,42 +33,18 @@ in {
services.mosquitto = {
enable = true;
listeners = [
{
port = port;
users = {
"hass" = {
acl = [
"readwrite homeassistant/#"
"readwrite tasmota/#"
"readwrite owntracks/#"
];
hashedPasswordFile = config.age.secrets.mqtt-hass.path;
};
"tasmota" = {
acl = [ "readwrite tasmota/#" "readwrite homeassistant/#" ];
hashedPasswordFile = config.age.secrets.mqtt-tasmota.path;
};
"owntracks" = {
acl = [ "readwrite owntracks/#" ];
hashedPasswordFile = config.age.secrets.mqtt-owntracks.path;
};
listeners = [{
port = port;
users = {
"hass" = {
acl = [ "readwrite homeassistant/#" "readwrite tasmota/#" ];
hashedPasswordFile = config.age.secrets.mqtt-hass.path;
};
}
{
port = wsPort;
settings.protocol = "websockets";
users = {
"felix" = {
acl = [ "read owntracks/#" "readwrite owntracks/felix/#" ];
hashedPasswordFile = config.age.secrets.mqtt-felix.path;
};
"birgit" = {
acl = [ "read owntracks/#" "readwrite owntracks/birgit/#" ];
hashedPasswordFile = config.age.secrets.mqtt-birgit.path;
};
"tasmota" = {
acl = [ "readwrite tasmota/#" "readwrite homeassistant/#" ];
hashedPasswordFile = config.age.secrets.mqtt-tasmota.path;
};
}
];
};
}];
};
}

View file

@ -1,55 +0,0 @@
{ config, pkgs, ... }:
let
frontend-config = builtins.toFile "owntracks-frontend-config.js" ''
window.owntracks = window.owntracks || {};
window.owntracks.config = {};
'';
in {
age.secrets.owntracks-recorder-env.file =
../secrets/owntracks/recorder.env.age;
age.secrets.owntracks-htpasswd = {
file = ../secrets/owntracks/htpasswd.age;
owner = config.services.nginx.user;
};
virtualisation.oci-containers.containers = {
owntracks-recorder = {
image = "owntracks/recorder";
ports = [ "8083:8083" ];
environment = {
OTR_HOST = "localhost";
OTR_PORT = "1883";
OTR_USER = "owntracks";
};
# provide OTR_PASS
environmentFiles = [ config.age.secrets.owntracks-recorder-env.path ];
volumes = [ "/var/lib/owntracks/recorder/store:/store" ];
extraOptions = [ "--network=host" ];
};
owntracks-frontend = {
image = "owntracks/frontend";
ports = [ "8085:8085" ];
environment = {
SERVER_HOST = "localhost";
SERVER_PORT = "8083";
LISTEN_PORT = "8085";
};
volumes = [ "${frontend-config}:/usr/share/nginx/html/config/config.js" ];
extraOptions = [ "--network=host" ];
};
};
services = {
nginx = {
virtualHosts."owntracks.felschr.com" = {
enableACME = true;
forceSSL = true;
locations."/".proxyPass = "http://localhost:8085";
basicAuthFile = config.age.secrets.owntracks-htpasswd.path;
};
};
};
}