From 72d057a4c1e511158ca930abac5824b1aaaadb0e Mon Sep 17 00:00:00 2001 From: xunuwu Date: Sun, 14 Sep 2025 17:38:17 +0200 Subject: [PATCH] g920 support on nixdesk --- hosts/nixdesk/default.nix | 1 + sys/profiles/hardware/g920.nix | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 sys/profiles/hardware/g920.nix diff --git a/hosts/nixdesk/default.nix b/hosts/nixdesk/default.nix index 547acb3..47cd643 100644 --- a/hosts/nixdesk/default.nix +++ b/hosts/nixdesk/default.nix @@ -51,6 +51,7 @@ hardware.steam-hardware hardware.bluetooth hardware.qmk + hardware.g920 network.networkd network.avahi diff --git a/sys/profiles/hardware/g920.nix b/sys/profiles/hardware/g920.nix new file mode 100644 index 0000000..646c61f --- /dev/null +++ b/sys/profiles/hardware/g920.nix @@ -0,0 +1,25 @@ +{pkgs, ...}: { + # hardware.usb-modeswitch.enable = true; + hardware.xpadneo.enable = true; + + environment.systemPackages = with pkgs; [ + oversteer + ]; + + environment.etc = { + # Creates /etc/usb_modeswitch.d/046d:c261 + "usb_modeswitch.d/046d:c261" = { + text = '' + # Logitech G920 Racing Wheel + DefaultVendor=046d + DefaultProduct=c261 + MessageEndpoint=01 + ResponseEndpoint=01 + TargetClass=0x03 + MessageContent="0f00010142" + ''; + }; + }; + + services.udev.extraRules = "ATTR{idVendor}==\"046d\", ATTR{idProduct}==\"c261\", RUN+=\"${pkgs.usb-modeswitch}/bin/usb_modeswitch -c '/etc/usb_modeswitch.d/046d\:c261'\""; +}