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
This commit is contained in:
27
home/base/cli-tools/lf.nix
Normal file
27
home/base/cli-tools/lf.nix
Normal file
@@ -0,0 +1,27 @@
|
||||
# Lf — terminal file manager with bat preview and Dracula theme.
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.base.cliTools.lf;
|
||||
in {
|
||||
options.base.cliTools.lf.enable = mkEnableOption "enable lf terminal file manager";
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = [pkgs.lf];
|
||||
|
||||
programs.lf = {
|
||||
enable = true;
|
||||
settings = {
|
||||
preview = true;
|
||||
drawbox = true;
|
||||
hidden = true;
|
||||
icons = true;
|
||||
previewer = "bat";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user