summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorbeeb5k <beebeeb5k@gmail.com>2026-03-06 21:37:34 +0530
committerbeeb5k <beebeeb5k@gmail.com>2026-03-06 21:37:34 +0530
commit0de067092c9dd19c3352554e39de73e172f29b42 (patch)
tree4175503766405733846687efdb29657bb322dccd /lib
parentf1de2014dcd426e015a2638222160d9d349ea4e5 (diff)
Add modules
Diffstat (limited to 'lib')
-rw-r--r--lib/mkFlakeOutputs.nix72
1 files changed, 63 insertions, 9 deletions
diff --git a/lib/mkFlakeOutputs.nix b/lib/mkFlakeOutputs.nix
index 20952d3..e1bf1c7 100644
--- a/lib/mkFlakeOutputs.nix
+++ b/lib/mkFlakeOutputs.nix
@@ -13,19 +13,36 @@ let
# Shared: build a NixOS system derivation
buildSystem =
- { system, hostname, user, systemState }:
+ {
+ system,
+ hostname,
+ user,
+ systemState,
+ }:
let
hostConfig = import ../hosts/${hostname} { inherit user systemState hostname; };
in
nixpkgs.lib.nixosSystem {
inherit system;
- specialArgs = { inherit inputs user hostname systemState importer; };
+ specialArgs = {
+ inherit
+ inputs
+ user
+ hostname
+ systemState
+ importer
+ ;
+ };
modules = [ hostConfig ];
};
# Shared: build a standalone Home Manager derivation
buildHome =
- { system, user, systemState }:
+ {
+ system,
+ user,
+ systemState,
+ }:
let
homeConfig = import ../users/${user} { inherit user systemState; };
pkgs = import nixpkgs {
@@ -45,15 +62,32 @@ in
{
# NixOS + standalone Home Manager (two separate outputs)
mkSystemWithHM =
- { system, hostname, user, systemState }:
{
- nixosConfigurations.${hostname} = buildSystem { inherit system hostname user systemState; };
+ system,
+ hostname,
+ user,
+ systemState,
+ }:
+ {
+ nixosConfigurations.${hostname} = buildSystem {
+ inherit
+ system
+ hostname
+ user
+ systemState
+ ;
+ };
homeConfigurations.${user} = buildHome { inherit system user systemState; };
};
# NixOS with Home Manager as a NixOS module (single output, HM is baked in)
mkSystemWithHMasModule =
- { system, hostname, user, systemState }:
+ {
+ system,
+ hostname,
+ user,
+ systemState,
+ }:
let
hostConfig = import ../hosts/${hostname} { inherit user systemState hostname; };
homeConfig = import ../users/${user} { inherit user systemState; };
@@ -61,7 +95,15 @@ in
{
nixosConfigurations.${hostname} = nixpkgs.lib.nixosSystem {
inherit system;
- specialArgs = { inherit inputs user hostname systemState importer; };
+ specialArgs = {
+ inherit
+ inputs
+ user
+ hostname
+ systemState
+ importer
+ ;
+ };
modules = [
hostConfig
home-manager.nixosModules.home-manager
@@ -77,8 +119,20 @@ in
# NixOS only, no Home Manager at all
mkSystem =
- { system, hostname, user, systemState }:
{
- nixosConfigurations.${hostname} = buildSystem { inherit system hostname user systemState; };
+ system,
+ hostname,
+ user,
+ systemState,
+ }:
+ {
+ nixosConfigurations.${hostname} = buildSystem {
+ inherit
+ system
+ hostname
+ user
+ systemState
+ ;
+ };
};
}