summaryrefslogtreecommitdiffstats
path: root/makefu/2configs/bureautomation/rhasspy.nix
diff options
context:
space:
mode:
authormakefu <github@syntax-fehler.de>2023-01-11 15:17:00 +0100
committermakefu <github@syntax-fehler.de>2023-01-11 15:17:00 +0100
commitac4728cd2a3fea04b1822dde50413ebb1fd4f124 (patch)
tree5a996c87cd04c99e543dcacb8b5b32cd9a982161 /makefu/2configs/bureautomation/rhasspy.nix
parent90acc57fa89832f9256c93e06fa2f9738c4e0862 (diff)
ma bureautomation: add rhasspy
Diffstat (limited to 'makefu/2configs/bureautomation/rhasspy.nix')
-rw-r--r--makefu/2configs/bureautomation/rhasspy.nix41
1 files changed, 41 insertions, 0 deletions
diff --git a/makefu/2configs/bureautomation/rhasspy.nix b/makefu/2configs/bureautomation/rhasspy.nix
new file mode 100644
index 000000000..8fbfd9312
--- /dev/null
+++ b/makefu/2configs/bureautomation/rhasspy.nix
@@ -0,0 +1,41 @@
+{ config, ... }:
+let
+ profiles = "/var/lib/rhasspy";
+ kiosk_id = toString config.users.users.kiosk.uid;
+in
+{
+ virtualisation.oci-containers.containers.rhasspy = {
+ image = "rhasspy/rhasspy:latest";
+
+ environment = {
+ TZ = "Europe/Berlin";
+ #PULSE_SERVER = "unix:/run/user/0/pulse/native";
+ PULSE_SERVER = "tcp:${ config.krebs.build.host.name }:4713";
+
+ };
+
+ ports = [
+ "12101:12101"
+ # "12183:12183"
+ ];
+ #user = kiosk_id;
+
+ volumes = [
+ "/etc/localtime:/etc/localtime:ro"
+ "${profiles}:/profiles"
+ # TODO pulseaudio
+ #"/run/user/${kiosk_id}/pulse/native:/run/user/0/pulse/native"
+ #"${config.users.users.kiosk.home}/.config/pulse/cookie:/root/.config/pulse/cookie:ro"
+ ];
+
+ cmd = [ "--user-profiles" "/profiles" "--profile" "de" ];
+ extraOptions = [
+ "--device=/dev/snd:/dev/snd" "--group-add=audio"
+ "--net=host"
+ ];
+ };
+ systemd.tmpfiles.rules = [
+ "d ${profiles} 0770 root root - -"
+ ];
+ systemd.services.docker-rhasspy.after = [ "desktop-manager.service" ];
+}