dots/README.md

184 lines
7.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# Первоначальная настройка GNU Linux после установки
В репозитории собраны некоторые конфигурационные файлы для комфортной работы в консоли GNU Linux
- [Первоначальная настройка GNU Linux после установки](#первоначальная-настройка-gnu-linux-после-установки)
- [Автонастройка](#автонастройка)
- [Ручная настройка](#ручная-настройка)
- [Tmux](#tmux)
- [Установка tmux](#установка-tmux)
- [Скачивание конфига и запуск](#скачивание-конфига-и-запуск)
- [Оболочка zsh](#оболочка-zsh)
- [Oh-My-Zsh — популярный и активно развивающийся фреймворк Zsh, который позволяет гибко настроить оболочку терминала](#oh-my-zsh--популярный-и-активно-развивающийся-фреймворк-zsh-который-позволяет-гибко-настроить-оболочку-терминала)
- [Подсветка синтаксиса в консоли при вводе - `zsh-syntax-highlighting`](#подсветка-синтаксиса-в-консоли-при-вводе---zsh-syntax-highlighting)
- [Автодополнение команд из истории](#автодополнение-команд-из-истории)
- [Внешний вид - плагин PowerLevel10K](#внешний-вид---плагин-powerlevel10k)
- [Установить шрифт с поддержкой иконок](#установить-шрифт-с-поддержкой-иконок)
- [Установить непосредственно плагин PowerLevel10K для Oh My Zsh](#установить-непосредственно-плагин-powerlevel10k-для-oh-my-zsh)
- [Настройка](#настройка)
- [Aliases](#aliases)
## Автонастройка
Для упрощения процесса настройки можно воспользоваться [установочным скриптом](tmux_zsh_install.sh)
- выполнится установка `tmux`, из репозитория будет скопирован конфигурационный файл с настройками. Первый запуск будет долгим, т.к. будут скачаны темы и плагины
- выполнится установка `zsh` и плагинов `zsh-syntax-highlighting` (подсветка известных команд) `zsh-autosuggestions` (автодополнение команд из истории)
- выполнится установка и настройка фреймворка для `zsh` - [Oh-My-Zsh](https://ohmyz.sh/)
- для пользователя произойдёт смена оболочки на `zsh`
- [PowerLevel10K](https://github.com/romkatv/powerlevel10k) установлен НЕ БУДЕТ, т.к. требует интерактивной настройки при первом запуске
```shell
wget https://git.da2001.ru/da2001/dots/raw/branch/main/tmux_zsh_install.sh
```
Скрипт необходимо запукать от имени текущего пользователя. Пользователь должен имень привилегии `sudo`, в процессе выполнения скрипт попросит ввести пароль для установки пакетов и смены консоли пользователя.
```shell
bash install.sh
```
## Ручная настройка
### Tmux
#### Установка tmux
```shell
sudo apt-get update && sudo apt-get install -y curl git tmux
```
#### Скачивание конфига и запуск
Плагины установятся автоматически
```shell
curl --create-dirs -fLo \
~/.config/tmux/tmux.conf \
https://git.da2001.ru/da2001/dots/raw/branch/main/.config/tmux/tmux.conf
```
После скачивания конфига можно запускать tmux, первый запуск будет долгим, т.к. потребуется скачать плагины
```shell
tmux
```
### Оболочка zsh
```shell
sudo apt-get update && sudo apt-get install -y zsh zsh-syntax-highlighting
```
#### [Oh-My-Zsh](https://ohmyz.sh/) — популярный и активно развивающийся фреймворк Zsh, который позволяет гибко настроить оболочку терминала
Установка - [тыц](https://ohmyz.sh/#install)
```sh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
```
#### Подсветка синтаксиса в консоли при вводе - `zsh-syntax-highlighting`
<https://github.com/zsh-users/zsh-syntax-highlighting>
```shell
sudo apt-get update && sudo apt-get install -y zsh-syntax-highlighting
```
Для активации подсветки синтаксиса необходимо добавить путь к скрипту в настройки `.zshrc`
```shell
echo "source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc
```
#### Автодополнение команд из истории
<https://github.com/zsh-users/zsh-autosuggestions>
Установка в Oh My Zsh
```shell
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
```
Добавить плагин к списку плагинов Oh My Zsh `~/.zshrc`:
```shell
plugins=(
# other plugins...
zsh-autosuggestions
)
```
Для дефолтного zsh
```sh
source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
```
Перезагрузить оболочку
```sh
source ~/.zshrc
```
#### Внешний вид - плагин PowerLevel10K
Тема [PowerLevel10K](https://github.com/romkatv/powerlevel10k)
##### Установить шрифт с поддержкой иконок
```shell
https://github.com/ryanoasis/nerd-fonts?tab=readme-ov-file#font-installation
```
если кратко:
```shell
apt-get install -y fontconfig
mkdir -p ~/.local/share/fonts
curl -OL https://github.com/ryanoasis/nerd-fonts/releases/latest/download/JetBrainsMono.tar.xz
tar -xvf JetBrainsMono.tar.xz -C ~/.local/share/fonts
rm JetBrainsMono.tar.xz
fc-cache
```
##### Установить непосредственно плагин PowerLevel10K для Oh My Zsh
```shell
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
```
В настройках `~/.zshrc` заменить значение темы на
```shell
ZSH_THEME="powerlevel10k/powerlevel10k"
```
##### Настройка
После первого запуска консоли будет запущен мастер настройки внешнего вида PowerLevel10K
### Aliases
При переключении между `bash` и `zsh` удобнее иметь единый файл для псевдонимов (aliases) - `.aliases` и связать его с `.bashrc` и `.zshrc`:
```shell
.bashrc
if [ -f ~/.aliases ]; then
. ~/.aliases
fi
```
```shell
.zshrc
source $HOME/.aliases
```
```shell
.aliases
alias ip='ip --color=auto'
alias ssht='ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no'
```