feat: add missing packages and programs to base cli-tools
- packages.nix: essential packages (jq, ripgrep, fd, htop, coreutils,
lazygit, httpie, just, devenv, gcc, go, sqlite, sqlite-vec, nix-index,
nix-update, progress, comma, fabric-ai, llm, basecamp, hyprpaper-random,
libnotify, trash-cli, unzip, zip, yazi)
- bat.nix: bat with nix-colors derived syntax theme
- carapace.nix: multi-shell completion (fish, nushell, bash)
- direnv.nix: automatic env loading with nix-direnv
- eza.nix: modern ls with icons, git status, long format
- lf.nix: terminal file manager with bat preview
- zoxide.nix: smarter cd with fish and nushell integration
- zellij-ps.nix: project session manager wrapping cli.zellij-ps
2026-04-26 12:06:36 +02:00
|
|
|
# Zellij-ps — project-aware Zellij session manager from m3ta-nixpkgs.
|
2026-04-26 12:16:44 +02:00
|
|
|
# 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.
|
feat: add missing packages and programs to base cli-tools
- packages.nix: essential packages (jq, ripgrep, fd, htop, coreutils,
lazygit, httpie, just, devenv, gcc, go, sqlite, sqlite-vec, nix-index,
nix-update, progress, comma, fabric-ai, llm, basecamp, hyprpaper-random,
libnotify, trash-cli, unzip, zip, yazi)
- bat.nix: bat with nix-colors derived syntax theme
- carapace.nix: multi-shell completion (fish, nushell, bash)
- direnv.nix: automatic env loading with nix-direnv
- eza.nix: modern ls with icons, git status, long format
- lf.nix: terminal file manager with bat preview
- zoxide.nix: smarter cd with fish and nushell integration
- zellij-ps.nix: project session manager wrapping cli.zellij-ps
2026-04-26 12:06:36 +02:00
|
|
|
{
|
|
|
|
|
config,
|
|
|
|
|
lib,
|
|
|
|
|
...
|
|
|
|
|
}:
|
|
|
|
|
with lib; let
|
|
|
|
|
cfg = config.base.cliTools.zellijPs;
|
|
|
|
|
in {
|
|
|
|
|
options.base.cliTools.zellijPs = {
|
2026-04-26 12:16:44 +02:00
|
|
|
# Enabled by default — base modules are always-on.
|
|
|
|
|
enable = (mkEnableOption "enable zellij-ps project session manager") // {default = true;};
|
feat: add missing packages and programs to base cli-tools
- packages.nix: essential packages (jq, ripgrep, fd, htop, coreutils,
lazygit, httpie, just, devenv, gcc, go, sqlite, sqlite-vec, nix-index,
nix-update, progress, comma, fabric-ai, llm, basecamp, hyprpaper-random,
libnotify, trash-cli, unzip, zip, yazi)
- bat.nix: bat with nix-colors derived syntax theme
- carapace.nix: multi-shell completion (fish, nushell, bash)
- direnv.nix: automatic env loading with nix-direnv
- eza.nix: modern ls with icons, git status, long format
- lf.nix: terminal file manager with bat preview
- zoxide.nix: smarter cd with fish and nushell integration
- zellij-ps.nix: project session manager wrapping cli.zellij-ps
2026-04-26 12:06:36 +02:00
|
|
|
|
|
|
|
|
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;
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
}
|