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" ]; }