summaryrefslogtreecommitdiff
path: root/modules/home-manager/personal/programs
diff options
context:
space:
mode:
authorquentin@aristote.fr <quentin@aristote.fr>2023-12-03 23:15:00 +0100
committerquentin@aristote.fr <quentin@aristote.fr>2023-12-04 22:20:21 +0100
commitc62c1c07b9acaebc4d51d8464d35fd0c3b0dfc20 (patch)
tree28989a521936fbcba4ab5b6eb1b1bd837f6e8e22 /modules/home-manager/personal/programs
parentca9db4b2c2d72e57e8ddbf586606ca4ad646831e (diff)
home: dev: add devenv package
Diffstat (limited to 'modules/home-manager/personal/programs')
-rw-r--r--modules/home-manager/personal/programs/default.nix1
-rw-r--r--modules/home-manager/personal/programs/devenv.nix21
2 files changed, 22 insertions, 0 deletions
diff --git a/modules/home-manager/personal/programs/default.nix b/modules/home-manager/personal/programs/default.nix
index 8b3ba16..5050749 100644
--- a/modules/home-manager/personal/programs/default.nix
+++ b/modules/home-manager/personal/programs/default.nix
@@ -3,6 +3,7 @@
{
imports = [
./alacritty.nix
+ ./devenv.nix
./direnv.nix
./emacs.nix
./firefox
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;
+ };
+}