grimm-nix-shared/default.nix

71 lines
1.6 KiB
Nix
Raw Normal View History

2024-03-16 10:07:36 +01:00
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.grimmShared;
in {
options.grimmShared = {
enable = mkEnableOption "grimm-shared-modules";
2024-03-16 12:03:33 +01:00
locale = mkOption {
2024-03-16 10:07:36 +01:00
type = types.bool;
default = true;
description = "Sets german units but english language";
};
2024-03-16 12:03:33 +01:00
printing = mkOption {
type = types.bool;
2024-03-16 12:19:02 +01:00
default = false;
2024-03-16 12:03:33 +01:00
description = "Enables print and scan related options";
};
2024-03-16 12:19:02 +01:00
portals = mkOption {
type = types.bool;
default = false;
description = "Enables portals for wlr, gtk and kde as well as fixes fonts";
};
2024-03-16 12:52:08 +01:00
network = mkOption {
type = types.bool;
default = false;
description = "Enables network manager, wifi and bluetooth";
};
2024-03-16 13:49:20 +01:00
2024-03-16 13:51:38 +01:00
tooling = {
2024-03-16 13:49:20 +01:00
enable = mkEnableOption "grimm-tooling";
git_user = mkOption {
type = types.str;
default = "Grimmauld";
description = "Username for git to use";
};
git_email = mkOption {
type = types.str;
default = "${config.grimmShared.tooling.git_user}@grimmauld.de";
description = "Email for git to use";
};
};
2024-03-16 15:31:18 +01:00
sound = mkOption {
type = types.bool;
default = false;
description = "whether to enable sound";
};
2024-03-16 17:48:41 +01:00
graphical = mkOption {
type = types.bool;
default = false;
description = "whether to enable graphical components";
2024-03-16 17:50:30 +01:00
};
2024-03-16 10:07:36 +01:00
};
2024-03-16 12:03:33 +01:00
imports = [
./modules/localisation.nix
./modules/printing.nix
2024-03-16 12:19:02 +01:00
./modules/portals.nix
2024-03-16 12:52:08 +01:00
./modules/networking.nix
2024-03-16 13:49:20 +01:00
./modules/toolchains.nix
2024-03-16 15:38:45 +01:00
./modules/sound.nix
2024-03-16 12:03:33 +01:00
];
2024-03-16 10:07:36 +01:00
}