This commit is contained in:
mjallen18
2026-03-31 14:23:32 -05:00
parent a125017c93
commit c1efceef55
2 changed files with 284 additions and 282 deletions

134
flake.lock generated
View File

@@ -134,16 +134,16 @@
"brew-src": {
"flake": false,
"locked": {
"lastModified": 1769363988,
"narHash": "sha256-BiGPeulrDVetXP+tjxhMcGLUROZAtZIhU5m4MqawCfM=",
"lastModified": 1774235677,
"narHash": "sha256-0ryNYmzDAeRlrzPTAgmzGH/Cgc8iv/LBN6jWGUANvIk=",
"owner": "Homebrew",
"repo": "brew",
"rev": "d01011cac6d72032c75fd2cd9489909e95d9faf2",
"rev": "894a3d23ac0c8aaf561b9874b528b9cb2e839201",
"type": "github"
},
"original": {
"owner": "Homebrew",
"ref": "5.0.12",
"ref": "5.1.1",
"repo": "brew",
"type": "github"
}
@@ -151,11 +151,11 @@
"cachyos-kernel": {
"flake": false,
"locked": {
"lastModified": 1774160598,
"narHash": "sha256-ArPoVPHpXauFDGsz7nGBiXljj7keGcp/O4Pf4ZU4/30=",
"lastModified": 1774853038,
"narHash": "sha256-zMoAFZOALxk3/GhWYOPYRDOPi4WS/dC/2kAG3aoD/u4=",
"owner": "CachyOS",
"repo": "linux-cachyos",
"rev": "1caa0b77871d4537f0d629a2ce30edb2f6178d19",
"rev": "a82bb448f8aac6bb29dd417bffe062259bbf8f88",
"type": "github"
},
"original": {
@@ -167,11 +167,11 @@
"cachyos-kernel-patches": {
"flake": false,
"locked": {
"lastModified": 1774023710,
"narHash": "sha256-Oc+4K6edCv0fdvfe6UW+OpJiXYWkXRrOH9TDMNwi+J8=",
"lastModified": 1774500343,
"narHash": "sha256-8sCdFTHJF0ZES8/Qa6DVbMAzZ1PLGYcZcQJBokoa7Bg=",
"owner": "CachyOS",
"repo": "kernel-patches",
"rev": "a4e26fa95257ac09bd42930334399b0eabd5b5b1",
"rev": "948e9c61779b0fafdf0c3b1ee6281502ff178fcc",
"type": "github"
},
"original": {
@@ -568,11 +568,11 @@
]
},
"locked": {
"lastModified": 1774379316,
"narHash": "sha256-0nGNxWDUH2Hzlj/R3Zf4FEK6fsFNB/dvewuboSRZqiI=",
"lastModified": 1774984355,
"narHash": "sha256-/41Q8d4EB/bZRFfR5BYdlDl32avGyCqHNEZhznar8EI=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "1eb0549a1ab3fe3f5acf86668249be15fa0e64f7",
"rev": "0adb9993274f27168ec0d6c13ec292f03dc328d0",
"type": "github"
},
"original": {
@@ -588,11 +588,11 @@
]
},
"locked": {
"lastModified": 1774379316,
"narHash": "sha256-0nGNxWDUH2Hzlj/R3Zf4FEK6fsFNB/dvewuboSRZqiI=",
"lastModified": 1774984355,
"narHash": "sha256-/41Q8d4EB/bZRFfR5BYdlDl32avGyCqHNEZhznar8EI=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "1eb0549a1ab3fe3f5acf86668249be15fa0e64f7",
"rev": "0adb9993274f27168ec0d6c13ec292f03dc328d0",
"type": "github"
},
"original": {
@@ -642,11 +642,11 @@
"homebrew-cask": {
"flake": false,
"locked": {
"lastModified": 1774473207,
"narHash": "sha256-uzBowJgpnVUnIxItld3MUT6H9tUtKGDX6eGjFB9yFKE=",
"lastModified": 1774984634,
"narHash": "sha256-9QI3c8wULgSte8bf3amEaxWBNrqwGc0p/qEmbonpfso=",
"owner": "homebrew",
"repo": "homebrew-cask",
"rev": "672d1652fd7d9c32058f3e3f5b4d6ab2aba3853a",
"rev": "bc236e0094fdb4ab613f510e6ac07a569d9fc512",
"type": "github"
},
"original": {
@@ -658,11 +658,11 @@
"homebrew-core": {
"flake": false,
"locked": {
"lastModified": 1774474683,
"narHash": "sha256-3INbCL2xoj8j2VPSXsc6bcuc+YvlDremZg9RoEjrNcs=",
"lastModified": 1774979390,
"narHash": "sha256-Nb5QWTApaPDPDLQzRk2o/zJTrHhx9gHicmzmgNPnRNk=",
"owner": "homebrew",
"repo": "homebrew-core",
"rev": "9da10921a2cb0751d8b7970cfea4c6e92c4e8f76",
"rev": "945f2be67e270a4be32ad65d1d87c384c08876e6",
"type": "github"
},
"original": {
@@ -698,11 +698,11 @@
]
},
"locked": {
"lastModified": 1774333446,
"narHash": "sha256-jeAUd4mfLle7Zw8F3lDdXvw2cmeP3FgVphHq2XuEKbs=",
"lastModified": 1774679353,
"narHash": "sha256-N5L8U18JigqVqxMz1FuwbJVruCCa5lA6hgGeXLg8LI8=",
"owner": "Jovian-Experiments",
"repo": "Jovian-NixOS",
"rev": "79b45622eff2ae0437d7a712610044bbc7b87fa2",
"rev": "8ffb6db9322542ec3cb541a232864084422f7e90",
"type": "github"
},
"original": {
@@ -788,11 +788,11 @@
"nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1774290535,
"narHash": "sha256-dnFbucSiAjjWmPENgyIiK/ocCuYSp4sM6Sq4WCVjG+8=",
"lastModified": 1774982062,
"narHash": "sha256-4EDoYaSztFSMD2K6rdPe/i4V3pl9jiz+ul+hwAZ7P1Q=",
"owner": "xddxdd",
"repo": "nix-cachyos-kernel",
"rev": "c0fcdf5cab21b7e3157e84046b57407a60934415",
"rev": "95a79dcd59c482dd3215ca5a32f1cbdf40e9f77f",
"type": "github"
},
"original": {
@@ -829,11 +829,11 @@
"brew-src": "brew-src"
},
"locked": {
"lastModified": 1769437432,
"narHash": "sha256-8d7KnCpT2LweRvSzZYEGd9IM3eFX+A78opcnDM0+ndk=",
"lastModified": 1774720267,
"narHash": "sha256-YYftFe8jyfpQI649yfr0E+dqEXE2jznZNcYvy/lKV1U=",
"owner": "zhaofengli",
"repo": "nix-homebrew",
"rev": "a5409abd0d5013d79775d3419bcac10eacb9d8c5",
"rev": "a7760a3a83f7609f742861afb5732210fdc437ed",
"type": "github"
},
"original": {
@@ -849,11 +849,11 @@
]
},
"locked": {
"lastModified": 1774156144,
"narHash": "sha256-gdYe9wTPl4ignDyXUl1LlICWj41+S0GB5lG1fKP17+A=",
"lastModified": 1774762074,
"narHash": "sha256-89Mh4Eb/5stVJX6kGagVMijcU2FmfeD8Qv7UXc5d92o=",
"owner": "nix-community",
"repo": "nix-index-database",
"rev": "55b588747fa3d7fc351a11831c4b874dab992862",
"rev": "bc13aeaed568be76eab84df88ff39261bb52ff70",
"type": "github"
},
"original": {
@@ -906,11 +906,11 @@
"nixpkgs": "nixpkgs_7"
},
"locked": {
"lastModified": 1774406959,
"narHash": "sha256-LvsvRER3uhSMPFXm3d51j1HKtNvT5uaxeU2GiGhTx2Y=",
"lastModified": 1774925891,
"narHash": "sha256-8QGLGZJGnjPXFkWncYI9IXfUJEaPshX81W9LCJyQbGE=",
"owner": "nix-community",
"repo": "nix-vscode-extensions",
"rev": "8e7124f1592e7f2cc8f76ce2639255f478d58838",
"rev": "01dbb479b5f70a18feaa6398077c3babba0d4ba9",
"type": "github"
},
"original": {
@@ -940,11 +940,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1774465523,
"narHash": "sha256-4v7HPm63Q90nNn4fgkgKsjW1AH2Klw7XzPtHJr562nM=",
"lastModified": 1774933469,
"narHash": "sha256-OrnCQeUO2bqaWUl0lkDWyGWjKsOhtCyd7JSfTedQNUE=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "de895be946ad1d8aafa0bb6dfc7e7e0e9e466a29",
"rev": "f4c4c2c0c923d7811ac2a63ccc154767e4195337",
"type": "github"
},
"original": {
@@ -1034,11 +1034,11 @@
},
"nixpkgs-stable_2": {
"locked": {
"lastModified": 1774244481,
"narHash": "sha256-4XfMXU0DjN83o6HWZoKG9PegCvKvIhNUnRUI19vzTcQ=",
"lastModified": 1774799055,
"narHash": "sha256-Tsq9BCz0q47ej1uFF39m4tuhcwru/ls6vCCJzutEpaw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "4590696c8693fea477850fe379a01544293ca4e2",
"rev": "107cba9eb4a8d8c9f8e9e61266d78d340867913a",
"type": "github"
},
"original": {
@@ -1050,11 +1050,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1774106199,
"narHash": "sha256-US5Tda2sKmjrg2lNHQL3jRQ6p96cgfWh3J1QBliQ8Ws=",
"lastModified": 1774709303,
"narHash": "sha256-D3Q07BbIA2KnTcSXIqqu9P586uWxN74zNoCH3h2ESHg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "6c9a78c09ff4d6c21d0319114873508a6ec01655",
"rev": "8110df5ad7abf5d4c0f6fb0f8f978390e77f9685",
"type": "github"
},
"original": {
@@ -1066,11 +1066,11 @@
},
"nixpkgs_10": {
"locked": {
"lastModified": 1773840656,
"narHash": "sha256-9tpvMGFteZnd3gRQZFlRCohVpqooygFuy9yjuyRL2C0=",
"lastModified": 1774610258,
"narHash": "sha256-HaThtroVD9wRdx7KQk0B75JmFcXlMUoEdDFNOMOlsOs=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "9cf7092bdd603554bd8b63c216e8943cf9b12512",
"rev": "832efc09b4caf6b4569fbf9dc01bec3082a00611",
"type": "github"
},
"original": {
@@ -1114,11 +1114,11 @@
},
"nixpkgs_4": {
"locked": {
"lastModified": 1774235121,
"narHash": "sha256-CzpSER+YKq4yD+RPom6Su9c/4FutF+sD4rEnls+4MyM=",
"lastModified": 1774935083,
"narHash": "sha256-Mh6bLcYAcENBAZk3RoMPMFCGGMZmfaGMERE4siZOgP4=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "1116aed2cee959f7d054a462458513ad323b710a",
"rev": "2f4fd5e1abf9bac8c1d22750c701a7a5e6b524c6",
"type": "github"
},
"original": {
@@ -1194,11 +1194,11 @@
},
"nixpkgs_9": {
"locked": {
"lastModified": 1774106199,
"narHash": "sha256-US5Tda2sKmjrg2lNHQL3jRQ6p96cgfWh3J1QBliQ8Ws=",
"lastModified": 1774709303,
"narHash": "sha256-D3Q07BbIA2KnTcSXIqqu9P586uWxN74zNoCH3h2ESHg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "6c9a78c09ff4d6c21d0319114873508a6ec01655",
"rev": "8110df5ad7abf5d4c0f6fb0f8f978390e77f9685",
"type": "github"
},
"original": {
@@ -1243,11 +1243,11 @@
]
},
"locked": {
"lastModified": 1772361940,
"narHash": "sha256-B1Cz+ydL1iaOnGlwOFld/C8lBECPtzhiy/pP93/CuyY=",
"lastModified": 1774915545,
"narHash": "sha256-COT4l/+ZddGBvrDVfPf7MEOJxV8EDKame6/aRnNIKcY=",
"owner": "nix-community",
"repo": "plasma-manager",
"rev": "a4b33606111c9c5dcd10009042bb710307174f51",
"rev": "f3177b3c69fb3f03201098d7fe8ab6422cce7fc1",
"type": "github"
},
"original": {
@@ -1288,11 +1288,11 @@
]
},
"locked": {
"lastModified": 1774104215,
"narHash": "sha256-EAtviqz0sEAxdHS4crqu7JGR5oI3BwaqG0mw7CmXkO8=",
"lastModified": 1774959120,
"narHash": "sha256-Pzk6UbueeWy9WFiDY6iA1aHid+2AMzkS6gg2x2cSkz4=",
"owner": "cachix",
"repo": "pre-commit-hooks.nix",
"rev": "f799ae951fde0627157f40aec28dec27b22076d0",
"rev": "c06f90f1eb6569bdaf6a4a10cb7e66db4454ac2a",
"type": "github"
},
"original": {
@@ -1455,11 +1455,11 @@
"nixpkgs": "nixpkgs_10"
},
"locked": {
"lastModified": 1774303811,
"narHash": "sha256-fhG4JAcLgjKwt+XHbjs8brpWnyKUfU4LikLm3s0Q/ic=",
"lastModified": 1774910634,
"narHash": "sha256-B+rZDPyktGEjOMt8PcHKYmgmKoF+GaNAFJhguktXAo0=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "614e256310e0a4f8a9ccae3fa80c11844fba7042",
"rev": "19bf3d8678fbbfbc173beaa0b5b37d37938db301",
"type": "github"
},
"original": {
@@ -1512,11 +1512,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1774124764,
"narHash": "sha256-Poz9WTjiRlqZIf197CrMMJfTifZhrZpbHFv0eU1Nhtg=",
"lastModified": 1774897726,
"narHash": "sha256-k/H2/oyex6GEC6uYXYetrboFQeTmX1Ouwv/zaW7b/Z0=",
"owner": "nix-community",
"repo": "stylix",
"rev": "e31c79f571c5595a155f84b9d77ce53a84745494",
"rev": "9b4a5eb409ceac2dd6ad495c7988e189a418cd30",
"type": "github"
},
"original": {

View File

@@ -9,6 +9,14 @@ with lib;
let
cfg = config.${namespace}.services.home-assistant;
net = lib.${namespace}.network;
customPackages = with pkgs.${namespace}; [
gehomesdk
magicattr
pyoverseerr
python-roborock
wyzeapy
];
in
{
# disabledModules = [
@@ -61,214 +69,214 @@ in
configDir = "/var/lib/homeassistant";
configWritable = true; # todo
# All components
# extraComponents = config.services.home-assistant.package.availableComponents;
extraComponents = [
"accuweather"
"adguard"
"air_quality"
"apcupsd"
"apple_tv"
"analytics"
"assist_pipeline"
"assist_satellite"
"backup"
"bluetooth"
"bluetooth_adapters"
"bluetooth_le_tracker"
"brother"
"browser"
"button"
"caldav"
"calendar"
"camera"
"cast"
"climate"
"cloud"
"cloudflare"
"co2signal"
"coinbase"
"color_extractor"
"config"
"configurator"
"conversation"
"counter"
"cpuspeed"
"date"
"datetime"
"deluge"
"device_automation"
"device_sun_light_trigger"
"device_tracker"
"dhcp"
"diagnostics"
"discord"
"dlna_dmr"
"dlna_dms"
"downloader"
"ecobee"
"energy"
"epic_games_store"
"esphome"
"event"
"fan"
"fastdotcom"
"ffmpeg"
"ffmpeg_motion"
"ffmpeg_noise"
"file"
"file_upload"
"filesize"
"filter"
"folder"
"fully_kiosk"
"generic"
"generic_thermostat"
# "geo_json_events"
# "geo_location"
# "geo_rss_events"
"github"
"gitlab_ci"
"glances"
"google"
"google_cloud"
"google_drive"
"google_mail"
"google_maps"
"google_photos"
"google_translate"
"govee_ble"
"gpsd"
"gpslogger"
"hardware"
"hddtemp"
"hdmi_cec"
"history"
"history_stats"
"holiday"
"homeassistant"
"homeassistant_alerts"
"homeassistant_sky_connect"
"homekit"
"homekit_controller"
"http"
"humidifier"
"ibeacon"
"image"
"image_processing"
"image_upload"
"immich"
"input_boolean"
"input_button"
"input_datetime"
"input_number"
"input_select"
"input_text"
"ios"
"ipp"
"isal"
"jellyfin"
"lidarr"
"light"
"litterrobot"
"local_calendar"
"local_file"
"local_ip"
"local_todo"
"logbook"
"logentries"
"logger"
"lovelace"
"manual_mqtt"
"matter"
"met"
"microsoft"
"min_max"
"mobile_app"
"mqtt"
"music_assistant"
"ntfy"
"nut"
"nextcloud"
"notify"
"nws"
"ollama"
"onedrive"
"onkyo"
"openhardwaremonitor"
"opensky"
"openweathermap"
"open_router"
"paperless_ngx"
"persistent_notification"
"pinecil"
"ping"
"piper"
"playstation_network"
"radarr"
"radio_browser"
"raspberry_pi"
"recorder"
"reddit"
"remote"
"remote_calendar"
"remote_rpi_gpio"
"roborock" # currently broken
"samsungtv"
"schedule"
"script"
"search"
"season"
"select"
"sense"
"sensor"
"shopping_list"
"simplefin"
"smartthings"
"sonarr"
"speedtestdotnet"
"sql"
"ssdp"
"statistics"
"stream"
"subaru"
"sun"
"switch"
"system_health"
"system_log"
"systemmonitor"
"tailscale"
"tasmota"
"tcp"
"template"
"text"
"thread"
"time"
"time_date"
"timer"
"torque"
"tplink"
"tuya"
"upnp"
"uptime"
"usb"
"vacuum"
"vlc"
"vesync"
"wake_on_lan"
"waze_travel_time"
"weather"
"weatherkit"
"webdav"
"webhook"
"whisper"
"whois"
"workday"
"wyoming"
"youtube"
"zeroconf"
"zha"
"zone"
];
extraComponents = config.services.home-assistant.package.availableComponents;
# extraComponents = [
# "accuweather"
# "adguard"
# "air_quality"
# "apcupsd"
# "apple_tv"
# "analytics"
# "assist_pipeline"
# "assist_satellite"
# "backup"
# "bluetooth"
# "bluetooth_adapters"
# "bluetooth_le_tracker"
# "brother"
# "browser"
# "button"
# "caldav"
# "calendar"
# "camera"
# "cast"
# "climate"
# "cloud"
# "cloudflare"
# "co2signal"
# "coinbase"
# "color_extractor"
# "config"
# "configurator"
# "conversation"
# "counter"
# "cpuspeed"
# "date"
# "datetime"
# "deluge"
# "device_automation"
# "device_sun_light_trigger"
# "device_tracker"
# "dhcp"
# "diagnostics"
# "discord"
# "dlna_dmr"
# "dlna_dms"
# "downloader"
# "ecobee"
# "energy"
# "epic_games_store"
# "esphome"
# "event"
# "fan"
# "fastdotcom"
# "ffmpeg"
# "ffmpeg_motion"
# "ffmpeg_noise"
# "file"
# "file_upload"
# "filesize"
# "filter"
# "folder"
# "fully_kiosk"
# "generic"
# "generic_thermostat"
# # "geo_json_events"
# # "geo_location"
# # "geo_rss_events"
# "github"
# "gitlab_ci"
# "glances"
# "google"
# "google_cloud"
# "google_drive"
# "google_mail"
# "google_maps"
# "google_photos"
# "google_translate"
# "govee_ble"
# "gpsd"
# "gpslogger"
# "hardware"
# "hddtemp"
# "hdmi_cec"
# "history"
# "history_stats"
# "holiday"
# "homeassistant"
# "homeassistant_alerts"
# "homeassistant_sky_connect"
# "homekit"
# "homekit_controller"
# "http"
# "humidifier"
# "ibeacon"
# "image"
# "image_processing"
# "image_upload"
# "immich"
# "input_boolean"
# "input_button"
# "input_datetime"
# "input_number"
# "input_select"
# "input_text"
# "ios"
# "ipp"
# "isal"
# "jellyfin"
# "lidarr"
# "light"
# "litterrobot"
# "local_calendar"
# "local_file"
# "local_ip"
# "local_todo"
# "logbook"
# "logentries"
# "logger"
# "lovelace"
# "manual_mqtt"
# "matter"
# "met"
# "microsoft"
# "min_max"
# "mobile_app"
# "mqtt"
# "music_assistant"
# "ntfy"
# "nut"
# "nextcloud"
# "notify"
# "nws"
# "ollama"
# "onedrive"
# "onkyo"
# "openhardwaremonitor"
# "opensky"
# "openweathermap"
# "open_router"
# "paperless_ngx"
# "persistent_notification"
# "pinecil"
# "ping"
# "piper"
# "playstation_network"
# "radarr"
# "radio_browser"
# "raspberry_pi"
# "recorder"
# "reddit"
# "remote"
# "remote_calendar"
# "remote_rpi_gpio"
# "roborock" # currently broken
# "samsungtv"
# "schedule"
# "script"
# "search"
# "season"
# "select"
# "sense"
# "sensor"
# "shopping_list"
# "simplefin"
# "smartthings"
# "sonarr"
# "speedtestdotnet"
# "sql"
# "ssdp"
# "statistics"
# "stream"
# "subaru"
# "sun"
# "switch"
# "system_health"
# "system_log"
# "systemmonitor"
# "tailscale"
# "tasmota"
# "tcp"
# "template"
# "text"
# "thread"
# "time"
# "time_date"
# "timer"
# "torque"
# "tplink"
# "tuya"
# "upnp"
# "uptime"
# "usb"
# "vacuum"
# "vlc"
# "vesync"
# "wake_on_lan"
# "waze_travel_time"
# "weather"
# "weatherkit"
# "webdav"
# "webhook"
# "whisper"
# "whois"
# "workday"
# "wyoming"
# "youtube"
# "zeroconf"
# "zha"
# "zone"
# ];
customComponents =
with pkgs.home-assistant-custom-components;
@@ -320,13 +328,7 @@ in
dateparser
psycopg2
]
++ (with pkgs.${namespace}; [
gehomesdk
magicattr
pyoverseerr
python-roborock
wyzeapy
]);
++ customPackages;
config = {
# Includes dependencies for a basic setup