System Gen187 @ 2025-05-10-16:39:28 by jonas@comfy-station

This commit is contained in:
Jonas Röger 2025-05-10 16:39:29 +02:00
parent c78554a736
commit 3435d11e32
4 changed files with 64 additions and 12 deletions

View File

@ -40,6 +40,8 @@
hive.yubikey.enable = true; hive.yubikey.enable = true;
hive.wg.client.enable = true; hive.wg.client.enable = true;
hive.wg.client.privateKeyFile = config.sops.secrets.wg-priv.path; hive.wg.client.privateKeyFile = config.sops.secrets.wg-priv.path;
hive.programs.games.enable = true;
hive.programs.games.steam = true;
# system packages # system packages
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
@ -61,7 +63,6 @@
insomnia insomnia
krita krita
libreoffice libreoffice
lutris
mosquitto mosquitto
mpv mpv
mupdf mupdf
@ -85,7 +86,6 @@
nixpkgs.config.permittedInsecurePackages = [ nixpkgs.config.permittedInsecurePackages = [
"electron-25.9.0" # required by obsidian "electron-25.9.0" # required by obsidian
]; ];
programs.steam.enable = true;
services.udev.packages = [pkgs.openhantek6022]; services.udev.packages = [pkgs.openhantek6022];
virtualisation.docker.enable = true; virtualisation.docker.enable = true;

View File

@ -60,12 +60,6 @@
kdenlive kdenlive
krita krita
libreoffice libreoffice
(lutris.override {
extraPkgs = pkgs: [
pkgs.libnghttp2
pkgs.winetricks
];
})
mosquitto mosquitto
mpv mpv
mupdf mupdf
@ -77,22 +71,18 @@
qalculate-qt qalculate-qt
qtpass qtpass
ranger ranger
r2modman
sops sops
spotify spotify
vim vim
vlc vlc
vscode vscode
wget wget
wine
winetricks
zoom zoom
zotero zotero
]; ];
nixpkgs.config.permittedInsecurePackages = [ nixpkgs.config.permittedInsecurePackages = [
"electron-25.9.0" # required by obsidian "electron-25.9.0" # required by obsidian
]; ];
programs.steam.enable = true;
services.udev.packages = [pkgs.openhantek6022]; services.udev.packages = [pkgs.openhantek6022];
virtualisation.docker.enable = true; virtualisation.docker.enable = true;

View File

@ -22,6 +22,7 @@
./hardware/sound.nix ./hardware/sound.nix
./hardware/yubikey.nix ./hardware/yubikey.nix
./networking/wireguard ./networking/wireguard
./programs/games.nix
./services/borg-server.nix ./services/borg-server.nix
./services/nextcloud-instance.nix ./services/nextcloud-instance.nix
./services/virt-manager.nix ./services/virt-manager.nix

View File

@ -0,0 +1,61 @@
{
config,
lib,
pkgs,
...
}: let
cfg = config.hive.programs.games;
in {
options.hive.programs.games = {
enable = lib.mkEnableOption "Enable the games module";
steam = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Enable Steam support.
'';
};
lutris = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Enable Lutris support.
'';
};
r2modman = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Enable R2ModMan support.
'';
};
wine = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Enable Wine support.
'';
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages =
lib.optional cfg.lutris
(pkgs.lutris.override {
extraPkgs = pkgs: [
pkgs.libnghttp2
pkgs.winetricks
];
})
++ lib.optional cfg.r2modman pkgs.r2modman
++ lib.optionals cfg.wine [
pkgs.wine
pkgs.winetricks
];
programs.steam = lib.mkIf cfg.steam {
enable = true;
gamescopeSession.enable = true;
};
};
}