From a32e0f1b3efc6d6aaeaf9ba9efd423a9b559c5bf Mon Sep 17 00:00:00 2001 From: Konstantin Fickel Date: Sat, 14 Feb 2026 10:33:33 +0100 Subject: [PATCH] feat: add home-manager module for programs.bulkgen.enable Expose homeManagerModules.bulkgen and homeManagerModules.default from the flake. The module provides programs.bulkgen.enable and programs.bulkgen.package options, adding bulkgen to home.packages when enabled. --- flake.nix | 11 +++++++++-- nix/hm-module.nix | 20 ++++++++++++++++++++ 2 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 nix/hm-module.nix diff --git a/flake.nix b/flake.nix index 91fa7db..1c9b15f 100644 --- a/flake.nix +++ b/flake.nix @@ -25,6 +25,7 @@ outputs = { + self, nixpkgs, pyproject-nix, uv2nix, @@ -105,14 +106,20 @@ pkgs = nixpkgs.legacyPackages.${system}; inherit (pkgs.callPackages pyproject-nix.build.util { }) mkApplication; in - { - default = mkApplication { + rec { + bulkgen = mkApplication { venv = pythonSet.mkVirtualEnv "bulkgen-env" workspace.deps.default; package = pythonSet.bulkgen; }; + default = bulkgen; } ); + homeManagerModules = rec { + bulkgen = import ./nix/hm-module.nix self; + default = bulkgen; + }; + checks = forAllSystems ( system: let diff --git a/nix/hm-module.nix b/nix/hm-module.nix new file mode 100644 index 0000000..33fc0b2 --- /dev/null +++ b/nix/hm-module.nix @@ -0,0 +1,20 @@ +self: +{ + lib, + pkgs, + config, + ... +}: +let + cfg = config.programs.bulkgen; +in +{ + options.programs.bulkgen = { + enable = lib.mkEnableOption "bulkgen"; + package = lib.mkPackageOption self.packages.${pkgs.system} "bulkgen" { }; + }; + + config = lib.mkIf cfg.enable { + home.packages = [ cfg.package ]; + }; +}