Compare commits

..

2 commits

5 changed files with 227 additions and 34 deletions

View file

@ -46,7 +46,7 @@
proxy_set_header Upgrade $http_upgrade; proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade"; proxy_set_header Connection "upgrade";
''; '';
proxyPass = "http://100.86.23.74:8123"; proxyPass = "http://nixberry:8123";
}; };
}; };

View file

@ -46,6 +46,7 @@ topLevel: {
# System modules # System modules
base base
server server
bluetooth
cholli cholli
root root

View file

@ -48,28 +48,6 @@
mobile_app = ""; mobile_app = "";
recorder = ""; recorder = "";
lovelace = {
# mode = "yaml";
resources = [
{
url = "/local/nixos-lovelace-modules/vacuum-card.js";
type = "module";
}
{
url = "/local/nixos-lovelace-modules/bubble-card.js";
type = "module";
}
{
url = "/local/nixos-lovelace-modules/clock-weather-card.js";
type = "module";
}
{
url = "/local/nixos-lovelace-modules/mushroom.js";
type = "module";
}
];
};
http = { http = {
use_x_forwarded_for = true; use_x_forwarded_for = true;
trusted_proxies = [ trusted_proxies = [
@ -77,6 +55,212 @@
]; ];
}; };
}; };
lovelaceConfigWritable = true;
lovelaceConfig = [
{
tile = "main-dashboard";
views = [
{
title = "Home";
sections = [
{
type = "grid";
cards = [
{
type = "map";
entities = [
{ entity = "person.christoph_hollizeck"; }
{ entity = "person.kuralay_aman"; }
{ entity = "zone.home"; }
];
theme_mode = "auto";
grid_options = {
columns = "full";
rows = 6;
};
}
{
show_current = true;
show_forecast = true;
type = "weather-forecast";
entity = "weather.forecast_home";
forecast_type = "hourly";
forecast_slots = 5;
}
{
display_order = "duedate_asc";
type = "todo-list";
entity = "todo.shopping_list";
title = "Shopping List";
hide_completed = true;
}
];
}
];
badges = [
{
type = "entity";
show_name = true;
show_state = true;
show_icon = true;
entity = "person.christoph_hollizeck";
name = {
type = "entity";
};
show_entity_picture = true;
}
{
type = "entity";
show_name = true;
show_state = true;
show_icon = true;
entity = "person.kuralay_aman";
show_entity_picture = true;
}
];
header = {
layout = "center";
badges_position = "bottom";
badges_wrap = "scroll";
card = {
type = "markdown";
text_only = true;
content = "# Hello {{ user }}\n";
};
};
}
{
type = "sections";
max_columns = 2;
title = "living-room";
path = "living-room";
sections = [
{
type = "grid";
cards = [
{
type = "history-graph";
entities = [ { entity = "sensor.living_room_temperature"; } ];
title = "Temperature";
}
];
}
{
type = "grid";
cards = [
{
type = "history-graph";
entities = [ { entity = "sensor.living_room_humidity"; } ];
title = "Humidity";
}
];
}
];
cards = [ ];
}
{
type = "sections";
max_columns = 3;
title = "kitchen";
path = "kitchen";
sections = [
{
type = "grid";
cards = [
{
type = "thermostat";
entity = "climate.kueche_radiator";
}
];
}
{
type = "grid";
cards = [
{
type = "custom:vacuum-card";
entity = "vacuum.sl60d";
}
];
}
{
type = "grid";
cards = [
{
type = "glance";
entities = [
{
entity = "switch.kettle_socket_1";
name = {
type = "device";
};
show_last_changed = true;
}
{ entity = "sensor.kettle_total_energy"; }
];
}
{
show_name = true;
show_icon = true;
show_state = true;
type = "glance";
entities = [
{
entity = "switch.shelf_socket_1";
show_last_changed = true;
name = {
type = "device";
};
}
{ entity = "sensor.shelf_total_energy"; }
];
state_color = true;
}
];
}
];
}
{
type = "sections";
max_columns = 3;
title = "bedroom";
path = "bedroom";
sections = [
{
type = "grid";
cards = [
{
type = "thermostat";
entity = "climate.bedroom_radiator";
}
];
}
{
type = "grid";
cards = [
{
type = "history-graph";
entities = [ { entity = "sensor.bedroom_temperature"; } ];
title = "Temperature";
}
];
}
{
type = "grid";
cards = [
{
type = "history-graph";
entities = [ { entity = "sensor.bedroom_humidity"; } ];
title = "Humidity";
}
];
}
];
}
];
}
];
openFirewall = true; openFirewall = true;
}; };
}; };

View file

@ -63,8 +63,21 @@ topLevel: {
root root
]; ];
sops.secrets = {
"remotebuild/private-key" = {
sopsFile = ../../../secrets/secrets.yaml;
owner = "cholli";
mode = "0400";
};
"cholli/private-key" = {
sopsFile = ../../../secrets/secrets.yaml;
mode = "0600";
};
};
fileSystems."/mnt/pi_share" = { fileSystems."/mnt/pi_share" = {
device = "cholli@nixberry:/storage/"; device = "cholli@192.168.178.2:/storage/";
fsType = "sshfs"; fsType = "sshfs";
options = [ options = [
@ -76,17 +89,10 @@ topLevel: {
# SSH options # SSH options
"reconnect" # handle connection drops "reconnect" # handle connection drops
"ServerAliveInterval=15" # keep connections alive "ServerAliveInterval=15" # keep connections alive
"IdentityFile=${config.sops.secrets."cholli/private-key".path}"
]; ];
}; };
sops.secrets = {
"remotebuild/private-key" = {
sopsFile = ../../../secrets/secrets.yaml;
owner = "cholli";
mode = "0400";
};
};
nix = { nix = {
distributedBuilds = true; distributedBuilds = true;
settings.builders-use-substitutes = true; settings.builders-use-substitutes = true;

View file

@ -3,6 +3,8 @@ samba:
cholli: ENC[AES256_GCM,data:x2fZ8VcSAcelCj9/Tjp2I1KNeLo=,iv:66Je1+TL6jtnC+LZS3747yq/c6zI4FwlBXH1BjIFeDk=,tag:+vujtFcdKTcsyBisC/UyNA==,type:str] cholli: ENC[AES256_GCM,data:x2fZ8VcSAcelCj9/Tjp2I1KNeLo=,iv:66Je1+TL6jtnC+LZS3747yq/c6zI4FwlBXH1BjIFeDk=,tag:+vujtFcdKTcsyBisC/UyNA==,type:str]
remotebuild: remotebuild:
private-key: ENC[AES256_GCM,data:kLF+Mo5EIS5mu8be0nDVRTAb7mzt6dtEL56aG4mV2BxLRcyUZXs7eCbj7j7sOpjqz0k8m+1lHAouvNjyzxANeH10/R3Fy3GZqeWtgJSOEQE3biZaD3dqz0e3Gv3ib/Y0yNYTafosCmn6CmPIsVfiE/dfS1oM2Ksrf/AQ3ufPKIdV0h+p5SK6LnhpBqxgIf7s3MFbBzR+iEgxn1jnmCLaoVqNXhO2tmQqgmRHyh2kHruFj9ZwUi6mWDBie7zX7qlOt/m9p5QN/v5KWn4CfMDWzMlSTYdjEd6lUlP8UC35MJafVT59ioF+ueqePhr4DyDR7d+Cg6Z/iNHWiSH1z17p4Rxt3D4IAverqcd1i8c92C8S4NJKvtWRyfMgZMB3/iG2ZqrLcJXlxrZZKZ9X5B+y5a0Ljb+Vg00V68ktFISt7vAsK79Qy/QjHCotXY0uugkeaGnxS1qhig5tmXdxD+OKk/cJt0kqYEyUFKVQf9unr6xaD2IuOkFKyp/fYhU5LfS0uiAt99ENrfNrIRdHAsUvgWW6Sq7qSVmjkLfU,iv:mlYWlmFT0Ybmn26Spqri5E9zRkrBweV6bWvvByLnIvs=,tag:tdB7dw+GMnr5/8fXoem10w==,type:str] private-key: ENC[AES256_GCM,data:kLF+Mo5EIS5mu8be0nDVRTAb7mzt6dtEL56aG4mV2BxLRcyUZXs7eCbj7j7sOpjqz0k8m+1lHAouvNjyzxANeH10/R3Fy3GZqeWtgJSOEQE3biZaD3dqz0e3Gv3ib/Y0yNYTafosCmn6CmPIsVfiE/dfS1oM2Ksrf/AQ3ufPKIdV0h+p5SK6LnhpBqxgIf7s3MFbBzR+iEgxn1jnmCLaoVqNXhO2tmQqgmRHyh2kHruFj9ZwUi6mWDBie7zX7qlOt/m9p5QN/v5KWn4CfMDWzMlSTYdjEd6lUlP8UC35MJafVT59ioF+ueqePhr4DyDR7d+Cg6Z/iNHWiSH1z17p4Rxt3D4IAverqcd1i8c92C8S4NJKvtWRyfMgZMB3/iG2ZqrLcJXlxrZZKZ9X5B+y5a0Ljb+Vg00V68ktFISt7vAsK79Qy/QjHCotXY0uugkeaGnxS1qhig5tmXdxD+OKk/cJt0kqYEyUFKVQf9unr6xaD2IuOkFKyp/fYhU5LfS0uiAt99ENrfNrIRdHAsUvgWW6Sq7qSVmjkLfU,iv:mlYWlmFT0Ybmn26Spqri5E9zRkrBweV6bWvvByLnIvs=,tag:tdB7dw+GMnr5/8fXoem10w==,type:str]
cholli:
private-key: ENC[AES256_GCM,data:RN/SV4FLyA8KgDfZb4pcN0lsTolpXEaTmTN0WKQ+rzeYiHKKCOqPswnABEcTylgkQk+E2Jup0O7jeNlvcLd5tnVW+K/a+rmGTlyCaLcZE69JjCPvnA+p4ionwkhKHc/jdvZ8YkO5B4I6rnGanBXs3g5WbHjZ4jfLW71hR4IAjXAj5BVGhZiWjViAEfsyIqISXzqPwcbvW6mfJPN5QOP7V+oCTrJVkUPxYrVetrooNgf2/n67qumkRT3RQF12h05zLLdOFWVVX0na5iX/M4Ajl7XTOsA6OnqkDLwRd43QYW29Mu7OYwVlPAsf/qv096cYDKY8lAa6EXgiBi89i4fDjWZ27D7/C/TDbbewCjlZ2dm/T/A9YT9lg7BLBBGywnWm0Xjjt2lNsf+0YEuBxl7IQOU4/pmhMllT5HBomYsBwIdqv+yujVbRd9UW/lelBZftfKxJv5GAkhTENcLchHb/ZlE4Z4n0xELtKx0kgahjhO2C6R2mj3vd1KXP6YFWZkcaYEmq,iv:QiORyyu8SOxn1co8wUySpVU24GkyN19DaYWXpxgApgI=,tag:kzs1tjlmBrN86pCECVMfjg==,type:str]
sops: sops:
age: age:
- recipient: age1pc92kl38mfr0j68dxww7tpzvqp3lpw6lwfylj6hn2k3rf4rddgtsjxdx47 - recipient: age1pc92kl38mfr0j68dxww7tpzvqp3lpw6lwfylj6hn2k3rf4rddgtsjxdx47
@ -41,7 +43,7 @@ sops:
SzFFeFVFcVBzWWRIajQrSHhjTzR6U1kKml6XZjf2DeNqfLazpCU3qXN0ak+kIbM6 SzFFeFVFcVBzWWRIajQrSHhjTzR6U1kKml6XZjf2DeNqfLazpCU3qXN0ak+kIbM6
7wuEOmWZCTD++CI/Fdb/TjgAJeJ7u3Dtd1I4+xi0f/9BEL4+mwFxWA== 7wuEOmWZCTD++CI/Fdb/TjgAJeJ7u3Dtd1I4+xi0f/9BEL4+mwFxWA==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
lastmodified: "2025-12-04T08:42:30Z" lastmodified: "2025-12-05T08:30:43Z"
mac: ENC[AES256_GCM,data:xXdrF1yI19G06GMmL9ZpOVIQGTN0uYpru5weMyFnvSc6Igt+GLznht9V4qIRHLW8gRhd+sfSfNvXptn0FbS9HdI5MfIDTvLLC1nVRVtvPPcWiYPKo5lqiFnCh5HV/3UBNVO+7Wz1/m1JtXEptc1cYhpx2JmFPSvH9dQXedGSgec=,iv:iyc2s2CNYNL1XsryV0a5hQN3Woc5bCjrVtfH7bLDVoo=,tag:4B03cEYJstryEJwHxWhrDw==,type:str] mac: ENC[AES256_GCM,data:LTyEkbTw+SVqAqpB2Zl8slxMM18OOIY3R76iPySkhhtUfwnki7fMExjuniq7tsMJfT4Ssp2jvSsNERsxbhxs/96OnH/CQtDva7N64yW3AM7nn5Ha6vb82YeNWcq2+aEqt1l2AF1Kva6lFzBz4tWT6lfHpfEQonpAOdLxT55dspo=,iv:dTnvZOKZUPYYGKqWS6TbrQMOJnzSCrBcZ0Tul56Da2c=,tag:32HcHZhjLHvov+Rb+cNkcw==,type:str]
unencrypted_suffix: _unencrypted unencrypted_suffix: _unencrypted
version: 3.11.0 version: 3.11.0