refactor: condensed the lists

This commit is contained in:
Nick 2024-11-03 20:50:30 -06:00
parent f1811cec2e
commit d369bfaa5c

View file

@ -1,13 +1,25 @@
let let
folderModules = [ modulesPath = ./modules;
importFolder = name: {"${name}" = import (modulesPath + "/${name}");};
importFile = name: {"${name}" = import (modulesPath + "/${name}.nix");};
importMisc = name: {"misc-${name}" = import (modulesPath + "/misc/${name}.nix");};
modules =
builtins.foldl' (
emptySet: importedModules:
emptySet // importedModules
) {} (map importFolder [
"bat" "bat"
"firefox" "firefox"
"obs-studio" "obs-studio"
"qbittorrent" "qbittorrent"
"steam" "steam"
]; ])
// builtins.foldl' (
fileModules = [ emptySet: importedModules:
emptySet // importedModules
) {} (map importFile [
"bottom" "bottom"
"brave" "brave"
"direnv" "direnv"
@ -25,9 +37,11 @@ let
"yazi" "yazi"
"zellij" "zellij"
"zoxide" "zoxide"
]; ])
// builtins.foldl' (
miscModules = [ emptySet: importedModules:
emptySet // importedModules
) {} (map importMisc [
"android" "android"
"commandLine" "commandLine"
"desktop" "desktop"
@ -39,18 +53,7 @@ let
"productionWriting" "productionWriting"
"tracking" "tracking"
"virtualization" "virtualization"
]; ]);
modulesPath = ./modules;
importFolder = name: {"${name}" = import (modulesPath + "/${name}");};
importFile = name: {"${name}" = import (modulesPath + "/${name}.nix");};
importMisc = name: {"misc-${name}" = import (modulesPath + "/misc/${name}.nix");};
modules =
builtins.foldl' (a: b: a // b) {} (map importFolder folderModules)
// builtins.foldl' (a: b: a // b) {} (map importFile fileModules)
// builtins.foldl' (a: b: a // b) {} (map importMisc miscModules);
in { in {
flake.homeModules = { flake.homeModules = {
desktop = { desktop = {