250 lines
6.2 KiB
Nix
250 lines
6.2 KiB
Nix
{
|
|
self,
|
|
config,
|
|
pkgs,
|
|
python3Packages,
|
|
inputs,
|
|
...
|
|
}:
|
|
|
|
{
|
|
age.secrets.home-assistant_giggles_secrets = {
|
|
file = "${self}/secrets/home-assistant_giggles_secrets.age";
|
|
path = "${config.services.home-assistant.configDir}/secrets.yaml";
|
|
owner = config.systemd.services.home-assistant.serviceConfig.User;
|
|
group = config.systemd.services.home-assistant.serviceConfig.Group;
|
|
mode = "0644";
|
|
};
|
|
|
|
users.users."hass".extraGroups = ["dialout"];
|
|
|
|
pub-solar.home-assistant = {
|
|
enable = true;
|
|
extraComponents = [
|
|
"default_config"
|
|
"homeassistant_hardware"
|
|
"homeassistant_sky_connect"
|
|
|
|
"apcupsd"
|
|
"androidtv"
|
|
"cast"
|
|
"esphome"
|
|
"homekit_controller"
|
|
"icloud"
|
|
"ipp"
|
|
"luci"
|
|
"met"
|
|
"python_script"
|
|
"rpi_power"
|
|
"shopping_list"
|
|
"spotify"
|
|
"tasmota"
|
|
"unifi"
|
|
"upnp"
|
|
"vacuum"
|
|
"xiaomi_aqara"
|
|
"xiaomi_miio"
|
|
"zeroconf"
|
|
];
|
|
|
|
extraPackages = python311Packages:
|
|
with python311Packages; [
|
|
# esphome
|
|
aiodiscover
|
|
scapy
|
|
|
|
# deutsche bahn
|
|
schiene
|
|
|
|
# dwd
|
|
dwdwfsapi
|
|
|
|
# hacs
|
|
aiogithubapi
|
|
|
|
# philips_airpurifier_coap
|
|
(callPackage ./aioairctrl.nix {})
|
|
|
|
# totop
|
|
pyotp
|
|
];
|
|
|
|
config = {
|
|
homeassistant = {
|
|
name = "Wohnung";
|
|
|
|
country = "DE";
|
|
currency = "EUR";
|
|
language = "de";
|
|
temperature_unit = "C";
|
|
time_zone = "Europe/Berlin";
|
|
unit_system = "metric";
|
|
|
|
latitude = "52.31501090166047";
|
|
longitude = "8.910633035293603";
|
|
elevation = "59";
|
|
|
|
external_url = "https://ha2.gssws.de";
|
|
internal_url = "http://192.168.42.11:8123";
|
|
};
|
|
http = {
|
|
ip_ban_enabled = false;
|
|
use_x_forwarded_for = true;
|
|
trusted_proxies = [
|
|
"127.0.0.1"
|
|
"10.254.0.21"
|
|
"10.0.1.5"
|
|
"10.0.1.6"
|
|
];
|
|
};
|
|
|
|
default_config = {};
|
|
energy = {};
|
|
|
|
"automation ui" = "!include automations.yaml";
|
|
|
|
device_tracker = [
|
|
{
|
|
platform = "luci";
|
|
host = "192.168.42.1";
|
|
username = "!secret router_admin_username";
|
|
password = "!secret router_admin_password";
|
|
}
|
|
];
|
|
|
|
python_script = {};
|
|
|
|
waste_collection_schedule = {
|
|
sources = [
|
|
{
|
|
name = "jumomind_de";
|
|
args = {
|
|
service_id = "sbm";
|
|
city = "Minden";
|
|
street = "Schwerinstr.";
|
|
house_number = "17b";
|
|
};
|
|
}
|
|
];
|
|
};
|
|
|
|
zone = [
|
|
{
|
|
name = "Home";
|
|
latitude = "52.31501090166047";
|
|
longitude = "8.910633035293603";
|
|
radius = "30";
|
|
}
|
|
{
|
|
name = "DKSB";
|
|
latitude = "52.31249954762553";
|
|
longitude = "8.910920619964601";
|
|
radius = "60";
|
|
}
|
|
{
|
|
name = "Hainweg";
|
|
latitude = "52.3176809501406";
|
|
longitude = "8.890610933303835";
|
|
radius = "60";
|
|
}
|
|
{
|
|
name = "Lande";
|
|
latitude = "52.35688908037632";
|
|
longitude = "8.898582458496096";
|
|
radius = "87";
|
|
}
|
|
{
|
|
name = "Rürups";
|
|
latitude = "52.317152702118655";
|
|
longitude = "8.89446449221293";
|
|
radius = "70";
|
|
}
|
|
{
|
|
name = "Schule";
|
|
latitude = "52.30213492276748";
|
|
longitude = "8.88126075267792";
|
|
radius = "200";
|
|
}
|
|
{
|
|
name = "Sokos";
|
|
latitude = "50.92777444599559";
|
|
longitude = "6.583169284373658";
|
|
radius = "50";
|
|
}
|
|
{
|
|
name = "Wohnung Aachen";
|
|
latitude = "50.7800954893528";
|
|
longitude = "6.154607534408569";
|
|
radius = "13";
|
|
}
|
|
];
|
|
};
|
|
|
|
mqtt = {
|
|
enable = true;
|
|
users = {
|
|
ha = {
|
|
acl = [
|
|
"readwrite #"
|
|
];
|
|
hashedPassword = "$7$101$lFt8hQl3O8aKF+bO$pcZuI18IT5t4/fpKZmLZQwQs+vcbxZdAQAYJOxRwXGYsxCRjb8jUSU+ZRlpqokOGqf/Cgvymfvml+yoGaC8eaw==";
|
|
};
|
|
z2m = {
|
|
acl = [
|
|
"readwrite #"
|
|
];
|
|
hashedPassword = "$7$101$M0Q/s9ReWPaMy+pT$Y8t9DwmW3y74lyvYrCE+sqEcz9yGG9VaHw8vt4wVZgUVVV9muY00ymjkwsTNtaTIlnQyB7z7POPLT3PURtQfeg==";
|
|
};
|
|
|
|
frigate = {
|
|
acl = [
|
|
"readwrite #"
|
|
];
|
|
hashedPassword = "$7$101$BZvoqhiaWo8TbFEv$KlE8XiE9dhfNV50SoUiBjTgnvSRaCwWdouuVcN4ZeHkR7/4JufQ7adW0VhVmtpv+6V9KOPDlN3wRaV+5eVlF3Q==";
|
|
};
|
|
nuki_wohnung = {
|
|
acl = [
|
|
"readwrite #"
|
|
];
|
|
hashedPassword = "$7$101$21wWveYvOyQKNuhd$rXD8d4F+Wf4k6LDkM09bsfkQfc+iXakRaH2sygYgOQqfrJ5Egt8D+9LVKa9ZQ12HLPSHDo0bP8ygVmY6iVJCjQ==";
|
|
};
|
|
poffertjes = {
|
|
acl = [
|
|
"readwrite #"
|
|
];
|
|
hashedPassword = "$7$101$n5J9RKGzFF7bOsOH$YNPQawxsfuDZk/N6NrNzkE5rEfTRlCW5Fjpk6kgwyTg4C6Peyz4I79ii4UMSANJ8DFNsPRL1KohCcXK07SMW2w==";
|
|
};
|
|
shelly1_flur_deckenlicht = {
|
|
acl = [
|
|
"readwrite #"
|
|
];
|
|
hashedPassword = "$7$101$n0PyELB9214BiluQ$P24lJlXDpKLaGSerrp51z5UUl3wYSek9SbJN+buqoS9acrCn7s3mtSLZfeMP0JT8zXx83GJrNwlDaA0BOu00xg==";
|
|
};
|
|
shelly25_abstellraum = {
|
|
acl = [
|
|
"readwrite #"
|
|
];
|
|
hashedPassword = "$7$101$n9IcybeGEAhnoWv5$RSnkEJFgDsrKUzEaLfNIa/5v4gkTMZSAq2bb7KzWSG6zaufHdnvtDZT+q7dZ3pkBFXndKtoelmuvm7XJLJC1mg==";
|
|
};
|
|
shelly25_badezimmer = {
|
|
acl = [
|
|
"readwrite #"
|
|
];
|
|
hashedPassword = "$7$101$PNWBSZUE4Ar5dOhx$2u6dneedx7OLOjH1auoax2AC1GP4oVcXe4OAmO3riNpzXZF9V1cJ7k/GREx9/vO/ONt5PuUygilk3X4SIYnf9A==";
|
|
};
|
|
tasmota_wohnzimmer_tv_steckdosenleiste = {
|
|
acl = [
|
|
"readwrite #"
|
|
];
|
|
hashedPassword = "$7$101$cywQWWzxPUUpUqdC$Q9tjqE4bW0VaNMVKIuts/wuyFetC//PyLVcRtpaK02HxwlTPY7jWivXUBA/t8l0wGZsS8lsiOIAu8e6bHb+7Xw==";
|
|
};
|
|
};
|
|
};
|
|
|
|
zigbee2mqtt = {
|
|
enable = true;
|
|
device = "/dev/serial/by-id/usb-Nabu_Casa_SkyConnect_v1.0_aaf7050fdb42ed11bb2843ab2a61ed69-if00-port0";
|
|
};
|
|
};
|
|
}
|