3.7 KiB
Установка
Установка необходимых пакетов:
sudo apt-get install zsh
Установка желательных пакетов:
sudo apt-get install keychain peco fzf wmctrl xdotool autojump
Клонирование репозитория в каталог ~/.config/zsh
:
git clone https://git.246060.ru/f1x1t/zshrc ~/.config/zsh
Базовая настройка
С правами суперпользователя открыть файл /etc/zsh/zshenv
в редакторе командой
sudo ${EDITOR:-mcedit} /etc/zsh/zshenv
и добавить строку
export ZDOTDIR=$HOME/.config/zsh
Установить интерпретатор Zsh по умолчанию для пользователя username
.
sudo usermod -s /usr/bin/zsh username
Настройка агентов
Существует несколько вариантов настройки агентов для SSH и/или GPG. Для любого из вариантов следует скопировать шаблонный файл для настроек:
cp ~/.config/zsh/agents.zsh ~/.config/zsh/agents.user.zsh
Настройка GPG агента
Раскомментировать в файле ~/.config/zsh/agents.user.zsh
строки:
# zinit ice wait'1' lucid
# zinit light laggardkernel/zsh-gpg-agent
Пример файла настройки GPG агента ~/.config/gnupg/gpg-agent.conf
:
default-cache-ttl 36000
max-cache-ttl 999999
enable-putty-support
default-cache-ttl-ssh 36000
allow-loopback-pinentry
pinentry-program /usr/bin/pinentry-qt
# enable-ssh-support
Чтобы включить в GPG агенте поддержку SSH, нужно раскомментировать последнюю строку.
Настройка SSH агента
Раскомментировать в файле ~/.config/zsh/agents.user.zsh
строки:
# zstyle :omz:plugins:ssh-agent agent-forwarding on
# zstyle :omz:plugins:ssh-agent identities id_rsa
# zstyle :omz:plugins:ssh-agent lifetime 10h
# zinit snippet OMZP::ssh-agent
Добавить в конец файла ~/.ssh/config
правило для разрешения агенту сохранять ключи:
Host *
AddKeysToAgent yes
IdentityFile ~/.ssh/id_rsa
Настройка Keychain
Программа Keychain позволит использовать агенты GPG и SSH между входами в систему.
Для её работы необходимо отключить в системе все автоматические запуски агентов,
например в файле /etc/X11/Xsession.options
.
Раскомментировать в файле ~/.config/zsh/agents.user.zsh
строки:
# zstyle :omz:plugins:keychain identities id_rsa 01234567
# zstyle :omz:plugins:keychain options --quiet --inherit local-once --noask --nocolor --quick
# zstyle :omz:plugins:keychain agents gpg,ssh
# zinit snippet OMZP::keychain
Отредактировать файлы настроек для агента GPG и SSH, как это описано в разделах выше.
Инициализация
После редактирования файлов настройки запустить zsh
, в результате чего будет
загружен менеджер пакетов zinit
и необходимые плагины.
Обновление
Обновление менеджера пакетов:
zinit self-update
Обновление плагинов:
zinit update --parallel