2024-03-21 05:23:38 +00:00
|
|
|
{ ... }:
|
2024-02-25 10:36:21 +00:00
|
|
|
{
|
|
|
|
sane.programs.wireplumber = {
|
2024-02-25 17:11:48 +00:00
|
|
|
sandbox.method = "bwrap";
|
|
|
|
sandbox.whitelistDbus = [
|
2024-04-23 04:16:35 +00:00
|
|
|
"system" #< so it can request better scheduling from rtkit
|
|
|
|
"user" #< TODO: is this needed?
|
2024-02-25 17:11:48 +00:00
|
|
|
];
|
|
|
|
sandbox.whitelistAudio = true;
|
|
|
|
sandbox.extraPaths = [
|
|
|
|
# i think these video inputs (for e.g. webcam) are optional.
|
|
|
|
"/dev/media0"
|
|
|
|
"/dev/snd"
|
|
|
|
"/dev/video0"
|
|
|
|
"/dev/video1"
|
2024-03-02 00:14:21 +00:00
|
|
|
"/dev/video2"
|
2024-02-25 17:11:48 +00:00
|
|
|
"/run/systemd"
|
|
|
|
"/run/udev"
|
|
|
|
"/sys/class/sound"
|
|
|
|
"/sys/class/video4linux"
|
|
|
|
"/sys/devices"
|
|
|
|
];
|
2024-04-23 04:16:35 +00:00
|
|
|
sandbox.extraConfig = [
|
|
|
|
# needed if i want rtkit to grant this higher scheduling priority
|
|
|
|
"--sane-sandbox-keep-namespace" "pid"
|
|
|
|
];
|
2024-02-25 17:11:48 +00:00
|
|
|
|
2024-03-03 04:43:11 +00:00
|
|
|
suggestedPrograms = [ "alsa-ucm-conf" ];
|
|
|
|
|
2024-02-25 10:36:21 +00:00
|
|
|
persist.byStore.plaintext = [
|
|
|
|
# persist per-device volume levels
|
|
|
|
".local/state/wireplumber"
|
|
|
|
];
|
|
|
|
|
|
|
|
services.wireplumber = {
|
|
|
|
description = "wireplumber: pipewire Multimedia Service Session Manager";
|
2024-03-21 16:02:06 +00:00
|
|
|
depends = [ "pipewire" ];
|
|
|
|
partOf = [ "sound" ];
|
2024-03-21 15:05:23 +00:00
|
|
|
command = "wireplumber";
|
2024-02-25 10:36:21 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|