diff --git a/flake.lock b/flake.lock index b19aa44..6379956 100644 --- a/flake.lock +++ b/flake.lock @@ -1244,11 +1244,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-Hripi5dnBGegbRPwCt1+a3oH6b1AQxEoJXodiLE8KKw=", - "path": "/nix/store/hkcf7vkprn4xa45bzn42v4f8a6faxq51-source/home-manager", + "path": "/nix/store/vfzav1xmjdxk3d3p8ppph5wnrr7wbrbd-source/home-manager", "type": "path" }, "original": { - "path": "/nix/store/hkcf7vkprn4xa45bzn42v4f8a6faxq51-source/home-manager", + "path": "/nix/store/vfzav1xmjdxk3d3p8ppph5wnrr7wbrbd-source/home-manager", "type": "path" } }, @@ -1852,11 +1852,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-QahOuoQdXshu38W5uO7hLhG/yFkT7S2l8Dxicq0wdGk=", - "path": "/nix/store/di2lykzh84qyw3wqvv3alxrnqazbn7r2-source/programs", + "path": "/nix/store/s1mvgsas6biphj2z33q2g3bqyqwgv5yd-source/programs", "type": "path" }, "original": { - "path": "/nix/store/di2lykzh84qyw3wqvv3alxrnqazbn7r2-source/programs", + "path": "/nix/store/s1mvgsas6biphj2z33q2g3bqyqwgv5yd-source/programs", "type": "path" } }, @@ -1926,11 +1926,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-0Ztx5DVQ2I7hvCK/qjGa4XTdRgbzM8rhf19m0al8lVM=", - "path": "/nix/store/di2lykzh84qyw3wqvv3alxrnqazbn7r2-source/services/sddm", + "path": "/nix/store/s1mvgsas6biphj2z33q2g3bqyqwgv5yd-source/services/sddm", "type": "path" }, "original": { - "path": "/nix/store/di2lykzh84qyw3wqvv3alxrnqazbn7r2-source/services/sddm", + "path": "/nix/store/s1mvgsas6biphj2z33q2g3bqyqwgv5yd-source/services/sddm", "type": "path" } }, @@ -1961,12 +1961,12 @@ }, "locked": { "lastModified": 1, - "narHash": "sha256-eqfmhqUf1LyUU79MkozVeSM5D061QuV3/tT9cQKRfqQ=", - "path": "/nix/store/hkcf7vkprn4xa45bzn42v4f8a6faxq51-source/system-config", + "narHash": "sha256-BrYaUqveQ37vkkuoYg5NOABTphw6R7ZjaUEDPqMJnUY=", + "path": "/nix/store/vfzav1xmjdxk3d3p8ppph5wnrr7wbrbd-source/system-config", "type": "path" }, "original": { - "path": "/nix/store/hkcf7vkprn4xa45bzn42v4f8a6faxq51-source/system-config", + "path": "/nix/store/vfzav1xmjdxk3d3p8ppph5wnrr7wbrbd-source/system-config", "type": "path" } }, diff --git a/system-config/configuration/homebox/default.nix b/system-config/configuration/homebox/default.nix index b4bd19f..dec9b1a 100644 --- a/system-config/configuration/homebox/default.nix +++ b/system-config/configuration/homebox/default.nix @@ -242,6 +242,8 @@ ollama.enable = true; + wyoming.enable = true; + minecraft.enable = true; steam.enable = false; diff --git a/system-config/services/default.nix b/system-config/services/default.nix index 0cc88a9..fa4103e 100644 --- a/system-config/services/default.nix +++ b/system-config/services/default.nix @@ -2,6 +2,7 @@ imports = [ ./ollama + ./wyoming ./openssh ./pipewire ./containers diff --git a/system-config/services/wyoming/default.nix b/system-config/services/wyoming/default.nix new file mode 100644 index 0000000..b63634d --- /dev/null +++ b/system-config/services/wyoming/default.nix @@ -0,0 +1,52 @@ +{ config, lib, ... }: { + + options.sysconfig.opts.wyoming.enable = lib.options.mkOption { + type = lib.types.bool; + default = false; + }; + + config = lib.mkIf config.sysconfig.opts.wyoming.enable { + + services.wyoming = { + + piper = { + + servers.piper = { + enable = true; + voice = "en-us-ryan-medium"; + uri = "tcp://0.0.0.0:11435"; + }; + }; + + openwakeword = { + enable = true; + uri = "tcp://0.0.0.0:11432"; + preloadModels = [ + "alexa" + "hey_jarvis" + "ok_nabu" + ]; + threshold = 0.5; + customModelsDirectories = [ + #./wake_words + ]; + }; + + faster-whisper = { + servers.whisper = { + enable = true; + #device = "cuda"; + language = "en"; + model = "medium.en"; + uri = "tcp://0.0.0.0:11433"; + }; + }; + + satellite = { + enable = true; + uri = "tcp://0.0.0.0:11431"; + user = "nathan"; + }; + }; + }; +}