From 787b5cd7b973f0e1670b577d0aacf491d24a7760 Mon Sep 17 00:00:00 2001 From: Sander van der Burg Date: Wed, 3 Mar 2010 14:01:13 +0000 Subject: [PATCH] Implemented enableOSSEmulation option, which can be used to disable OSS emulation. On my home PC OSS emulation gives me a lot of annoying problems svn path=/nixos/trunk/; revision=20351 --- modules/services/audio/alsa.nix | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/modules/services/audio/alsa.nix b/modules/services/audio/alsa.nix index 78d6a0044181..81dd0ede208b 100644 --- a/modules/services/audio/alsa.nix +++ b/modules/services/audio/alsa.nix @@ -26,6 +26,13 @@ in ''; merge = mergeEnableOption; }; + + enableOSSEmulation = mkOption { + default = true; + description = '' + Whether to enable ALSA OSS emulation (with certain cards sound mixing may not work!). + ''; + }; }; @@ -53,9 +60,14 @@ in mkdir -m 0755 -p $(dirname ${soundState}) # Load some additional modules. - for mod in snd_pcm_oss; do - ${config.system.sbin.modprobe}/sbin/modprobe $mod || true - done + + ${optionalString config.sound.enableOSSEmulation + '' + for mod in snd_pcm_oss; do + ${config.system.sbin.modprobe}/sbin/modprobe $mod || true + done + '' + } # Restore the sound state. ${alsaUtils}/sbin/alsactl -f ${soundState} restore