34 lines
902 B
Nix
34 lines
902 B
Nix
{ config, lib, pkgs, ... }:
|
|
|
|
with lib;
|
|
with lib.my;
|
|
let cfg = config.modules.desktop.gaming.emulators;
|
|
in {
|
|
options.modules.desktop.gaming.emulators = {
|
|
ds.enable = mkBoolOpt false;
|
|
gb.enable = mkBoolOpt false;
|
|
gba.enable = mkBoolOpt false;
|
|
gamecube.enable = mkBoolOpt false;
|
|
ps2.enable = mkBoolOpt false;
|
|
ps3.enable = mkBoolOpt false;
|
|
psp.enable = mkBoolOpt false;
|
|
snes.enable = mkBoolOpt false;
|
|
wii.enable = mkBoolOpt false;
|
|
};
|
|
|
|
config = {
|
|
user.packages = with pkgs; [
|
|
(mkIf cfg.ps2.enable pcsx2)
|
|
(mkIf cfg.ps3.enable rpcs3)
|
|
(mkIf cfg.psp.enable ppsspp)
|
|
(mkIf cfg.ds.enable desmume)
|
|
(mkIf (cfg.gba.enable ||
|
|
cfg.gb.enable ||
|
|
cfg.snes.enable)
|
|
higan)
|
|
(mkIf (cfg.wii.enable ||
|
|
cfg.gamecube.enable)
|
|
dolphin-emu)
|
|
];
|
|
};
|
|
} |