Настройка zsh
Go to file
2022-09-13 11:02:08 +03:00
terminfo Обновление поддержки kitty 2022-07-05 10:54:44 +03:00
.gitignore Отложенная загрузка медленных плагинов 2021-12-07 12:03:46 +03:00
.p10k.zsh Цвет приглашения при удалённом доступе 2021-12-09 10:36:44 +03:00
.zshenv Переход на zcomet 2021-12-07 00:48:22 +03:00
.zshrc Убраны медленные плагины 2021-12-07 08:22:48 +03:00
05-start.zsh Команды для настройки kitty и mc 2021-12-12 15:17:40 +03:00
15-env.zsh Отказ от поиска в несуществующем каталоге 2022-01-23 16:38:23 +03:00
25-history.zsh Уменьшен размер истории ввода команд 2022-09-08 12:02:01 +03:00
35-options.zsh Прямая загрузка grc 2021-12-07 13:19:06 +03:00
42-zcomet.zsh Переход на zcomet 2021-12-07 00:48:22 +03:00
45-prompt.zsh Для обновлённого powerline10k требуется zsh 5.3 2022-06-04 06:07:41 +03:00
48-plugins.zsh Использование fzf из устанавливаемого плагина 2022-09-08 12:02:31 +03:00
55-agents.zsh Исправлено использование отложенной загрузки плагинов 2021-12-11 12:15:10 +03:00
65-scripts.zsh Обновление поддержки kitty 2022-07-05 10:54:44 +03:00
75-aliases.zsh lazygit 2022-09-13 11:02:08 +03:00
85-completion.zsh Отключен плагин подсветки синтаксиса 2022-09-08 12:04:13 +03:00
95-finish.zsh Отказ от автоматической настройки для терминала kitty 2022-09-08 12:00:37 +03:00
README.md Обновление документации 2022-09-08 12:10:01 +03:00

Установка

Установка оболочки Zsh:

sudo apt-get install git zsh

Установка желательных пакетов:

sudo apt-get install autojump grc grepcidr keychain peco wmctrl xdotool

Если в системе установлен пакет fzf, лучше его удалить, так как устанавливаемый плагин может с ним конфликтовать:

sudo apt-get remove fzf

Клонирование репозитория в каталог ~/.config/zsh:

git clone https://git.246060.ru/f1x1t/zshrc ~/.config/zsh

Базовая настройка

С правами суперпользователя открыть файл /etc/zsh/zshenv в редакторе командой

sudo ${EDITOR:-mcedit} /etc/zsh/zshenv

и добавить строку

[[ -z "$ZDOTDIR" ]] && export ZDOTDIR="$HOME/.config/zsh"

Установить интерпретатор Zsh по умолчанию для пользователя username.

sudo usermod -s /usr/bin/zsh username

Настройка агентов

Существует несколько вариантов настройки агентов для SSH и/или GPG. Для любого из вариантов следует скопировать шаблонный файл для настроек:

cp ~/.config/zsh/55-agents.zsh ~/.config/zsh/55-agents.user.zsh

Настройка GPG агента

Раскомментировать в файле ~/.config/zsh/55-agents.user.zsh строки:

# zcomet load ohmyzsh plugins/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/55-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
# zcomet load ohmyzsh plugins/ssh-agent

Добавить в конец файла ~/.ssh/config правило для разрешения агенту сохранять ключи:

Host *
    AddKeysToAgent yes
    IdentityFile ~/.ssh/id_rsa

Настройка Keychain

Программа Keychain позволит использовать агенты GPG и SSH между входами в систему. Для её работы необходимо отключить в системе все автоматические запуски агентов, например в файле /etc/X11/Xsession.options удалить строку:

use-ssh-agent

Раскомментировать в файле ~/.config/zsh/55-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
# zcomet load ohmyzsh plugins/keychain

Отредактировать файлы настроек для агента GPG и SSH, как это описано в разделах выше.

Инициализация

После редактирования файлов настройки запустить zsh. Автоматически будет загружен менеджер zcomet и необходимые плагины.

Обновление

Обновление zcomet и плагинов:

zu