summaryrefslogtreecommitdiff
path: root/modules/home-manager/personal/programs/devenv.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/home-manager/personal/programs/devenv.nix')
-rw-r--r--modules/home-manager/personal/programs/devenv.nix21
1 files changed, 21 insertions, 0 deletions
diff --git a/modules/home-manager/personal/programs/devenv.nix b/modules/home-manager/personal/programs/devenv.nix
new file mode 100644
index 0000000..0a93276
--- /dev/null
+++ b/modules/home-manager/personal/programs/devenv.nix
@@ -0,0 +1,21 @@
+{
+ config,
+ lib,
+ pkgs,
+ ...
+} @ extraArgs: let
+ cfg = config.personal.programs.devenv;
+ importedDevenv = extraArgs ? devenv;
+in {
+ options.personal.programs.devenv.enable = lib.mkEnableOption "devenv";
+
+ config = lib.mkIf cfg.enable {
+ assertions = [
+ {
+ assertion = importedDevenv;
+ message = "attribute devenv missing: add it in home-manager's special args, or set config.personal.devenv.enable to false";
+ }
+ ];
+ home.packages = lib.optional importedDevenv extraArgs.devenv.packages.${pkgs.system}.devenv;
+ };
+}