made toggles.nix easier to read

This commit is contained in:
2025-04-17 12:25:09 -06:00
parent 8c2af56e3e
commit 31d279eabb
2 changed files with 108 additions and 97 deletions

View File

@@ -1,49 +1,56 @@
let
mkEnabled = name: {
inherit name;
value.enable = true;
};
enableList = func: list: list |> map func |> builtins.listToAttrs;
in
{
enableContainers = true;
emacs.enable = true;
apps = {
art.enable = true;
piano.enable = true;
dictionaries.enable = true;
fonts.enable = true;
gaming.enable = true;
switch.enable = true;
internet.enable = true;
multimedia.enable = true;
office.enable = true;
misc.enable = true;
};
dev = {
cc.enable = true;
docker.enable = true;
julia.enable = true;
rust.enable = true;
haskell.enable = true;
nix.enable = true;
python.enable = true;
gameDev.enable = true;
sh.enable = true;
javascript.enable = true;
};
shell = {
exercism.enable = true;
multimedia.enable = true;
tools.enable = true;
};
services = {
network.enable = true;
nvidia.enable = true;
printing.enable = true;
sound.enable = true;
};
scripts = {
tasks.enable = true;
run.enable = true;
split-dir.enable = true;
download.enable = true;
ffmpreg.enable = true;
ffmpeg4discord.enable = true;
update-org-agenda-cache.enable = true;
};
enableContainers = true;
servers.drpp.enable = true;
apps = enableList mkEnabled [
"art"
"piano"
"dictionaries"
"fonts"
"gaming"
"switch"
"internet"
"multimedia"
"office"
"misc"
];
dev = enableList mkEnabled [
"cc"
"docker"
"julia"
"rust"
"haskell"
"nix"
"python"
"gameDev"
"sh"
"javascript"
];
shell = enableList mkEnabled [
"exercism"
"multimedia"
"tools"
];
services = enableList mkEnabled [
"network"
"nvidia"
"printing"
"sound"
];
scripts = enableList mkEnabled [
"tasks"
"run"
"split-dir"
"download"
"ffmpreg"
"ffmpeg4discord"
"update-org-agenda-cache"
];
}