made toggles.nix easier to read
This commit is contained in:
parent
8c2af56e3e
commit
31d279eabb
@ -1,4 +1,8 @@
|
||||
let
|
||||
mkEnabled = name: {
|
||||
inherit name;
|
||||
value.enable = true;
|
||||
};
|
||||
mkEnabledProxy = name: {
|
||||
inherit name;
|
||||
value = {
|
||||
@ -6,8 +10,57 @@ let
|
||||
enableProxy = true;
|
||||
};
|
||||
};
|
||||
withProxy = builtins.listToAttrs (
|
||||
map mkEnabledProxy [
|
||||
enableList = func: list: list |> map func |> builtins.listToAttrs;
|
||||
in
|
||||
{
|
||||
mainServer = "server";
|
||||
emacs.enable = true;
|
||||
enableProxy = true;
|
||||
websites.portfolio.enableProxy = true;
|
||||
apps.dictionaries.enable = true;
|
||||
shell = enableList mkEnabled [
|
||||
"tools"
|
||||
"multimedia"
|
||||
];
|
||||
services = enableList mkEnabled [
|
||||
"network"
|
||||
"nvidia"
|
||||
"wireguard"
|
||||
];
|
||||
dev = enableList mkEnabled [
|
||||
"nix"
|
||||
"python"
|
||||
"sh"
|
||||
];
|
||||
units = enableList mkEnabled [
|
||||
"downloadManga"
|
||||
"download"
|
||||
"stream-dl"
|
||||
];
|
||||
scripts = enableList mkEnabled [
|
||||
"run"
|
||||
"download"
|
||||
"split-dir"
|
||||
"ffmpreg"
|
||||
"ffmpeg4discord"
|
||||
"manage-library"
|
||||
"library-report"
|
||||
"update-dns"
|
||||
"stream-dl"
|
||||
"pika-list"
|
||||
"find-dup-episodes"
|
||||
"tuh-activity-logger"
|
||||
];
|
||||
servers =
|
||||
enableList mkEnabled [
|
||||
"qbittorrent"
|
||||
"sabnzbd"
|
||||
"unpackerr"
|
||||
"postgres"
|
||||
"paperless"
|
||||
"stash"
|
||||
]
|
||||
// enableList mkEnabledProxy [
|
||||
"sonarr"
|
||||
"radarr"
|
||||
"lidarr"
|
||||
@ -26,54 +79,5 @@ let
|
||||
"mealie"
|
||||
"readeck"
|
||||
"synapse"
|
||||
]
|
||||
);
|
||||
in
|
||||
{
|
||||
mainServer = "server";
|
||||
emacs.enable = true;
|
||||
apps.dictionaries.enable = true;
|
||||
websites.portfolio.enableProxy = true;
|
||||
enableProxy = true;
|
||||
shell = {
|
||||
tools.enable = true;
|
||||
multimedia.enable = true;
|
||||
};
|
||||
services = {
|
||||
network.enable = true;
|
||||
nvidia.enable = true;
|
||||
wireguard.enable = true;
|
||||
};
|
||||
dev = {
|
||||
nix.enable = true;
|
||||
python.enable = true;
|
||||
sh.enable = true;
|
||||
};
|
||||
scripts = {
|
||||
run.enable = true;
|
||||
download.enable = true;
|
||||
split-dir.enable = true;
|
||||
ffmpreg.enable = true;
|
||||
ffmpeg4discord.enable = true;
|
||||
manage-library.enable = true;
|
||||
library-report.enable = true;
|
||||
update-dns.enable = true;
|
||||
stream-dl.enable = true;
|
||||
pika-list.enable = true;
|
||||
find-dup-episodes.enable = true;
|
||||
tuh-activity-logger.enable = true;
|
||||
};
|
||||
units = {
|
||||
downloadManga.enable = true;
|
||||
download.enable = true;
|
||||
stream-dl.enable = true;
|
||||
};
|
||||
servers = withProxy // {
|
||||
qbittorrent.enable = true;
|
||||
sabnzbd.enable = true;
|
||||
unpackerr.enable = true;
|
||||
postgres.enable = true;
|
||||
paperless.enable = true;
|
||||
# stash.enable = true;
|
||||
};
|
||||
];
|
||||
}
|
||||
|
||||
@ -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"
|
||||
];
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user