70 lines
2.1 KiB
Bash
70 lines
2.1 KiB
Bash
# shellcheck shell=bash
|
||
# vim: ft=sh
|
||
|
||
# Запрет чтения настроек из системного каталога /etc
|
||
unsetopt GLOBAL_RCS
|
||
|
||
# PATH {{{
|
||
# Ruby
|
||
if command -v ruby >/dev/null && command -v gem >/dev/null; then
|
||
path=("$(ruby -r rubygems -e 'puts Gem.user_dir')/bin" $path)
|
||
fi
|
||
|
||
# Rust
|
||
[ -r "$HOME/.cargo/env" ] && source "$HOME/.cargo/env"
|
||
|
||
# Поиск в домашнем каталоге
|
||
path=("$HOME/bin" "$HOME/.local/bin" $path)
|
||
|
||
# Удалить дубликаты в массиве
|
||
typeset -aU path
|
||
# }}}
|
||
|
||
# Базовые каталоги {{{
|
||
export XDG_CONFIG_HOME="$HOME/.config"
|
||
export XDG_CACHE_HOME="$HOME/.cache"
|
||
export XDG_DATA_HOME="$HOME/.local/share"
|
||
export XDG_STATE_HOME="$HOME/.local/state"
|
||
|
||
set -a
|
||
[ -r "${XDG_CONFIG_HOME}/user-dirs.dirs" ] && source "${XDG_CONFIG_HOME}/user-dirs.dirs"
|
||
set +a
|
||
|
||
# В домашнем каталоге создать каталоги XDG
|
||
env -0 | grep -z XDG | grep -z -e "_DIR=" -e "_HOME=" | grep -z -F "${HOME}" | sed -z 's/.*=//' | xargs -0 mkdir -p
|
||
# }}}
|
||
|
||
export ZSH_CACHE_DIR="$XDG_CACHE_HOME/zsh"
|
||
export ZSH_COMPDUMP="$ZSH_CACHE_DIR/zcompdump-${HOST/.*/}-$ZSH_VERSION"
|
||
|
||
typeset -g POWERLEVEL9K_INSTANT_PROMPT=off
|
||
|
||
# Короткое имя компьютера, обязательно нужно для ssh-agent.
|
||
# Часто используется в OhMyZsh.
|
||
export SHORT_HOST="${SHORT_HOST:-${(%):-%m}}"
|
||
|
||
# Отключаем некоторые плагины, если запуск в качестве подоболочки mc
|
||
# Bug: https://github.com/MidnightCommander/mc/issues/4253
|
||
[ "$(ps -p $PPID -o cmd=)" = "mc" ] && ZSH_MC_SUBSHELL=1
|
||
|
||
# GnuPG
|
||
export GNUPGHOME="$XDG_CONFIG_HOME/gnupg"
|
||
|
||
# askpass # {{{
|
||
if [[ -n ${DISPLAY+set} ]]; then
|
||
if command -v /usr/lib/openssh/gnome-ssh-askpass >/dev/null 2>&1; then
|
||
# Gnome
|
||
export SSH_ASKPASS=/usr/lib/openssh/gnome-ssh-askpass
|
||
elif command -v /usr/bin/lxqt-openssh-askpass >/dev/null 2>&1; then
|
||
# LxQt
|
||
export SSH_ASKPASS=/usr/bin/lxqt-openssh-askpass
|
||
elif command -v /usr/bin/ssh-askpass >/dev/null 2>&1; then
|
||
# X11
|
||
export SSH_ASKPASS=/usr/bin/ssh-askpass
|
||
fi
|
||
fi
|
||
# }}}
|
||
|
||
[ -r "$ZDOTDIR/.zshenv.user" ] && source "$ZDOTDIR/.zshenv.user"
|
||
|