{ config, pkgs, ... }: { # === Gaming / Emulation === # Emulators, Steam, Wine for Windows apps, and Xbox One controller support. # Modern kernels have xpad built-in for Xbox One controllers. # User is added to the "input" group below for controller permissions. # Steam — proper NixOS module (sets up FHS, udev, etc.) programs.steam = { enable = true; remotePlay.openFirewall = true; # Steam Remote Play dedicatedServer.openFirewall = true; # Factorio headless etc. }; environment.systemPackages = with pkgs; [ # Windows apps via Wine (Logos Bible Software, etc.) wineWow64Packages.stable # Retroarch + cores (NES/SNES/PS1) retroarch # Standalone PS2 emulator pcsx2 # Standalone PSP emulator ppsspp-sdl ]; # Add user to input group for controller access # (xpad kernel module handles Xbox One controllers automatically) users.users.sscoble = { extraGroups = [ "input" ]; }; }