Watch
1
0
Fork
You've already forked dotfiles
0
dotfiles/.config/shell/env

64 lines
1.9 KiB
Text
Raw Normal View History

#!/bin/sh
# Environment variables for all kinds of shells
# Standard XDG base directories
# See: https://wiki.archlinux.org/title/XDG_Base_Directory
export XDG_CACHE_HOME="$HOME/.cache"
export XDG_CONFIG_HOME="$HOME/.config"
export XDG_DATA_HOME="$HOME/.local/share" # also set in ~/.local/bin/dotfiles-{install,update}
export XDG_STATE_HOME="$HOME/.local/state"
# Make up a XDG directory for binaries (that does not exist in the standard)
2026-08-03 02:57:48 +02:00
export XDG_BIN_HOME="$HOME/.local/bin" # also set in ~/.local/bin/dotfiles-install
# Convenient names for various places in the system
export DOTFILES_DIR="$XDG_DATA_HOME/dotfiles" # also set in ~/.local/bin/dotfiles-{install,update}
# Generic shell configs
[ -t 0 ] && export GPG_TTY=$(tty)
if _command_exists vim; then
export EDITOR=vim
export SUDO_EDITOR="$EDITOR"
export VISUAL="$EDITOR"
fi
export PAGER=less
export LESS="--chop-long-lines --ignore-case --LONG-PROMPT --no-init --raw-control-chars --status-column --quit-if-one-screen"
[ -f "$XDG_CONFIG_HOME/shell/locale" ] && . "$XDG_CONFIG_HOME/shell/locale"
2026-08-03 02:57:48 +02:00
# ~/.local/bin/dotfiles-install symlinks Debian's `batcat` to ~/.local/bin/bat
for _bat in batcat bat; do
if _command_exists "$_bat"; then
export MANPAGER="sh -c 'col -bx | $_bat --language man --plain'"
export MANROFFOPT="-c"
break
fi
done
unset _bat
# Move common tools' config and cache files into XDG directories
2026-08-03 02:57:48 +02:00
export BAT_CONFIG_PATH="$XDG_CONFIG_HOME/bat/config"
export INPUTRC="$XDG_CONFIG_HOME/readline/inputrc"
export LESSHISTFILE="$XDG_STATE_HOME/less/history"
2026-08-03 03:33:26 +02:00
export PSQLRC="$XDG_CONFIG_HOME/psql/psqlrc"
2026-08-03 04:00:21 +02:00
export PYENV_ROOT="$XDG_DATA_HOME/pyenv"
export PYTHONPYCACHEPREFIX="$XDG_CACHE_HOME/python"
export PYTHONSTARTUP="$XDG_CONFIG_HOME/python/startup.py"
export PYTHON_HISTORY="$XDG_STATE_HOME/python/history"
export VIMINIT='let $MYVIMRC="'"$XDG_CONFIG_HOME"'/vim/vimrc" | source $MYVIMRC'