# Первоначальная настройка 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` ```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 ``` #### Автодополнение команд из истории Установка в 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' ```