From ff8f1a1f4ec92908fa42260700b9253a9d53865d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=A9clairevoyant?= <848000+eclairevoyant@users.noreply.github.com> Date: Tue, 26 Mar 2024 15:29:33 -0400 Subject: [PATCH] nixos/pipewire: document example for `services.pipewire.configPackages` --- .../services/desktops/pipewire/pipewire.nix | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/nixos/modules/services/desktops/pipewire/pipewire.nix b/nixos/modules/services/desktops/pipewire/pipewire.nix index cda7742baad3..5c6eba889ebe 100644 --- a/nixos/modules/services/desktops/pipewire/pipewire.nix +++ b/nixos/modules/services/desktops/pipewire/pipewire.nix @@ -258,6 +258,28 @@ in { configPackages = mkOption { type = listOf package; default = []; + example = literalExpression ''[ + (pkgs.writeTextDir "share/pipewire/pipewire.conf.d/10-loopback.conf" ''' + context.modules = [ + { name = libpipewire-module-loopback + args = { + node.description = "Scarlett Focusrite Line 1" + capture.props = { + audio.position = [ FL ] + stream.dont-remix = true + node.target = "alsa_input.usb-Focusrite_Scarlett_Solo_USB_Y7ZD17C24495BC-00.analog-stereo" + node.passive = true + } + playback.props = { + node.name = "SF_mono_in_1" + media.class = "Audio/Source" + audio.position = [ MONO ] + } + } + } + ] + ''') + ]''; description = '' List of packages that provide PipeWire configuration, in the form of `share/pipewire/*/*.conf` files.