{pkgs, ...}: let aliases = import ../data/zsh-aliases.nix {}; in { home.packages = with pkgs; [ pure-prompt ]; programs.zsh = { enable = true; enableCompletion = true; shellAliases = aliases; history = { size = 10000000; save = 10000000; findNoDups = true; saveNoDups = true; ignoreDups = true; share = true; extended = true; append = true; path = "$HOME/.zsh_history"; }; initContent = '' prompt pure zstyle :prompt:pure:path color cyan zstyle :prompt:pure:prompt:error color red zstyle :prompt:pure:prompt:success color green bindkey -v autoload -Uz edit-command-line zle -N edit-command-line bindkey '^X^E' edit-command-line ''; }; programs.fzf = { enable = true; enableZshIntegration = true; }; }