home-manager/shell/zsh.nix
2023-10-13 11:53:42 -04:00

76 lines
1.6 KiB
Nix

{ config, pkgs, ... }:
{
programs.zsh = {
enable = true;
enableAutosuggestions = true;
enableCompletion = true;
syntaxHighlighting.enable = true;
autocd = true;
defaultKeymap = null;
dotDir = ".config/zsh";
history = {
ignoreSpace = true;
path = "${config.xdg.dataHome}/zsh/zsh_history";
save = 10000;
};
historySubstringSearch.enable = true;
plugins = [
{
name = "powerlevel10k";
file = "powerlevel10k.zsh-theme";
src = pkgs.fetchFromGitHub {
owner = "romkatv";
repo = "powerlevel10k";
rev = "v1.19.0";
sha256 = "+hzjSbbrXr0w1rGHm6m2oZ6pfmD6UUDBfPd7uMg5l5c=";
};
}
# {
# name = "zsh-bat";
# src = pkgs.fetchFromGitHub {
# owner = "fdellwing";
# repo = "zsh-bat";
# rev = "d7d5df4f6c7dd380e49b47e4da840226a828968a";
# sha256 = "4DQ/qSznM4A9IyM6W0bncHUa4jTIAdBxL16YJgMccHE=";
# };
# }
{
name = "z.lua";
src = pkgs.fetchFromGitHub {
owner = "skywind3000";
repo = "z.lua";
rev = "1.8.16";
sha256 = "VVJXBVENXlJXVj831Hx4sa7AzGHXpsui6tga9uA6ZnE=";
};
}
{
name = "zsh-vi-mode";
src = pkgs.fetchFromGitHub {
owner = "jeffreytse";
repo = "zsh-vi-mode";
rev = "v0.10.0";
sha256 = "QE6ZwwM2X0aPqNnbVrj0y7w9hmuRf0H1j8nXYwyoLo4=";
};
}
];
shellAliases = {
ls = "eza";
la = "eza -la";
l = "eza -l";
};
initExtra = ''
source ~/.config/zsh/.p10k.zsh
'';
localVariables = {
POWERLEVEL9K_DISABLE_CONFIGURATION_WIZARD = true;
};
};
home.file.".config/zsh/.p10k.zsh".source = ./.p10k.zsh;
}