ma ham: use new home-assistant merge function
This commit is contained in:
parent
e04ae7a314
commit
78fc347be0
@ -7,7 +7,10 @@ let
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
sec = seconds: { delay.seconds = seconds; };
|
sec = seconds: { delay.seconds = seconds; };
|
||||||
in [
|
in
|
||||||
|
{
|
||||||
|
services.home-assistant.config.sensor =
|
||||||
|
[
|
||||||
{
|
{
|
||||||
alias = "Nightly reboot of firetv";
|
alias = "Nightly reboot of firetv";
|
||||||
trigger = {
|
trigger = {
|
||||||
@ -30,4 +33,5 @@ in [
|
|||||||
(cmd "RIGHT")
|
(cmd "RIGHT")
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
]
|
];
|
||||||
|
}
|
||||||
|
@ -1,8 +1,13 @@
|
|||||||
let
|
let
|
||||||
cred = import <secrets/ham/nextcloud-calendar>;
|
cred = import <secrets/ham/nextcloud-calendar>;
|
||||||
in
|
in
|
||||||
|
{
|
||||||
|
services.home-assistant.config.calendar =
|
||||||
|
[
|
||||||
{
|
{
|
||||||
platform = "caldav";
|
platform = "caldav";
|
||||||
inherit (cred) username password;
|
inherit (cred) username password;
|
||||||
url = "https://o.euer.krebsco.de/remote.php/dav";
|
url = "https://o.euer.krebsco.de/remote.php/dav";
|
||||||
}
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
@ -4,39 +4,27 @@
|
|||||||
## wake-on-lan server
|
## wake-on-lan server
|
||||||
##
|
##
|
||||||
let
|
let
|
||||||
upkgs = (import <nixpkgs-unstable> {}).pkgs;
|
prefix = (import ./lib).prefix;
|
||||||
hlib = (import ./lib);
|
|
||||||
prefix = hlib.prefix;
|
|
||||||
tasmota = hlib.tasmota;
|
|
||||||
firetv_stick = "192.168.1.24";
|
firetv_stick = "192.168.1.24";
|
||||||
hassdir = "/var/lib/hass";
|
hassdir = "/var/lib/hass";
|
||||||
zigbee = import ./multi/zigbee2mqtt.nix;
|
|
||||||
#flurlicht = import ./multi/flurlicht.nix;
|
|
||||||
kurzzeitwecker = import ./multi/kurzzeitwecker.nix;
|
|
||||||
firetv_restart = import ./multi/firetv_restart.nix;
|
|
||||||
the_playlist = import ./multi/the_playlist.nix;
|
|
||||||
fliegen-counter = import ./multi/fliegen-couter.nix;
|
|
||||||
# switch
|
|
||||||
# automation
|
|
||||||
# binary_sensor
|
|
||||||
# sensor
|
|
||||||
# input_select
|
|
||||||
# timer
|
|
||||||
in {
|
in {
|
||||||
imports = [
|
imports = [
|
||||||
./mqtt.nix
|
./mqtt.nix
|
||||||
|
./zigbee2mqtt/default.nix
|
||||||
|
|
||||||
|
# hass config
|
||||||
|
./zigbee2mqtt/hass.nix
|
||||||
|
# ./multi/flurlicht.nix
|
||||||
|
./multi/kurzzeitwecker.nix
|
||||||
|
./multi/the_playlist.nix
|
||||||
|
./multi/fliegen-couter.nix
|
||||||
|
./device_tracker/openwrt.nix
|
||||||
|
./sensor/outside.nix
|
||||||
|
./calendar/nextcloud.nix
|
||||||
|
./automation/firetv_restart.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
services.home-assistant = {
|
services.home-assistant = {
|
||||||
package = (upkgs.home-assistant.overrideAttrs (old: {
|
|
||||||
doCheck = false;
|
|
||||||
checkPhase = ":";
|
|
||||||
installCheckPhase = ":";
|
|
||||||
})).override {
|
|
||||||
extraPackages = ps: with ps; [
|
|
||||||
python-forecastio jsonrpc-async jsonrpc-websocket mpd2 pkgs.picotts androidtv
|
|
||||||
];
|
|
||||||
};
|
|
||||||
config = {
|
config = {
|
||||||
influxdb = {
|
influxdb = {
|
||||||
database = "ham";
|
database = "ham";
|
||||||
@ -48,8 +36,6 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
config = {};
|
config = {};
|
||||||
input_select = zigbee.input_select; # dict
|
|
||||||
timer = zigbee.timer // kurzzeitwecker.timer; # dict
|
|
||||||
homeassistant = {
|
homeassistant = {
|
||||||
name = "Home"; time_zone = "Europe/Berlin";
|
name = "Home"; time_zone = "Europe/Berlin";
|
||||||
latitude = "48.7687";
|
latitude = "48.7687";
|
||||||
@ -60,12 +46,10 @@ in {
|
|||||||
conversation = {};
|
conversation = {};
|
||||||
history = {};
|
history = {};
|
||||||
logbook = {};
|
logbook = {};
|
||||||
counter = fliegen-counter.counter;
|
|
||||||
logger = {
|
logger = {
|
||||||
default = "info";
|
default = "info";
|
||||||
};
|
};
|
||||||
rest_command = {}
|
rest_command = {};
|
||||||
// the_playlist.rest_command;
|
|
||||||
tts = [
|
tts = [
|
||||||
{ platform = "google_translate";
|
{ platform = "google_translate";
|
||||||
language = "de";
|
language = "de";
|
||||||
@ -101,7 +85,6 @@ in {
|
|||||||
];
|
];
|
||||||
sun.elevation = 247;
|
sun.elevation = 247;
|
||||||
recorder = {};
|
recorder = {};
|
||||||
device_tracker = (import ./device_tracker/openwrt.nix);
|
|
||||||
media_player = [
|
media_player = [
|
||||||
{ platform = "FireTV Stick kodi";
|
{ platform = "FireTV Stick kodi";
|
||||||
host = firetv_stick;
|
host = firetv_stick;
|
||||||
@ -149,25 +132,12 @@ in {
|
|||||||
monitored_conditions = [ "ping" "download" "upload" ];
|
monitored_conditions = [ "ping" "download" "upload" ];
|
||||||
}
|
}
|
||||||
# https://www.home-assistant.io/cookbook/automation_for_rainy_days/
|
# https://www.home-assistant.io/cookbook/automation_for_rainy_days/
|
||||||
]
|
];
|
||||||
++ ((import ./sensor/outside.nix) {inherit lib;})
|
|
||||||
++ the_playlist.sensor
|
|
||||||
++ zigbee.sensor ;
|
|
||||||
frontend = { };
|
frontend = { };
|
||||||
calendar = [ (import ./calendar/nextcloud.nix) ];
|
|
||||||
# light = flurlicht.light;
|
|
||||||
http = { };
|
http = { };
|
||||||
switch = [];
|
switch = [];
|
||||||
automation = []
|
automation = [];
|
||||||
++ (import ./automation/firetv_restart.nix)
|
script = { };
|
||||||
++ kurzzeitwecker.automation
|
|
||||||
#++ flurlicht.automation
|
|
||||||
++ the_playlist.automation
|
|
||||||
++ fliegen-counter.automation
|
|
||||||
++ zigbee.automation;
|
|
||||||
script =
|
|
||||||
{ }
|
|
||||||
// kurzzeitwecker.script; # dict
|
|
||||||
};
|
};
|
||||||
enable = true;
|
enable = true;
|
||||||
configDir = hassdir;
|
configDir = hassdir;
|
||||||
|
@ -1,3 +1,5 @@
|
|||||||
|
{
|
||||||
|
services.home-assistant.config.device_tracker =
|
||||||
[
|
[
|
||||||
{ platform = "luci";
|
{ platform = "luci";
|
||||||
host = "192.168.1.5";
|
host = "192.168.1.5";
|
||||||
@ -7,4 +9,5 @@
|
|||||||
consider_home = 300; # 5 minutes timeout
|
consider_home = 300; # 5 minutes timeout
|
||||||
new_device_defaults.track_new_devices = true;
|
new_device_defaults.track_new_devices = true;
|
||||||
}
|
}
|
||||||
]
|
];
|
||||||
|
}
|
||||||
|
@ -15,7 +15,10 @@ let
|
|||||||
data.entity_id = "counter.${for}_fliegen";
|
data.entity_id = "counter.${for}_fliegen";
|
||||||
}) incr;
|
}) incr;
|
||||||
};
|
};
|
||||||
in {
|
in
|
||||||
|
{
|
||||||
|
services.home-assistant.config =
|
||||||
|
{
|
||||||
counter = {
|
counter = {
|
||||||
felix_fliegen = {};
|
felix_fliegen = {};
|
||||||
misa_fliegen = {};
|
misa_fliegen = {};
|
||||||
@ -64,4 +67,5 @@ in {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -8,7 +8,9 @@
|
|||||||
# notify.telegrambot
|
# notify.telegrambot
|
||||||
let
|
let
|
||||||
button = "sensor.zigbee_btn2_click";
|
button = "sensor.zigbee_btn2_click";
|
||||||
in {
|
in
|
||||||
|
{
|
||||||
|
services.home-assistant.config = {
|
||||||
timer.kurzzeitwecker =
|
timer.kurzzeitwecker =
|
||||||
{
|
{
|
||||||
name = "Zigbee Kurzzeitwecker";
|
name = "Zigbee Kurzzeitwecker";
|
||||||
@ -129,4 +131,5 @@ in {
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -6,6 +6,8 @@
|
|||||||
# rest_command
|
# rest_command
|
||||||
# automation
|
# automation
|
||||||
# sensor
|
# sensor
|
||||||
|
{
|
||||||
|
services.home-assistant.config =
|
||||||
{
|
{
|
||||||
rest_command = {
|
rest_command = {
|
||||||
good_song = {
|
good_song = {
|
||||||
@ -80,4 +82,5 @@
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,8 @@
|
|||||||
{lib,...}: [
|
{lib,...}:
|
||||||
|
|
||||||
|
{
|
||||||
|
services.home-assistant.config.sensor =
|
||||||
|
[
|
||||||
{ platform = "darksky";
|
{ platform = "darksky";
|
||||||
api_key = lib.removeSuffix "\n"
|
api_key = lib.removeSuffix "\n"
|
||||||
(builtins.readFile <secrets/hass/darksky.apikey>);
|
(builtins.readFile <secrets/hass/darksky.apikey>);
|
||||||
@ -17,4 +21,5 @@
|
|||||||
units = "si" ;
|
units = "si" ;
|
||||||
scan_interval = "00:30:00";
|
scan_interval = "00:30:00";
|
||||||
}
|
}
|
||||||
]
|
];
|
||||||
|
}
|
||||||
|
14
makefu/2configs/ham/zigbee2mqtt/osram.nix
Normal file
14
makefu/2configs/ham/zigbee2mqtt/osram.nix
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
availability_topic: /ham/zigbee/bridge/state
|
||||||
|
command_topic: /ham/zigbee/flur_arbeitszimmer_osram2/set
|
||||||
|
|
||||||
|
- platform: "mqtt"
|
||||||
|
state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
|
||||||
|
availability_topic: "zigbee2mqtt/bridge/state"
|
||||||
|
payload_on: true
|
||||||
|
payload_off: false
|
||||||
|
value_template: "{{ value_json.battery_low}}"
|
||||||
|
device_class: "battery"
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user