# Zellij-ps — project-aware Zellij session manager from m3ta-nixpkgs.
# Delegates to `cli.zellij-ps` — the home-manager module namespace provided by
# m3ta-nixpkgs (inputs.m3ta-nixpkgs.nixosModules.default). This is intentional;
# `cli.*` is the convention used by m3ta-nixpkgs home-manager modules.
{
  config,
  lib,
  ...
}:
with lib; let
  cfg = config.base.cliTools.zellijPs;
in {
  options.base.cliTools.zellijPs = {
    # Enabled by default — base modules are always-on.
    enable = (mkEnableOption "enable zellij-ps project session manager") // {default = true;};

    projectFolders = mkOption {
      type = types.listOf types.path;
      description = "Project root folders scanned by zellij-ps.";
      default = ["${config.home.homeDirectory}/p"];
    };
  };

  config = mkIf cfg.enable {
    cli.zellij-ps = {
      enable = true;
      projectFolders = cfg.projectFolders;
    };
  };
}
