nix-dotfiles/modules/zsh.nix
2021-06-20 21:41:54 +02:00

66 lines
1.5 KiB
Nix
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ pkgs, ... }:
{
home.packages = with pkgs; [
nix-zsh-completions
zsh-completions
];
programs.zsh = {
enable = true;
autocd = true;
plugins = [
# {
# name = "powerlevel10k";
# src = pkgs.zsh-powerlevel10k;
# file = "share/zsh-powerlevel10k/powerlevel10k.zsh-theme";
# }
];
initExtraBeforeCompInit = ''
zstyle ':completion:*' menu select
setopt CORRECT
setopt AUTO_CD
setopt CHASE_LINKS
setopt PUSHD_TO_HOME
'';
# localVariables = {
# POWERLEVEL9K_LEFT_PROMPT_ELEMENTS = [ "os_icon" "dir" "vcs" "prompt_char" ];
# POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS = [ "status" "command_execution_time" "background_jobs" "direnv" "nix_shell" "time" "vpn_ip" ]
# };
oh-my-zsh = {
enable = true;
plugins = [
"alias-finder"
"common-aliases"
"cp"
"dirhistory"
"docker-compose"
"docker"
"extract"
"git-auto-fetch"
"git"
"sudo"
];
extraConfig = "";
};
};
programs.starship = {
enable = true;
enableBashIntegration = true;
enableZshIntegration = true;
settings = {
directory.truncation_symbol = "/";
hostname.format = "[$hostname]($style) ";
line_break.disabled = true;
nix_shell.symbol = " ";
python.python_binary = "python3";
status = {
disabled = false;
format = "[$symbol $status]($style) ";
};
username.format = "[$user]($style)@";
};
};
}