{ pkgs, ... }: { programs.steam = { enable = true; remotePlay.openFirewall = true; dedicatedServer.openFirewall = true; }; programs.gamemode.enable = true; services.udev.extraRules = '' # DualSense: тачпад не должен работать как мышь рабочего стола. # Steam Input/SDL читают геймпад (включая тачпад) через hidraw, # так что в играх он останется доступен как тачпад контроллера. SUBSYSTEM=="input", ATTRS{name}=="Sony Interactive Entertainment DualSense Wireless Controller Touchpad", ENV{LIBINPUT_IGNORE_DEVICE}="1", ENV{ID_INPUT_MOUSE}="0", ENV{ID_INPUT_TOUCHPAD}="0" SUBSYSTEM=="input", ATTRS{name}=="DualSense Wireless Controller Touchpad", ENV{LIBINPUT_IGNORE_DEVICE}="1", ENV{ID_INPUT_MOUSE}="0", ENV{ID_INPUT_TOUCHPAD}="0" ''; environment.systemPackages = with pkgs; [ dualsensectl protonup-qt prismlauncher lutris winetricks wineWow64Packages.stagingFull dxvk vkd3d-proton mangohud gamemode ]; }