diff --git a/flake.lock b/flake.lock index 607175e..36c0139 100644 --- a/flake.lock +++ b/flake.lock @@ -1210,11 +1210,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-Hripi5dnBGegbRPwCt1+a3oH6b1AQxEoJXodiLE8KKw=", - "path": "/nix/store/5w3n8ay7qj645wm9j0ibmi4xpllbf1kx-source/home-manager", + "path": "/nix/store/n40rh79zxzb143bjilqidmm3zgzi42jp-source/home-manager", "type": "path" }, "original": { - "path": "/nix/store/5w3n8ay7qj645wm9j0ibmi4xpllbf1kx-source/home-manager", + "path": "/nix/store/n40rh79zxzb143bjilqidmm3zgzi42jp-source/home-manager", "type": "path" } }, @@ -1766,11 +1766,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-QahOuoQdXshu38W5uO7hLhG/yFkT7S2l8Dxicq0wdGk=", - "path": "/nix/store/w3vx9j80bpmgjjx4sknyba72387a2146-source/programs", + "path": "/nix/store/6mqc828sjpxs6dij407simg5fv7dk9zl-source/programs", "type": "path" }, "original": { - "path": "/nix/store/w3vx9j80bpmgjjx4sknyba72387a2146-source/programs", + "path": "/nix/store/6mqc828sjpxs6dij407simg5fv7dk9zl-source/programs", "type": "path" } }, @@ -1838,11 +1838,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-0Ztx5DVQ2I7hvCK/qjGa4XTdRgbzM8rhf19m0al8lVM=", - "path": "/nix/store/w3vx9j80bpmgjjx4sknyba72387a2146-source/services/sddm", + "path": "/nix/store/6mqc828sjpxs6dij407simg5fv7dk9zl-source/services/sddm", "type": "path" }, "original": { - "path": "/nix/store/w3vx9j80bpmgjjx4sknyba72387a2146-source/services/sddm", + "path": "/nix/store/6mqc828sjpxs6dij407simg5fv7dk9zl-source/services/sddm", "type": "path" } }, @@ -1873,12 +1873,12 @@ }, "locked": { "lastModified": 1, - "narHash": "sha256-+VR7Gqp5tzuLE71QLlWlot1/iEKo0GbpOuo33XL9yPA=", - "path": "/nix/store/5w3n8ay7qj645wm9j0ibmi4xpllbf1kx-source/system-config", + "narHash": "sha256-QvVqbEr5sjrmPnaos2botJoathX8s9jOCx98+cLbOpM=", + "path": "/nix/store/n40rh79zxzb143bjilqidmm3zgzi42jp-source/system-config", "type": "path" }, "original": { - "path": "/nix/store/5w3n8ay7qj645wm9j0ibmi4xpllbf1kx-source/system-config", + "path": "/nix/store/n40rh79zxzb143bjilqidmm3zgzi42jp-source/system-config", "type": "path" } }, diff --git a/system-config/configuration/homebox/default.nix b/system-config/configuration/homebox/default.nix index fb91f24..936eb0e 100644 --- a/system-config/configuration/homebox/default.nix +++ b/system-config/configuration/homebox/default.nix @@ -91,7 +91,7 @@ nameservers = [ "1.1.1.1" "1.0.0.1" ]; networkmanager.enable = true; firewall.allowedTCPPorts = [ 22 80 443 ]; - firewall.interfaces."ve-traefik".allowedTCPPorts = [ 9000 8080 6080 ]; + firewall.interfaces."ve-traefik".allowedTCPPorts = [ 9000 8080 6080 8123 ]; hosts = { "192.168.100.11" = [ "blunkall.us" "*.blunkall.us" "*.local.blunkall.us" ]; }; @@ -239,6 +239,10 @@ git.enable = true; nh.enable = true; + + ollama.enable = true; + + homeassistant.enable = true; steam.enable = false; @@ -257,6 +261,7 @@ nextcloud.enable = true; gitlab.enable = true; + }; }; }; diff --git a/system-config/services/containers/traefik/default.nix b/system-config/services/containers/traefik/default.nix index 9701312..8d62c61 100644 --- a/system-config/services/containers/traefik/default.nix +++ b/system-config/services/containers/traefik/default.nix @@ -124,7 +124,7 @@ dynamicConfigOptions = { http = { routers = { - homepageSecure = { + homepageSecure = { entryPoints = [ "localsecure" "websecure" ]; rule = "Host(`blunkall.us`) || Host(`www.blunkall.us`)"; service = "homepage"; @@ -146,6 +146,12 @@ middlewares = [ "authentik" ]; tls.certResolver = "cloudflare"; }; + homeassistant = { + entryPoints = [ "localsecure" "websecure" ]; + rule = "Host(`hass.blunkall.us`)"; + service = "homepage"; + tls.certResolver = "cloudflare"; + }; jellyfin = { entryPoints = [ "localsecure" "websecure" ]; rule = "Host(`jellyfin.blunkall.us`)"; @@ -178,18 +184,19 @@ }; traefik = { - entryPoints = [ "localsecure" ]; - rule = "Host(`traefik.local.blunkall.us`)"; + entryPoints = [ "localsecure" "websecure" ]; + rule = "Host(`traefik.blunkall.us`)"; service = "api@internal"; tls.certResolver = "cloudflare"; + middlewares = [ "authentik" ]; }; - pihole = { + /*pihole = { entryPoints = [ "localsecure" ]; - rule = "Host(`pihole.local.blunkall.us`)"; + rule = "Host(`pihole.blunkall.us`)"; service = "pihole"; tls.certResolver = "cloudflare"; - }; + };*/ }; middlewares = { diff --git a/system-config/services/default.nix b/system-config/services/default.nix index e260988..ea9fe71 100644 --- a/system-config/services/default.nix +++ b/system-config/services/default.nix @@ -5,5 +5,6 @@ ./openssh ./pipewire ./containers + ./homeassistant ]; } diff --git a/system-config/services/homeassistant/default.nix b/system-config/services/homeassistant/default.nix new file mode 100644 index 0000000..1ca9436 --- /dev/null +++ b/system-config/services/homeassistant/default.nix @@ -0,0 +1,27 @@ +{ config, lib, ... }: { + + options.sysconfig.opts.homeassistant.enable = lib.mkOption { + type = lib.types.bool; + default = false; + }; + + config = lib.mkIf config.sysconfig.opts.homeassistant.enable { + services.home-assistant = { + + enable = true; + configDir = "/ssd1/Home-Assistant/data"; + + extraComponents = [ + "esphome" + "met" + "radio_browser" + ]; + + config = { + + default_config = {}; + + }; + }; + }; +}