made toggles.nix easier to read
This commit is contained in:
parent
8c2af56e3e
commit
31d279eabb
@ -1,4 +1,8 @@
|
|||||||
let
|
let
|
||||||
|
mkEnabled = name: {
|
||||||
|
inherit name;
|
||||||
|
value.enable = true;
|
||||||
|
};
|
||||||
mkEnabledProxy = name: {
|
mkEnabledProxy = name: {
|
||||||
inherit name;
|
inherit name;
|
||||||
value = {
|
value = {
|
||||||
@ -6,8 +10,57 @@ let
|
|||||||
enableProxy = true;
|
enableProxy = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
withProxy = builtins.listToAttrs (
|
enableList = func: list: list |> map func |> builtins.listToAttrs;
|
||||||
map mkEnabledProxy [
|
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"
|
"sonarr"
|
||||||
"radarr"
|
"radarr"
|
||||||
"lidarr"
|
"lidarr"
|
||||||
@ -26,54 +79,5 @@ let
|
|||||||
"mealie"
|
"mealie"
|
||||||
"readeck"
|
"readeck"
|
||||||
"synapse"
|
"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;
|
emacs.enable = true;
|
||||||
apps = {
|
enableContainers = true;
|
||||||
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;
|
|
||||||
};
|
|
||||||
servers.drpp.enable = 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