feat(nix): use module options instead of specialArgs for graphical

This commit is contained in:
Mohammad Rafiq 2025-07-09 00:14:55 +08:00
parent dd74ed210c
commit 2c6cd776ce
No known key found for this signature in database
2 changed files with 9 additions and 16 deletions

View file

@ -6,6 +6,7 @@
}:
let
inherit (lib) nixosSystem;
inherit (lib.lists) optional;
inherit (lib.attrsets) mapAttrs;
inherit (cfg.lib.modules) forAllUsers';
cfg = config.flake;
@ -22,16 +23,13 @@ let
name: value:
if class == "nixos" then
nixosSystem {
specialArgs = {
inherit (value) graphical;
hostName = name;
};
specialArgs.hostName = name;
modules = [
cfg.modules.nixos.default
inputs.home-manager.nixosModules.home-manager
{ home-manager = globalCfg; }
(value.extraCfg or { })
];
] ++ optional value.graphical cfg.modules.nixos.graphical;
}
else
{ }

View file

@ -1,19 +1,14 @@
{ lib, ... }:
let
inherit (lib.modules) mkIf;
inherit (lib.options) mkEnableOption;
in
{
flake.modules.nixos.default =
{ graphical, ... }:
{
config = mkIf graphical {
home-manager.sharedModules = [ { graphical = true; } ];
services.pipewire = {
enable = true;
pulse.enable = true;
};
};
flake.modules.nixos.graphical = {
home-manager.sharedModules = [ { graphical = true; } ];
services.pipewire = {
enable = true;
pulse.enable = true;
};
};
flake.modules.homeManager.default.options.graphical = mkEnableOption "";
}