feat(amd): add Logitech racing wheel udev rules from oversteer

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Harald Hoyer 2026-02-16 15:22:09 +01:00
parent 61cb051f44
commit fd2c7e1867

View file

@ -122,6 +122,78 @@ with lib.metacfg;
services.ratbagd.enable = true; services.ratbagd.enable = true;
# Logitech racing wheel permissions (oversteer)
services.udev.extraRules = ''
# Match Logitech HID devices for racing wheel support
ACTION!="unbind", ACTION!="remove", SUBSYSTEM=="hid", ATTRS{idVendor}=="046d", GOTO="logitech-rules"
GOTO="end"
LABEL="logitech-rules"
DRIVER=="logitech", GOTO="logitech-driver"
DRIVER!="logitech-hidpp-device", GOTO="end"
# Logitech G PRO Racing Wheel for PlayStation and PC
ATTRS{idProduct}=="c268", RUN+="/bin/sh -c 'cd %S%p; chmod 666 range leds/*/brightness; chmod 777 leds/ leds/*'"
# Logitech G PRO Racing Wheel for Xbox One and PC
ATTRS{idProduct}=="c272", RUN+="/bin/sh -c 'cd %S%p; chmod 666 range leds/*/brightness; chmod 777 leds/ leds/*'"
# Logitech G923 Racing Wheel for Xbox One and PC
ATTRS{idProduct}=="c26e", RUN+="/bin/sh -c 'cd %S%p; chmod 666 range leds/*/brightness; chmod 777 leds/ leds/*'"
# Logitech G920 Driving Force Racing Wheel
ATTRS{idProduct}=="c262", RUN+="/bin/sh -c 'cd %S%p; chmod 666 range'"
GOTO="end"
LABEL="logitech-driver"
# Logitech G923 Racing Wheel for PlayStation 4 and PC
ATTRS{idProduct}=="c266", RUN+="/bin/sh -c 'cd %S%p; chmod 666 alternate_modes combine_pedals range gain autocenter spring_level damper_level friction_level ffb_leds peak_ffb_level leds/*/brightness; chmod 777 leds/ leds/*'"
# Logitech G29 Driving Force Racing Wheel
ATTRS{idProduct}=="c24f", RUN+="/bin/sh -c 'cd %S%p; chmod 666 alternate_modes combine_pedals range gain autocenter spring_level damper_level friction_level ffb_leds peak_ffb_level leds/*/brightness; chmod 777 leds/ leds/*'"
# Logitech G27 Driving Force Racing Wheel
ATTRS{idProduct}=="c29b", RUN+="/bin/sh -c 'cd %S%p; chmod 666 alternate_modes combine_pedals range gain autocenter spring_level damper_level friction_level ffb_leds peak_ffb_level leds/*/brightness; chmod 777 leds/ leds/*'"
# Logitech G25 Driving Force Racing Wheel
ATTRS{idProduct}=="c299", RUN+="/bin/sh -c 'cd %S%p; chmod 666 alternate_modes combine_pedals range gain autocenter spring_level damper_level friction_level ffb_leds peak_ffb_level'"
# Logitech Driving Force GT Racing Wheel
ATTRS{idProduct}=="c29a", RUN+="/bin/sh -c 'cd %S%p; chmod 666 alternate_modes combine_pedals range gain autocenter spring_level damper_level friction_level ffb_leds peak_ffb_level'"
# Logitech Driving Force Pro Racing Wheel
ATTRS{idProduct}=="c298", RUN+="/bin/sh -c 'cd %S%p; chmod 666 alternate_modes combine_pedals range gain autocenter spring_level damper_level friction_level ffb_leds peak_ffb_level'"
# Logitech Driving Force Racing Wheel
ATTRS{idProduct}=="c294", RUN+="/bin/sh -c 'cd %S%p; chmod 666 alternate_modes combine_pedals range gain autocenter spring_level damper_level friction_level ffb_leds peak_ffb_level'"
# Logitech Momo Force Racing Wheel
ATTRS{idProduct}=="c295", RUN+="/bin/sh -c 'cd %S%p; chmod 666 combine_pedals range gain autocenter spring_level damper_level friction_level ffb_leds peak_ffb_level'"
# Logitech MOMO Racing USB
ATTRS{idProduct}=="ca03", RUN+="/bin/sh -c 'cd %S%p; chmod 666 combine_pedals range gain autocenter spring_level damper_level friction_level ffb_leds peak_ffb_level'"
# Logitech WingMan Formula Force GP USB
ATTRS{idProduct}=="c293", RUN+="/bin/sh -c 'cd %S%p; chmod 666 combine_pedals range gain autocenter spring_level damper_level friction_level ffb_leds peak_ffb_level'"
# Logitech Racing Wheel USB
ATTRS{idProduct}=="ca04", RUN+="/bin/sh -c 'cd %S%p; chmod 666 combine_pedals range'"
# Logitech WingMan Formula GP
ATTRS{idProduct}=="c20e", RUN+="/bin/sh -c 'cd %S%p; chmod 666 combine_pedals range'"
# Logitech WingMan Formula (Yellow) (USB)
ATTRS{idProduct}=="c202", RUN+="/bin/sh -c 'cd %S%p; chmod 666 range'"
# Logitech Speed Force Wireless
ATTRS{idProduct}=="c29c", RUN+="/bin/sh -c 'cd %S%p; chmod 666 combine_pedals range'"
LABEL="end"
'';
virtualisation = { virtualisation = {
libvirtd.enable = true; libvirtd.enable = true;
docker.enable = true; docker.enable = true;