Simon Bruder
c1283b6ffa
Fixes #27 This adds the `sbruder.full` option (enabled by default), which disables some otherwise enabled packages/modules when disabled. When setting it to false on a full gui system it reduces the size of the system closure by over 50%. It is intended for systems with low (main) disk space.
30 lines
770 B
Nix
30 lines
770 B
Nix
{ config, lib, pkgs, ... }:
|
|
let
|
|
bluetoothSupport = config.sbruder.full;
|
|
in
|
|
lib.mkIf config.sbruder.gui.enable {
|
|
sound.enable = true;
|
|
hardware.pulseaudio = {
|
|
enable = true;
|
|
daemon.config = {
|
|
"default-sample-format" = "s16le";
|
|
"default-sample-rate" = "48000";
|
|
"alternate-sample-rate" = "44100";
|
|
"resample-method" = "soxr-hq";
|
|
"flat-volumes" = "no";
|
|
};
|
|
} // lib.optionalAttrs bluetoothSupport {
|
|
package = pkgs.pulseaudioFull;
|
|
extraModules = [
|
|
pkgs.pulseaudio-modules-bt # Non-standard codecs for bluetooth
|
|
];
|
|
};
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
pavucontrol
|
|
];
|
|
|
|
hardware.bluetooth.enable = lib.mkDefault bluetoothSupport;
|
|
services.blueman.enable = lib.mkDefault bluetoothSupport;
|
|
}
|