mirror of
https://github.com/ItsDrike/nixdots
synced 2024-11-14 16:17:17 +00:00
Compare commits
4 commits
82a07127b7
...
b130aec6d6
Author | SHA1 | Date | |
---|---|---|---|
ItsDrike | b130aec6d6 | ||
ItsDrike | 04b6f8f64f | ||
ItsDrike | dfd2dd7ad3 | ||
ItsDrike | 1d49318179 |
|
@ -64,9 +64,13 @@
|
||||||
".config/WebCord"
|
".config/WebCord"
|
||||||
".local/share/Smart Code ltd/Stremio"
|
".local/share/Smart Code ltd/Stremio"
|
||||||
".config/obs-studio"
|
".config/obs-studio"
|
||||||
".local/share/PrismLauncher"
|
|
||||||
".config/VirtualBox"
|
".config/VirtualBox"
|
||||||
".local/share/VirtulBox VMs"
|
".local/share/VirtualBox VMs"
|
||||||
|
|
||||||
|
# Games
|
||||||
|
".local/share/PrismLauncher"
|
||||||
|
".local/share/Steam"
|
||||||
|
#".steam"
|
||||||
|
|
||||||
# Tools
|
# Tools
|
||||||
".ssh"
|
".ssh"
|
||||||
|
@ -221,6 +225,7 @@
|
||||||
python.enable = true;
|
python.enable = true;
|
||||||
};
|
};
|
||||||
games = {
|
games = {
|
||||||
|
steam.enable = true;
|
||||||
prismlauncher.enable = true;
|
prismlauncher.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -64,6 +64,7 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
games = {
|
games = {
|
||||||
|
steam.enable = mkEnableOption "Steam client";
|
||||||
prismlauncher.enable = mkEnableOption "PrismLauncher";
|
prismlauncher.enable = mkEnableOption "PrismLauncher";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -3,5 +3,7 @@
|
||||||
./misc.nix
|
./misc.nix
|
||||||
./physlock.nix
|
./physlock.nix
|
||||||
./thunar.nix
|
./thunar.nix
|
||||||
|
./virtualbox.nix
|
||||||
|
./steam.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
19
system/roles/workstation/programs/steam.nix
Normal file
19
system/roles/workstation/programs/steam.nix
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (lib) mkIf;
|
||||||
|
cfg = config.myOptions.home-manager.programs.games.steam;
|
||||||
|
deviceType = config.myOptions.device.roles.type;
|
||||||
|
acceptedTypes = ["laptop" "desktop"];
|
||||||
|
in {
|
||||||
|
config = mkIf ((builtins.elem deviceType acceptedTypes) && cfg.enable) {
|
||||||
|
programs.steam = {
|
||||||
|
enable = true;
|
||||||
|
remotePlay.openFirewall = false;
|
||||||
|
dedicatedServer.openFirewall = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
23
system/roles/workstation/programs/virtualbox.nix
Normal file
23
system/roles/workstation/programs/virtualbox.nix
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (lib) mkIf;
|
||||||
|
cfgUser = config.myOptions.system.username;
|
||||||
|
cfg = config.myOptions.home-manager.programs.applications.virtualbox;
|
||||||
|
deviceType = config.myOptions.device.roles.type;
|
||||||
|
acceptedTypes = ["laptop" "desktop"];
|
||||||
|
in {
|
||||||
|
config = mkIf ((builtins.elem deviceType acceptedTypes) && cfg.enable) {
|
||||||
|
virtualisation.virtualbox.host = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
# Don't include the Qt dependency and GUI app,
|
||||||
|
# if gui is desired, it can be installed separately on a per-user basis
|
||||||
|
headless = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
users.extraGroups.vboxusers.members = [ "${cfgUser}" ];
|
||||||
|
};
|
||||||
|
}
|
Loading…
Reference in a new issue