Revert "nixos/pipewire: minor refactor" (#537857)

This commit is contained in:
K900
2026-07-02 15:59:44 +00:00
committed by GitHub
@@ -11,10 +11,9 @@ let
inherit (lib) maintainers teams;
inherit (lib.attrsets)
attrByPath
attrsToList
concatMapAttrs
filterAttrs
mapAttrs'
nameValuePair
;
inherit (lib.lists) flatten optional optionals;
inherit (lib.modules) mkIf mkRemovedOptionModule;
@@ -24,7 +23,7 @@ let
mkOption
mkPackageOption
;
inherit (lib.strings) hasPrefix optionalString;
inherit (lib.strings) concatMapStringsSep hasPrefix optionalString;
inherit (lib.types)
attrsOf
bool
@@ -33,6 +32,17 @@ let
;
json = pkgs.formats.json { };
mapToFiles =
location: config:
concatMapAttrs (name: value: {
"share/pipewire/${location}.conf.d/${name}.conf" = json.generate "${name}" value;
}) config;
extraConfigPkgFromFiles =
locations: filesSet:
pkgs.runCommand "pipewire-extra-config" { } ''
mkdir -p ${concatMapStringsSep " " (l: "$out/share/pipewire/${l}.conf.d") locations}
${concatMapStringsSep ";" ({ name, value }: "ln -s ${value} $out/${name}") (attrsToList filesSet)}
'';
cfg = config.services.pipewire;
enable32BitAlsaPlugins =
cfg.alsa.support32Bit && pkgs.stdenv.hostPlatform.isx86_64 && pkgs.pkgsi686Linux.pipewire != null;
@@ -48,14 +58,11 @@ let
configPackages = cfg.configPackages;
extraConfigPkg = pkgs.linkFarm "pipewire-extra-config" (
concatMapAttrs (
location: config:
mapAttrs' (
name: value:
nameValuePair "share/pipewire/${location}.conf.d/${name}.conf" (json.generate name value)
) config
) cfg.extraConfig
extraConfigPkg = extraConfigPkgFromFiles [ "pipewire" "client" "jack" "pipewire-pulse" ] (
mapToFiles "pipewire" cfg.extraConfig.pipewire
// mapToFiles "client" cfg.extraConfig.client
// mapToFiles "jack" cfg.extraConfig.jack
// mapToFiles "pipewire-pulse" cfg.extraConfig.pipewire-pulse
);
configs = pkgs.buildEnv {