refactor: modularize audio-prod, audio, wsl, wine, networking

This commit is contained in:
Youwen Wu 2024-12-22 22:26:41 -08:00
parent 5cbd9e60cb
commit ee6f29eb57
Signed by: youwen
GPG key ID: 865658ED1FE61EC3
9 changed files with 200 additions and 73 deletions

View file

@ -1,14 +1,27 @@
{ lib, config, ... }:
let
cfg = config.liminalOS.system.audio;
in
{
# Enable sound with pipewire.
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = true;
options.liminalOS.system.audio.enable = lib.mkOption {
type = lib.types.bool;
default = config.liminalOS.linux.enable;
description = ''
Whether to set up PipeWire and default audio utilities.
'';
};
services.playerctld.enable = true;
config = {
services.playerctld.enable = lib.mkIf cfg.enable true;
hardware.pulseaudio.enable = lib.mkIf cfg.enable false;
# TODO: move to other file
security.rtkit.enable = true;
services.pipewire = lib.mkIf cfg.enable {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = true;
};
};
}