diff options
author | makefu <github@syntax-fehler.de> | 2023-06-03 15:27:46 +0200 |
---|---|---|
committer | makefu <github@syntax-fehler.de> | 2023-06-03 15:27:46 +0200 |
commit | be3284417942c0164c1b32c9cf34ba44bcfb86c3 (patch) | |
tree | 4302b9ce28125003e4daf5ae411f65cef58537ef /makefu/2configs/home/rhasspy/default.nix | |
parent | dd0a6294c8699640f47127f237104aac9d96c896 (diff) |
ma home: deploy home-assistant via docker
Diffstat (limited to 'makefu/2configs/home/rhasspy/default.nix')
-rw-r--r-- | makefu/2configs/home/rhasspy/default.nix | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/makefu/2configs/home/rhasspy/default.nix b/makefu/2configs/home/rhasspy/default.nix new file mode 100644 index 000000000..e3a0bcd28 --- /dev/null +++ b/makefu/2configs/home/rhasspy/default.nix @@ -0,0 +1,40 @@ +{ lib,config, ... }: +# uses alsa instead of pulseaduio server +let + profiles = "/var/lib/rhasspy"; +in +{ + systemd.services.docker-rhasspy.after = [ "network-online.target" ]; + + virtualisation.oci-containers.containers.rhasspy = { + image = "rhasspy/rhasspy:latest"; + + environment = { + TZ = "Europe/Berlin"; + PULSE_SERVER = "tcp:${ config.krebs.build.host.name }:4713"; + }; + + ports = [ + "12101:12101" + ]; + + volumes = [ + "/etc/localtime:/etc/localtime:ro" + "${profiles}:/profiles" + ]; + + cmd = [ "--user-profiles" "/profiles" "--profile" "de" ]; + extraOptions = [ + "--device=/dev/snd:/dev/snd" + "--group-add=audio" + ]; + }; + systemd.tmpfiles.rules = [ + "d ${profiles} 0770 root root - -" + ]; + + # required to allow rhasspy to connect to pulse server + # hardware.pulseaudio.enable = lib.mkForce false; + networking.firewall.allowedTCPPorts = [ 4713 ]; + +} |