{ user, pkgs, ... }: { home.packages = with pkgs; [ fd ]; programs.direnv = { enable = true; enableZshIntegration = true; package = pkgs.direnv; nix-direnv = { enable = true; package = pkgs.nix-direnv; }; }; programs.zoxide = { enable = true; enableZshIntegration = true; }; programs.zsh = { enable = true; autocd = false; enableCompletion = true; autosuggestion.enable = true; syntaxHighlighting.enable = true; shellAliases = { nrebuild = "sudo nixos-rebuild switch --flake /home/${user}/nixos"; ndiffbuild = "sudo nixos-rebuild build --flake /home/${user}/nixos && nvd diff /run/current-system /home/${user}/nixos/result"; }; initExtra = '' bindkey -v bindkey '^R' history-incremental-search-backward # Prompt stuff autoload -Uz promptinit promptinit prompt pure export PATH="''${KREW_ROOT:-$HOME/.krew}/bin:$PATH" # Aliases alias ls=eza ''; zplug = { enable = true; plugins = [ ({ name = "plugins/git"; tags = [ "from:oh-my-zsh" ]; }) ({ name = "modules/prompt"; tags = [ "from:prezto" ]; }) ]; }; }; }