Modularize nixos and home manager modules

This commit is contained in:
DashieTM 2024-08-27 22:47:48 +02:00
parent e3619d6c94
commit da8ae20b55
2 changed files with 36 additions and 28 deletions

View file

@ -5,27 +5,10 @@
lib, lib,
mod, mod,
additionalHomeConfig, additionalHomeConfig,
homeMods,
root, root,
... ...
}: }:
let
base_imports = [
inputs.anyrun.homeManagerModules.default
inputs.ironbar.homeManagerModules.default
inputs.oxicalc.homeManagerModules.default
inputs.oxishut.homeManagerModules.default
inputs.oxinoti.homeManagerModules.default
inputs.oxidash.homeManagerModules.default
inputs.oxipaste.homeManagerModules.default
inputs.hyprdock.homeManagerModules.default
inputs.hyprland.homeManagerModules.default
inputs.reset.homeManagerModules.default
inputs.nix-flatpak.homeManagerModules.nix-flatpak
inputs.sops-nix.homeManagerModules.sops
inputs.dashvim.homeManagerModules.dashvim
../modules
];
in
{ {
xdg = { xdg = {
portal.config.common.default = "*"; portal.config.common.default = "*";
@ -49,7 +32,7 @@ in
./themes ./themes
./sync.nix ./sync.nix
] ]
++ base_imports ++ homeMods
++ lib.optional (builtins.pathExists mod) mod ++ lib.optional (builtins.pathExists mod) mod
++ lib.optional (builtins.pathExists additionalHomeConfig) additionalHomeConfig; ++ lib.optional (builtins.pathExists additionalHomeConfig) additionalHomeConfig;
}; };

View file

@ -1,4 +1,34 @@
{ inputs, pkgs, ... }: {
inputs,
pkgs,
mods ? {
nixos = [
inputs.home-manager.nixosModules.home-manager
inputs.stylix.nixosModules.stylix
../base
../home
../modules
];
home = [
inputs.anyrun.homeManagerModules.default
inputs.ironbar.homeManagerModules.default
inputs.oxicalc.homeManagerModules.default
inputs.oxishut.homeManagerModules.default
inputs.oxinoti.homeManagerModules.default
inputs.oxidash.homeManagerModules.default
inputs.oxipaste.homeManagerModules.default
inputs.hyprdock.homeManagerModules.default
inputs.hyprland.homeManagerModules.default
inputs.reset.homeManagerModules.default
inputs.nix-flatpak.homeManagerModules.nix-flatpak
inputs.sops-nix.homeManagerModules.sops
inputs.dashvim.homeManagerModules.dashvim
../modules
];
},
...
}:
{ {
/** /**
# build_systems # build_systems
@ -47,16 +77,11 @@
additionalHomeConfig additionalHomeConfig
root root
; ;
homeMods = mods.home;
}; };
modules = modules =
[ [ mod ]
inputs.home-manager.nixosModules.home-manager ++ mods.nixos
inputs.stylix.nixosModules.stylix
../base
../home
../modules
mod
]
++ inputs.nixpkgs.lib.optional (builtins.pathExists additionalNixosConfig) additionalNixosConfig ++ inputs.nixpkgs.lib.optional (builtins.pathExists additionalNixosConfig) additionalNixosConfig
++ inputs.nixpkgs.lib.optional (builtins.pathExists mod) mod; ++ inputs.nixpkgs.lib.optional (builtins.pathExists mod) mod;
}; };