CrOS/modules/services/openhab/default.nix

40 lines
841 B
Nix

let
volumePath = "/overseer/services";
in
{
lib,
config,
inputs,
...
}:
{
systemd.tmpfiles.rules = [
"d ${volumePath}/openhab"
"d ${volumePath}/openhab/conf"
"d ${volumePath}/openhab/userdata"
"d ${volumePath}/openhab/addons"
];
###########
# Service #
###########
virtualisation.oci-containers = {
backend = "podman";
containers."openhab" = {
image = "openhab/openhab:milestone";
extraOptions = [ "--ip=10.88.0.9" ];
volumes = [
"${volumePath}/openhab/conf:/openhab/conf"
"${volumePath}/openhab/userdata:/openhab/userdata"
"${volumePath}/openhab/addons:/openhab/addons"
];
};
};
services.caddy = {
enable = true;
virtualHosts."openhab.wanderingcrow.net".extraConfig = ''
reverse_proxy http://10.88.0.9:8080
'';
};
}