mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-06-16 18:15:13 -05:00
125 lines
2.3 KiB
Nix
Executable file
125 lines
2.3 KiB
Nix
Executable file
let
|
|
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"
|
|
"firefox"
|
|
"obs-studio"
|
|
"qbittorrent"
|
|
"steam"
|
|
])
|
|
// builtins.foldl' (
|
|
emptySet: importedModules:
|
|
emptySet // importedModules
|
|
) {} (map importFile [
|
|
"bottom"
|
|
"brave"
|
|
"direnv"
|
|
"freetube"
|
|
"git"
|
|
"helix"
|
|
"home-manager"
|
|
"lazygit"
|
|
"mpv"
|
|
"nextcloud"
|
|
"nushell"
|
|
"starship"
|
|
"vscode"
|
|
"wezterm"
|
|
"yazi"
|
|
"zellij"
|
|
"zoxide"
|
|
])
|
|
// builtins.foldl' (
|
|
emptySet: importedModules:
|
|
emptySet // importedModules
|
|
) {} (map importMisc [
|
|
"android"
|
|
"commandLine"
|
|
"desktop"
|
|
"entertainment"
|
|
"internet"
|
|
"productionArt"
|
|
"productionAudio"
|
|
"productionVideo"
|
|
"productionWriting"
|
|
"tracking"
|
|
"virtualization"
|
|
]);
|
|
in {
|
|
flake.homeModules = {
|
|
desktop = {
|
|
imports = with modules; [
|
|
brave
|
|
firefox
|
|
misc-android
|
|
misc-desktop
|
|
misc-internet
|
|
qbittorrent
|
|
vscode
|
|
];
|
|
};
|
|
|
|
entertainment = {
|
|
imports = with modules; [
|
|
freetube
|
|
misc-entertainment
|
|
mpv
|
|
steam
|
|
];
|
|
};
|
|
|
|
productionArt = {
|
|
imports = with modules; [
|
|
misc-productionArt
|
|
];
|
|
};
|
|
|
|
productionAudio = {
|
|
imports = with modules; [
|
|
misc-productionAudio
|
|
];
|
|
};
|
|
|
|
productionVideo = {
|
|
imports = with modules; [
|
|
misc-productionVideo
|
|
obs-studio
|
|
];
|
|
};
|
|
|
|
productionWriting = {
|
|
imports = with modules; [
|
|
misc-productionWriting
|
|
];
|
|
};
|
|
|
|
shared = {
|
|
imports = with modules; [
|
|
bat
|
|
bottom
|
|
direnv
|
|
git
|
|
helix
|
|
home-manager
|
|
lazygit
|
|
misc-commandLine
|
|
misc-virtualization
|
|
nushell
|
|
starship
|
|
wezterm
|
|
yazi
|
|
zellij
|
|
zoxide
|
|
];
|
|
};
|
|
};
|
|
}
|