dotfiles/dot_config/zsh/dot_zshrc.tmpl
2025-03-24 17:24:38 +01:00

49 lines
1.5 KiB
Cheetah

{{- if eq .chezmoi.osRelease.id "endeavouros" }}
test -v DISTROBOX_HOST_HOME && { unset ZDOTDIR; exec zsh }
test -v SSH_CONNECTION && eval "$(zellij setup --generate-auto-start zsh)"
{{- end }}
# options
setopt NO_CLOBBER
unsetopt FLOW_CONTROL
# deduplicate path
typeset -U path PATH
{{- if eq .chezmoi.osRelease.id "endeavouros" }}
path+=("$XDG_DATA_HOME"/JetBrains/Toolbox/scripts) # jetbrains toolbox
path+=("$XDG_DATA_HOME/mise/shims") # mise
path+=("$XDG_CONFIG_HOME"/composer/vendor/bin) # composer
{{- end }}
path+=("$HOME"/.local/bin) # local bin
# startup banner
potentialBanner=('joke bofh' 'joke dad' 'fastfetch')
eval "$potentialBanner[$RANDOM%$#potentialBanner+1]"
# antidote
{{- if eq .chezmoi.osRelease.id "endeavouros" }}
source '/usr/share/zsh-antidote/antidote.zsh'
{{- else }}
test -r "$XDG_DATA_HOME"/antidote/antidote.zsh || git clone https://github.com/mattmc3/antidote.git "$XDG_DATA_HOME"/antidote
source "$XDG_DATA_HOME"/antidote/antidote.zsh
{{- end }}
zstyle ':antidote:bundle' use-friendly-names 'yes'
antidote load
# load programs
smartcache eval zoxide init --cmd cd zsh
smartcache eval atuin init zsh
smartcache eval direnv hook zsh
{{- if eq .chezmoi.osRelease.id "endeavouros" }}
eval "$(mise activate zsh)"
{{- end }}
# source files
source "$ZDOTDIR"/files/aliases.zsh
# local overrides
for sourced in "$XDG_DATA_HOME"/zsh/*; do source $sourced; done
# theme
ompTheme="https://github.com/JanDeDobbeleer/oh-my-posh/blob/main/themes/emodipt-extend.omp.json"
eval "$(oh-my-posh init zsh --config="$ompTheme")"