nixos-config/modules/nixos/mumble.nix

55 lines
No EOL
1.4 KiB
Nix
Executable file

{ config, pkgs, ... }:
{
services.murmur = {
enable = true;
environmentFile = "${config.services.murmur.stateDir}/secrets.env";
openFirewall = true;
autobanAttempts = 3;
};
environment.systemPackages = [ pkgs.mumble ];
services.pipewire.extraConfig.pipewire = {
"97-null-sink"."context.objects" = [
{
factory = "adapter";
args = {
"factory.name" = "support.null-audio-sink";
"node.name" = "Null-Sink";
"node.description" = "Null Sink";
"media.class" = "Audio/Sink";
"audio.position" = "FL,FR";
};
}
{
factory = "adapter";
args = {
"factory.name" = "support.null-audio-sink";
"node.name" = "Null-Source";
"node.description" = "Null Source";
"media.class" = "Audio/Source";
"audio.position" = "FL,FR";
};
}
];
"98-virtual-mic"."context.modules" = [
{
name = "libpipewire-module-loopback";
args = {
"audio.position" = "FL,FR";
"node.description" = "Mumble as Microphone";
"capture.props" = {
# Mumble's output node name.
"node.target" = "Mumble";
"node.passive" = true;
};
"playback.props" = {
"node.name" = "Virtual-Mumble-Microphone";
"media.class" = "Audio/Source";
};
};
}
];
};
}