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'\""; +}