Andy's zshrc
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-09-24 22:12:51 +01:00
plugins First version of zsh config 2026-09-22 23:34:54 +01:00
.gitignore First version of zsh config 2026-09-22 23:34:54 +01:00
.zshenv Production servers have red prompt and show username 2026-09-23 21:36:28 +00:00
.zshrc Bootstrap zsh dependencies once per host 2026-09-24 22:12:51 +01:00
AGENTS.md Bootstrap zsh dependencies once per host 2026-09-24 22:12:51 +01:00
aliases.zsh First version of zsh config 2026-09-22 23:34:54 +01:00
bindings.zsh First version of zsh config 2026-09-22 23:34:54 +01:00
dependencies.zsh Bootstrap zsh dependencies once per host 2026-09-24 22:12:51 +01:00
fzf.zsh First version of zsh config 2026-09-22 23:34:54 +01:00
plugins.zsh First version of zsh config 2026-09-22 23:34:54 +01:00
prompt.zsh Production servers have red prompt and show username 2026-09-23 21:36:28 +00:00
README.md Bootstrap zsh dependencies once per host 2026-09-24 22:12:51 +01:00
starship.toml Production servers have red prompt and show username 2026-09-23 21:36:28 +00:00

Andy's zshrc

To use add the following to /etc/zshenv

if [[ -z "$XDG_CONFIG_HOME" ]]
then
    export XDG_CONFIG_HOME="$HOME/.config"
fi

if [[ -d "$XDG_CONFIG_HOME" ]]
then
    export ZDOTDIR="$XDG_CONFIG_HOME/zsh"
fi

Dependencies

On the first interactive startup on each host/OS, dependencies.zsh checks for the tools below and installs missing packages in one Homebrew or apt-get command. Later startups only check for a marker in $XDG_STATE_HOME/zsh, even if installation failed. To retry after fixing an issue or changing installed tools, remove $XDG_STATE_HOME/zsh/dependencies-${HOST}-${OSTYPE}.checked.

Manual installation (if preferred):

macOS

brew install eza zoxide bat fzf ripgrep fd starship neovim

Ubuntu / Debian

sudo apt-get install -y eza zoxide bat fzf ripgrep fd-find starship neovim
ln -s "$(command -v batcat)" ~/.local/bin/bat
ln -s "$(command -v fdfind)" ~/.local/bin/fd