mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-06-17 02:25:12 -05:00
refactor: debloated imports and modules
This commit is contained in:
parent
489b64c9c7
commit
7351c5cc45
6 changed files with 237 additions and 342 deletions
|
@ -1,100 +1,106 @@
|
|||
let
|
||||
# Folders
|
||||
bat = import ./modules/bat;
|
||||
firefox = import ./modules/firefox;
|
||||
obs-studio = import ./modules/obs-studio;
|
||||
qbittorrent = import ./modules/qbittorrent;
|
||||
steam = import ./modules/steam;
|
||||
# Files
|
||||
bottom = import ./modules/bottom.nix;
|
||||
brave = import ./modules/brave.nix;
|
||||
cursor = import ./modules/cursor.nix;
|
||||
direnv = import ./modules/direnv.nix;
|
||||
freetube = import ./modules/freetube.nix;
|
||||
git = import ./modules/git.nix;
|
||||
helix = import ./modules/helix.nix;
|
||||
home-manager = import ./modules/home-manager.nix;
|
||||
lazygit = import ./modules/lazygit.nix;
|
||||
misc-android = import ./modules/misc/android.nix;
|
||||
misc-commandLine = import ./modules/misc/command-line.nix;
|
||||
misc-fileManagement = import ./modules/misc/file-management.nix;
|
||||
misc-gaming = import ./modules/misc/gaming.nix;
|
||||
misc-gnomeExtras = import ./modules/misc/gnome-extras.nix;
|
||||
misc-internet-extras = import ./modules/misc/internet-extras.nix;
|
||||
misc-internet = import ./modules/misc/internet.nix;
|
||||
misc-jellyfin = import ./modules/misc/jellyfin.nix;
|
||||
misc-kdeExtras = import ./modules/misc/kde-extras.nix;
|
||||
misc-media = import ./modules/misc/media.nix;
|
||||
misc-privacy = import ./modules/misc/privacy.nix;
|
||||
misc-productionArt = import ./modules/misc/production-art.nix;
|
||||
misc-productionArtExtras = import ./modules/misc/production-art-extras.nix;
|
||||
misc-productionAudio = import ./modules/misc/production-audio.nix;
|
||||
misc-productionCode = import ./modules/misc/production-code.nix;
|
||||
misc-productionVideo = import ./modules/misc/production-video.nix;
|
||||
misc-productionWriting = import ./modules/misc/production-writing.nix;
|
||||
misc-virtualization = import ./modules/misc/virtualization.nix;
|
||||
misc-yazi = import ./modules/misc/yazi.nix;
|
||||
misc-wpsoffice = import ./modules/misc/wpsoffice.nix;
|
||||
mpv = import ./modules/mpv.nix;
|
||||
nextcloud = import ./modules/nextcloud.nix;
|
||||
nushell = import ./modules/nushell.nix;
|
||||
starship = import ./modules/starship.nix;
|
||||
vscode = import ./modules/vscode.nix;
|
||||
wezterm = import ./modules/wezterm.nix;
|
||||
yazi = import ./modules/yazi.nix;
|
||||
zellij = import ./modules/zellij.nix;
|
||||
zoxide = import ./modules/zoxide.nix;
|
||||
folderModules = [
|
||||
"bat"
|
||||
"firefox"
|
||||
"obs-studio"
|
||||
"qbittorrent"
|
||||
"steam"
|
||||
];
|
||||
|
||||
fileModules = [
|
||||
"bottom"
|
||||
"brave"
|
||||
"direnv"
|
||||
"freetube"
|
||||
"git"
|
||||
"helix"
|
||||
"home-manager"
|
||||
"lazygit"
|
||||
"mpv"
|
||||
"nextcloud"
|
||||
"nushell"
|
||||
"starship"
|
||||
"vscode"
|
||||
"wezterm"
|
||||
"yazi"
|
||||
"zellij"
|
||||
"zoxide"
|
||||
];
|
||||
|
||||
miscModules = [
|
||||
"android"
|
||||
"commandLine"
|
||||
"desktop"
|
||||
"entertainment"
|
||||
"internet"
|
||||
"productionArt"
|
||||
"productionAudio"
|
||||
"productionVideo"
|
||||
"productionWriting"
|
||||
"tracking"
|
||||
"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 {
|
||||
flake.homeModules = {
|
||||
inherit
|
||||
# Folders
|
||||
bat
|
||||
firefox
|
||||
obs-studio
|
||||
qbittorrent
|
||||
# Files
|
||||
|
||||
bottom
|
||||
brave
|
||||
cursor
|
||||
direnv
|
||||
freetube
|
||||
git
|
||||
helix
|
||||
home-manager
|
||||
lazygit
|
||||
misc-android
|
||||
misc-commandLine
|
||||
misc-fileManagement
|
||||
misc-gaming
|
||||
misc-gnomeExtras
|
||||
misc-internet
|
||||
misc-internet-extras
|
||||
misc-jellyfin
|
||||
misc-kdeExtras
|
||||
misc-media
|
||||
misc-privacy
|
||||
misc-productionArtExtras
|
||||
misc-productionArt
|
||||
misc-productionAudio
|
||||
misc-productionCode
|
||||
misc-productionVideo
|
||||
misc-productionWriting
|
||||
misc-virtualization
|
||||
misc-yazi
|
||||
mpv
|
||||
nextcloud
|
||||
nushell
|
||||
starship
|
||||
steam
|
||||
vscode
|
||||
wezterm
|
||||
yazi
|
||||
zellij
|
||||
zoxide
|
||||
;
|
||||
commandLine = {
|
||||
imports = [
|
||||
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
|
||||
|
@ -102,10 +108,8 @@ in {
|
|||
helix
|
||||
home-manager
|
||||
lazygit
|
||||
misc-android
|
||||
misc-commandLine
|
||||
misc-virtualization
|
||||
misc-yazi
|
||||
nushell
|
||||
starship
|
||||
wezterm
|
||||
|
@ -114,93 +118,5 @@ in {
|
|||
zoxide
|
||||
];
|
||||
};
|
||||
entertainment = {
|
||||
imports = [
|
||||
misc-gaming
|
||||
misc-media
|
||||
freetube
|
||||
mpv
|
||||
steam
|
||||
];
|
||||
};
|
||||
extras = {
|
||||
imports = [
|
||||
misc-gnomeExtras
|
||||
misc-kdeExtras
|
||||
];
|
||||
};
|
||||
fileManagement = {
|
||||
imports = [
|
||||
misc-fileManagement
|
||||
];
|
||||
};
|
||||
internetExtras = {
|
||||
imports = [
|
||||
misc-internet-extras
|
||||
];
|
||||
};
|
||||
firefoxHM = {
|
||||
imports = [
|
||||
firefox
|
||||
];
|
||||
};
|
||||
braveHM = {
|
||||
imports = [
|
||||
brave
|
||||
];
|
||||
};
|
||||
internet = {
|
||||
imports = [
|
||||
misc-internet
|
||||
qbittorrent
|
||||
];
|
||||
};
|
||||
jellyfin = {
|
||||
imports = [
|
||||
misc-jellyfin
|
||||
];
|
||||
};
|
||||
privacy = {
|
||||
imports = [
|
||||
misc-privacy
|
||||
];
|
||||
};
|
||||
productionArtExtras = {
|
||||
imports = [
|
||||
misc-productionArtExtras
|
||||
];
|
||||
};
|
||||
productionArt = {
|
||||
imports = [
|
||||
misc-productionArt
|
||||
];
|
||||
};
|
||||
productionAudio = {
|
||||
imports = [
|
||||
misc-productionAudio
|
||||
];
|
||||
};
|
||||
productionCode = {
|
||||
imports = [
|
||||
misc-productionCode
|
||||
vscode
|
||||
];
|
||||
};
|
||||
productionVideo = {
|
||||
imports = [
|
||||
misc-productionVideo
|
||||
obs-studio
|
||||
];
|
||||
};
|
||||
productionWriting = {
|
||||
imports = [
|
||||
misc-productionWriting
|
||||
];
|
||||
};
|
||||
wpsOffice = {
|
||||
imports = [
|
||||
misc-wpsoffice
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue