51 lines
896 B
Nix
51 lines
896 B
Nix
let
|
|
mkEnabled = name: {
|
|
inherit name;
|
|
value.enable = true;
|
|
};
|
|
mkEnabledWithProxy = name: {
|
|
inherit name;
|
|
value = {
|
|
enable = true;
|
|
enableProxy = true;
|
|
};
|
|
};
|
|
enableList = func: list: list |> map func |> builtins.listToAttrs;
|
|
in
|
|
{
|
|
emacs.enable = true;
|
|
enableProxy = true;
|
|
websites.portfolio.enableProxy = true;
|
|
apps = enableList mkEnabled [
|
|
"dictionaries"
|
|
];
|
|
services = enableList mkEnabled [
|
|
"network"
|
|
];
|
|
shell = enableList mkEnabled [
|
|
"tools"
|
|
"multimedia"
|
|
];
|
|
dev = enableList mkEnabled [
|
|
"nix"
|
|
"python"
|
|
"sh"
|
|
];
|
|
units = enableList mkEnabled [
|
|
"download"
|
|
"stream-dl"
|
|
];
|
|
scripts = enableList mkEnabled [
|
|
"split-dir"
|
|
"pika-list"
|
|
"update-dns"
|
|
];
|
|
servers =
|
|
enableList mkEnabled [
|
|
"qbittorrent"
|
|
]
|
|
// enableList mkEnabledWithProxy [
|
|
"audiobookshelf"
|
|
];
|
|
}
|