diff options
Diffstat (limited to 'modules/tools/zsh/default.nix')
| -rw-r--r-- | modules/tools/zsh/default.nix | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/modules/tools/zsh/default.nix b/modules/tools/zsh/default.nix new file mode 100644 index 0000000..0f10e72 --- /dev/null +++ b/modules/tools/zsh/default.nix @@ -0,0 +1,25 @@ +{ config, lib, pkgs, ... }: + +{ + options.tools.zsh = { + enable = lib.mkEnableOption "Enables zsh."; + }; + + config = lib.mkIf config.tools.zsh.enable { + programs.zsh.enable = true; + programs.zsh.dotDir = ".config/zsh"; + programs.zsh.history.path = "${config.xdg.cacheHome}/zsh/history"; + programs.zsh.initContent = '' +${if config.tools.fzf.enable then + "eval \"$(fzf --zsh)\"" +else ""} +${builtins.readFile ./zshrc} +${if config.scripts.enable then + "export PATH=${config.home.homeDirectory}/scripts:$PATH" +else ""} + ''; + programs.kitty.settings.shell = lib.mkIf config.tools.kitty.enable "zsh"; + programs.zsh.shellAliases."nnn" = lib.mkIf config.tools.nnn.enable "nnn -H -d"; + # programs.zsh.shellAliases."ls" = lib.mkIf config.tools.lsd.enable "lsd"; + }; +} |
