From fc2feddfbb9cf49b133543b79c0312716f2ac5b1 Mon Sep 17 00:00:00 2001 From: Felix Buehler Date: Sat, 27 Dec 2025 16:27:21 +0100 Subject: [PATCH] profile/core: convert to nixosModule --- machines/configurations.nix | 7 ++++--- profiles/core/default.nix | 30 +++++++++++++++++++++++------- profiles/default.nix | 1 + 3 files changed, 28 insertions(+), 10 deletions(-) diff --git a/machines/configurations.nix b/machines/configurations.nix index 7551424..a952899 100644 --- a/machines/configurations.nix +++ b/machines/configurations.nix @@ -17,8 +17,7 @@ let }; }; - customModules = import ../profiles/core/default.nix; - baseModules = [ + defaultModules = [ # make flake inputs accessible in NixOS { _module.args.self = self; @@ -45,10 +44,12 @@ let sops-nix.nixosModules.sops ]; } + { + my.profiles.core.enable = true; + } ../modules ../profiles ]; - defaultModules = baseModules ++ customModules; in { flake.nixosConfigurations = { diff --git a/profiles/core/default.nix b/profiles/core/default.nix index 8f95b17..da72c2b 100644 --- a/profiles/core/default.nix +++ b/profiles/core/default.nix @@ -1,7 +1,23 @@ -[ - ./core.nix - ./modules.nix - ./network.nix - ./nix.nix - ./users.nix -] +{ + config, + lib, + pkgs, + inputs, + ... +}@args: +let + cfg = config.my.profiles.core; +in +{ + options.my.profiles.core.enable = lib.mkEnableOption "core profile"; + + config = lib.mkIf cfg.enable ( + lib.mkMerge [ + (import ./core.nix args) + (import ./modules.nix args) + (import ./network.nix args) + (import ./nix.nix args) + (import ./users.nix args) + ] + ); +} diff --git a/profiles/default.nix b/profiles/default.nix index 3e54acd..4f95122 100644 --- a/profiles/default.nix +++ b/profiles/default.nix @@ -4,6 +4,7 @@ ./3d-design ./android ./clean + ./core ./desktop-apps ./desktop-dev ./development