Add emulation module (steam, wine, retroarch, pcsx2, ppsspp) + pi config
This commit is contained in:
parent
b00ae1feb3
commit
3e2fe60219
4 changed files with 107 additions and 4 deletions
32
modules/emulation.nix
Normal file
32
modules/emulation.nix
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
{ 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" ];
|
||||
};
|
||||
}
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [ ../hardware-configuration.nix ];
|
||||
imports = [ ../hardware-configuration.nix ./emulation.nix ];
|
||||
|
||||
# === System Packages ===
|
||||
environment.systemPackages = with pkgs; [
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue