2025-02-06 11:23:42 -07:00
|
|
|
{ pkgs, config, makeEnable, ... }:
|
2025-02-06 03:51:23 -07:00
|
|
|
makeEnable config "myModules.wyoming" false {
|
2025-02-06 11:23:42 -07:00
|
|
|
environment.systemPackages = with pkgs; [
|
|
|
|
|
alsa-utils
|
|
|
|
|
];
|
2025-02-06 19:49:14 -07:00
|
|
|
systemd.services."wyoming-satellite".path = with pkgs; [pipewire pulseaudio];
|
2025-02-06 03:51:23 -07:00
|
|
|
services.wyoming = {
|
|
|
|
|
satellite = {
|
|
|
|
|
enable = true;
|
|
|
|
|
user = "imalison";
|
2025-02-06 22:53:02 -07:00
|
|
|
uri = "tcp://0.0.0.0:10700";
|
2025-02-06 11:23:42 -07:00
|
|
|
microphone = {
|
2025-02-06 22:53:02 -07:00
|
|
|
# command = "pw-record --channels 1 -";
|
|
|
|
|
command = "pacat --record --raw --format=s16le --channels=1 --rate=16000";
|
2025-02-06 11:23:42 -07:00
|
|
|
};
|
2025-02-06 12:04:29 -07:00
|
|
|
extraArgs = [
|
|
|
|
|
"--wake-uri=tcp://0.0.0.0:10400"
|
|
|
|
|
"--wake-word-name=ok_nabu"
|
2025-02-07 18:30:11 -07:00
|
|
|
"--awake-wav=${./notification-sound.wav}"
|
2025-02-06 12:04:29 -07:00
|
|
|
];
|
2025-02-06 03:51:23 -07:00
|
|
|
};
|
2025-02-06 19:49:14 -07:00
|
|
|
openwakeword = {
|
|
|
|
|
enable = true;
|
2025-11-21 11:42:37 -08:00
|
|
|
# wyoming-openwakeword >=2.0 eagerly loads bundled models, so the
|
|
|
|
|
# previous preloadModels setting is no longer available.
|
2025-02-06 19:49:14 -07:00
|
|
|
uri = "tcp://0.0.0.0:10400";
|
|
|
|
|
};
|
2025-02-06 22:53:02 -07:00
|
|
|
|
2025-02-06 19:49:14 -07:00
|
|
|
faster-whisper.servers."${config.networking.hostName}-whisper" = {
|
2025-02-06 03:51:23 -07:00
|
|
|
enable = true;
|
|
|
|
|
uri = "tcp://0.0.0.0:10300";
|
2025-02-07 01:24:27 -07:00
|
|
|
device = "auto";
|
2025-02-06 03:51:23 -07:00
|
|
|
language = "en";
|
2025-02-06 17:51:24 -07:00
|
|
|
model = "turbo";
|
2025-02-06 03:51:23 -07:00
|
|
|
};
|
2025-02-06 22:53:02 -07:00
|
|
|
|
2025-02-06 19:49:14 -07:00
|
|
|
piper.servers."${config.networking.hostName}-piper" = {
|
2025-02-06 03:51:23 -07:00
|
|
|
enable = true;
|
|
|
|
|
uri = "tcp://0.0.0.0:10200";
|
|
|
|
|
voice = "en-us-ryan-medium";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
}
|