Commit 134a5a7

HPCesia <me@hpcesia.com>
2026-07-13 13:33:27
Fix DualSense
1 parent c910a65
Changed files (2)
modules/game/alsa-ucm-dualsense-haptics.patch
@@ -0,0 +1,22 @@
+diff --git a/ucm2/USB-Audio/Sony/DualSense-PS5.conf b/ucm2/USB-Audio/Sony/DualSense-PS5.conf
+index d6bfb4a..ed7157a 100644
+--- a/ucm2/USB-Audio/Sony/DualSense-PS5.conf
++++ b/ucm2/USB-Audio/Sony/DualSense-PS5.conf
+@@ -5,6 +5,17 @@ Include.dhw.File "/common/directm.conf"
+ # keep this use case first - wine compatibility
+ Macro.0.DirectUseCase { Id="Direct" PlaybackChannels=4 CaptureChannels=2 }
+
++If.setvol.Prepend.SectionUseCase."Direct".Config {
++       SectionVerb {
++               EnableSequence [
++                       cset "name='PCM Playback Volume' 100"
++               ]
++       }
++       SectionDevice."Direct".Value {
++               PlaybackMixerElem "PCM"
++       }
++}
++
+ If.default.Prepend.SectionUseCase."Default" {
+        Comment "Default"
+        File "/USB-Audio/Sony/DualSense-PS5-HiFi.conf"
modules/game/utils.nix
@@ -6,7 +6,18 @@
       ];
     };
 
-    nixos = {pkgs, ...}: {
+    nixos = {pkgs, ...}: let
+      # Fix DualSense haptics until https://github.com/alsa-project/alsa-ucm-conf/issues/677 been resolved.
+      alsa-ucm-conf-dualsense-haptics = with pkgs;
+        alsa-ucm-conf.overrideAttrs {
+          # https://github.com/alsa-project/alsa-ucm-conf/issues/677#issuecomment-3755019801
+          patches = [
+            ./alsa-ucm-dualsense-haptics.patch
+          ];
+        };
+    in {
+      environment.sessionVariables.ALSA_CONFIG_UCM2 = "${alsa-ucm-conf-dualsense-haptics}/share/alsa/ucm2";
+
       programs.gamemode = {
         enable = true;
       };