mirror of
https://github.com/prdlk/dotfiles.git
synced 2026-11-02 11:32:42 +00:00
~/.atuin/bin held an old standalone atuin (18.19.0) that the shells prepended to PATH, shadowing pacman's /usr/bin/atuin (18.21.0). The daemon runs the packaged binary and migrated the history DB, so every shell command through the old one failed with "migration 20260818000000 was previously applied but is missing in the resolved migrations". Drop conf.d/atuin.env.fish, the `. ~/.atuin/bin/env` lines in .bashrc and .zshrc (atuin init is now guarded on `command -v atuin`), the cargo-dist receipt, and atuin-pick's ~/.atuin/bin fallback. Also drop `atuin ai init fish`, which 18.21 removed; config.fish already carries the `?` binding it emitted.
89 lines
3.3 KiB
Plaintext
89 lines
3.3 KiB
Plaintext
# ~/.zshrc — managed by chezmoi
|
|
|
|
# History
|
|
HISTFILE="$HOME/.zsh_history"
|
|
HISTSIZE=10000
|
|
SAVEHIST=10000
|
|
setopt SHARE_HISTORY HIST_IGNORE_DUPS
|
|
|
|
# Completion
|
|
autoload -Uz compinit && compinit
|
|
|
|
# PATH extras / tool envs (machine-optional, guarded)
|
|
case ":$PATH:" in *":$HOME/.local/bin:"*) ;; *) PATH="$HOME/.local/bin:$PATH" ;; esac
|
|
[ -f "$HOME/.cargo/env" ] && . "$HOME/.cargo/env"
|
|
[ -d "$HOME/.maestro/bin" ] && PATH="$PATH:$HOME/.maestro/bin"
|
|
|
|
# Go — GOPATH/GOBIN under ~/.local/share to keep $HOME clean.
|
|
# GOROOT is provided by mise (toolchain lives under ~/.local/share/mise).
|
|
export GOPATH="$HOME/.local/share/go"
|
|
export GOBIN="$GOPATH/bin"
|
|
case ":$PATH:" in *":$GOBIN:"*) ;; *) PATH="$GOBIN:$PATH" ;; esac
|
|
|
|
# Repo roots (ghq) — same as fish's conf.d/10-env.fish; the ghq-repos tv
|
|
# cable (ctrl-o) lists this root.
|
|
export GHQ_ROOT="$HOME/Code"
|
|
export CODE_ROOT="$HOME/Code"
|
|
|
|
# Android SDK — relocated under ~/.local/share/android.
|
|
export ANDROID_HOME="$HOME/.local/share/android"
|
|
export ANDROID_SDK_ROOT="$ANDROID_HOME"
|
|
for _adir in "$ANDROID_HOME/platform-tools" "$ANDROID_HOME/cmdline-tools/latest/bin" "$ANDROID_HOME/emulator"; do
|
|
case ":$PATH:" in *":$_adir:"*) ;; *) [ -d "$_adir" ] && PATH="$PATH:$_adir" ;; esac
|
|
done
|
|
unset _adir
|
|
|
|
# GITHUB_TOKEN from gh's keyring login — never stored on disk. An inherited
|
|
# value wins, so nested shells skip the gh call.
|
|
if [ -z "${GITHUB_TOKEN:-}" ] && command -v gh >/dev/null 2>&1; then
|
|
_gh_token="$(gh auth token 2>/dev/null)"
|
|
[ -n "$_gh_token" ] && export GITHUB_TOKEN="$_gh_token"
|
|
unset _gh_token
|
|
fi
|
|
|
|
# Shared aliases (same set as fish/bash; source of truth: .chezmoidata/aliases.yaml)
|
|
[ -f "$HOME/.config/shell/aliases.sh" ] && . "$HOME/.config/shell/aliases.sh"
|
|
|
|
# Shell functions — one file per function, zsh ports of the fish ones
|
|
# (cwd/history-touching helpers; standalone tools live in ~/.local/bin)
|
|
if [ -d "$HOME/.config/zsh/functions" ]; then
|
|
for _f in "$HOME/.config/zsh/functions"/*.zsh; do
|
|
[ -r "$_f" ] && . "$_f"
|
|
done
|
|
unset _f
|
|
fi
|
|
|
|
# ZLE keybinds — zsh ports of fish_user_key_bindings.fish
|
|
[ -f "$HOME/.config/zsh/keybinds.zsh" ] && . "$HOME/.config/zsh/keybinds.zsh"
|
|
|
|
# suvadu shell history
|
|
command -v suv >/dev/null 2>&1 && eval "$(suv init zsh)"
|
|
|
|
# Generated for envman. Do not edit.
|
|
[ -s "$HOME/.config/envman/load.sh" ] && . "$HOME/.config/envman/load.sh"
|
|
|
|
# Prompt — starship, consistent with fish
|
|
command -v starship >/dev/null 2>&1 && eval "$(starship init zsh)"
|
|
|
|
# television: ctrl-t smart autocomplete (its ctrl-r is taken over by atuin
|
|
# below, as in fish)
|
|
command -v tv >/dev/null 2>&1 && eval "$(tv init zsh)"
|
|
|
|
# Fish-style syntax highlighting (zsh-users/zsh-syntax-highlighting).
|
|
# MUST stay last in .zshrc: it wraps every zle widget defined above
|
|
# (keybinds, compinit, suv/starship hooks).
|
|
for _zsh_hl in \
|
|
/usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh \
|
|
/opt/homebrew/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh \
|
|
/usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh; do
|
|
[ -r "$_zsh_hl" ] && . "$_zsh_hl" && break
|
|
done
|
|
unset _zsh_hl
|
|
|
|
# atuin comes from the package manager (/usr/bin); see ~/.bashrc.
|
|
command -v atuin >/dev/null 2>&1 && eval "$(atuin init zsh)"
|
|
|
|
# >>> termium >>>
|
|
case ":$PATH:" in *:'/home/prad/.local/bin':*) ;; *) export PATH='/home/prad/.local/bin':"$PATH" ;; esac
|
|
# <<< termium <<<
|