35 lines
704 B
Nix

{ config, lib, pkgs, ... }:
with lib;
with lib.my;
let cfg = config.modules.shell.zsh;
in {
options.modules.shell.zsh = {
enable = mkBoolOpt false;
};
config = mkIf cfg.enable {
home.packages = with pkgs; [
zsh-autosuggestions
zsh-fast-syntax-highlighting
zsh-history-substring-search
];
home.programs.zsh = {
enable = true;
enableCompletion = true;
shellAliases = {
cp = "cp -iv";
mv = "mv -iv";
rm = "rm -v";
mkdir = "mkdir -v";
ls = "ls -h --color=auto --group-directories-first";
e = "nvim";
f = "nnn";
g = "git";
n = "nnn";
v = "nvim";
};
};
};
}