games: Conditionally add emulators
This uses a crude arbitrary number to only install them onto machines that can actually run them.
This commit is contained in:
parent
a90fef89c0
commit
8b9eb54806
|
@ -8,7 +8,10 @@
|
|||
];
|
||||
|
||||
sbruder = {
|
||||
games.enable = true;
|
||||
games = {
|
||||
enable = true;
|
||||
performanceIndex = 2;
|
||||
};
|
||||
gui.enable = true;
|
||||
media-proxy.enable = true;
|
||||
mullvad.enable = true;
|
||||
|
|
|
@ -8,7 +8,10 @@
|
|||
];
|
||||
|
||||
sbruder = {
|
||||
games.enable = true;
|
||||
games = {
|
||||
enable = true;
|
||||
performanceIndex = 8;
|
||||
};
|
||||
gui.enable = true;
|
||||
media-proxy.enable = true;
|
||||
mullvad.enable = true;
|
||||
|
|
|
@ -12,7 +12,22 @@
|
|||
default = true;
|
||||
};
|
||||
gui.enable = lib.mkEnableOption "gui";
|
||||
games.enable = lib.mkEnableOption "games";
|
||||
games = {
|
||||
enable = lib.mkEnableOption "games";
|
||||
performanceIndex = lib.mkOption {
|
||||
type = lib.types.int;
|
||||
description = ''
|
||||
Arbitrary number specifying how powerful the machine is. To be
|
||||
replaced by taking into account single- and multi-core CPU and GPU
|
||||
metrics separately should this system not map to my machines in
|
||||
practice.
|
||||
|
||||
* 2: ~ 2014 ultrabook
|
||||
* 8: ~ 2016 quad-core workstation with mid-range GPU
|
||||
'';
|
||||
default = 1;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# All modules are imported but non-essential modules are activated by
|
||||
|
|
|
@ -25,6 +25,8 @@ in
|
|||
"corefonts"
|
||||
"vista-fonts"
|
||||
"wallpaper-unfree" # defined in users/simon/modules/sway.nix
|
||||
"yuzu-ea"
|
||||
"yuzu-mainline" # derivation of icons is not allowed
|
||||
] ++ lib.optionals cfg.allowSoftware [
|
||||
"cups-kyocera-ecosys-m552x-p502x" # exception: the file header says MIT license, but explicitly forbids modifications WTF?
|
||||
"drone-runner-exec" # exception: same as drone.io
|
||||
|
|
|
@ -1,5 +1,13 @@
|
|||
{ lib, nixosConfig, pkgs, ... }:
|
||||
lib.mkIf nixosConfig.sbruder.games.enable {
|
||||
home.packages = [ ]
|
||||
++ lib.optional nixosConfig.sbruder.unfree.allowSoftware pkgs.unstable.osu-lazer-sandbox;
|
||||
let
|
||||
cfg = nixosConfig.sbruder.games;
|
||||
inherit (nixosConfig.sbruder) unfree;
|
||||
in
|
||||
lib.mkIf cfg.enable {
|
||||
home.packages = with pkgs; [ ]
|
||||
++ lib.optionals (cfg.performanceIndex >= 4) [
|
||||
desmume
|
||||
dolphinEmuMaster
|
||||
] ++ lib.optional (unfree.allowAssets && cfg.performanceIndex >= 8) unstable.yuzu-ea
|
||||
++ lib.optional unfree.allowSoftware unstable.osu-lazer-sandbox;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue