Artem Dolgiy 2025-01-10 17:19:15 +03:00
parent ee24049ccc
commit 6b9902950e
2 changed files with 51 additions and 51 deletions

View File

@ -6,42 +6,51 @@
- [Первоначальная настройка GNU Linux после установки](#первоначальная-настройка-gnu-linux-после-установки) - [Первоначальная настройка GNU Linux после установки](#первоначальная-настройка-gnu-linux-после-установки)
- [Автонастройка](#автонастройка) - [Автонастройка](#автонастройка)
- [Tmux](#tmux) - [Ручная настройка](#ручная-настройка)
- [Установка tmux](#установка-tmux) - [Tmux](#tmux)
- [Скачивание конфига и запуск](#скачивание-конфига-и-запуск) - [Установка tmux](#установка-tmux)
- [Оболочка zsh](#оболочка-zsh) - [Скачивание конфига и запуск](#скачивание-конфига-и-запуск)
- [Oh-My-Zsh — популярный и активно развивающийся фреймворк Zsh, который позволяет гибко настроить оболочку терминала](#oh-my-zsh--популярный-и-активно-развивающийся-фреймворк-zsh-который-позволяет-гибко-настроить-оболочку-терминала) - [Оболочка zsh](#оболочка-zsh)
- [Подсветка синтаксиса в консоли при вводе - `zsh-syntax-highlighting`](#подсветка-синтаксиса-в-консоли-при-вводе---zsh-syntax-highlighting) - [Oh-My-Zsh — популярный и активно развивающийся фреймворк Zsh, который позволяет гибко настроить оболочку терминала](#oh-my-zsh--популярный-и-активно-развивающийся-фреймворк-zsh-который-позволяет-гибко-настроить-оболочку-терминала)
- [Автодополнение команд из истории](#автодополнение-команд-из-истории) - [Подсветка синтаксиса в консоли при вводе - `zsh-syntax-highlighting`](#подсветка-синтаксиса-в-консоли-при-вводе---zsh-syntax-highlighting)
- [Внешний вид - плагин PowerLevel10K](#внешний-вид---плагин-powerlevel10k) - [Автодополнение команд из истории](#автодополнение-команд-из-истории)
- [Установить шрифт с поддержкой иконок](#установить-шрифт-с-поддержкой-иконок) - [Внешний вид - плагин PowerLevel10K](#внешний-вид---плагин-powerlevel10k)
- [Установить непосредственно плагин PowerLevel10K для Oh My Zsh](#установить-непосредственно-плагин-powerlevel10k-для-oh-my-zsh) - [Установить шрифт с поддержкой иконок](#установить-шрифт-с-поддержкой-иконок)
- [Настройка](#настройка) - [Установить непосредственно плагин PowerLevel10K для Oh My Zsh](#установить-непосредственно-плагин-powerlevel10k-для-oh-my-zsh)
- [Aliases](#aliases) - [Настройка](#настройка)
- [Aliases](#aliases)
## Автонастройка ## Автонастройка
Для упрощения процесса настройки можно воспользоваться [установочным скриптом](install.sh) Для упрощения процесса настройки можно воспользоваться [установочным скриптом](install.sh)
- выполнится установку `tmux`, из репозитория будет скопирован конфигурационный файл с настройками. Первый запуск будет долгим, т.к. будут скачаны темы и плагины
- выполнится установка `zsh` и плагинов `zsh-syntax-highlighting` (подсветка известных команд) `zsh-autosuggestions` (автодополнение команд из истории)
- выполнится установка и настройка фреймворка для `zsh` - [Oh-My-Zsh](https://ohmyz.sh/)
- для пользователя произойдёт смена оболочки на `zsh`
- [PowerLevel10K](https://github.com/romkatv/powerlevel10k) установлен НЕ БУДЕТ, т.к. требует интерактивной настройки при первом запуске
```shell ```shell
wget https://git.da2001.ru/da2001/dots/raw/branch/main/tmux_zsh_install.sh wget https://git.da2001.ru/da2001/dots/raw/branch/main/tmux_zsh_install.sh
``` ```
Скрипт необходимо запукать от имени текущего пользователя с повышенными привилегиями - sudo Скрипт необходимо запукать от имени текущего пользователя. Пользователь должен имень привилегии `sudo`, в процессе выполнения скрипт попросит ввести пароль для установки пакетов и смены консоли пользователя.
```shell ```shell
sudo bash install.sh bash install.sh
``` ```
## Tmux ## Ручная настройка
### Установка tmux ### Tmux
#### Установка tmux
```shell ```shell
sudo apt-get update && sudo apt-get install -y curl git tmux sudo apt-get update && sudo apt-get install -y curl git tmux
``` ```
### Скачивание конфига и запуск #### Скачивание конфига и запуск
Плагины установятся автоматически Плагины установятся автоматически
@ -57,13 +66,13 @@ curl --create-dirs -fLo \
tmux tmux
``` ```
## Оболочка zsh ### Оболочка zsh
```shell ```shell
sudo apt-get update && sudo apt-get install -y zsh zsh-syntax-highlighting sudo apt-get update && sudo apt-get install -y zsh zsh-syntax-highlighting
``` ```
### [Oh-My-Zsh](https://ohmyz.sh/) — популярный и активно развивающийся фреймворк Zsh, который позволяет гибко настроить оболочку терминала #### [Oh-My-Zsh](https://ohmyz.sh/) — популярный и активно развивающийся фреймворк Zsh, который позволяет гибко настроить оболочку терминала
Установка - [тыц](https://ohmyz.sh/#install) Установка - [тыц](https://ohmyz.sh/#install)
@ -71,7 +80,7 @@ sudo apt-get update && sudo apt-get install -y zsh zsh-syntax-highlighting
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
``` ```
### Подсветка синтаксиса в консоли при вводе - `zsh-syntax-highlighting` #### Подсветка синтаксиса в консоли при вводе - `zsh-syntax-highlighting`
<https://github.com/zsh-users/zsh-syntax-highlighting> <https://github.com/zsh-users/zsh-syntax-highlighting>
@ -85,7 +94,7 @@ sudo apt-get update && sudo apt-get install -y zsh-syntax-highlighting
echo "source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc echo "source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc
``` ```
### Автодополнение команд из истории #### Автодополнение команд из истории
<https://github.com/zsh-users/zsh-autosuggestions> <https://github.com/zsh-users/zsh-autosuggestions>
@ -116,11 +125,11 @@ source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
source ~/.zshrc source ~/.zshrc
``` ```
### Внешний вид - плагин PowerLevel10K #### Внешний вид - плагин PowerLevel10K
Тема [PowerLevel10K](https://github.com/romkatv/powerlevel10k) Тема [PowerLevel10K](https://github.com/romkatv/powerlevel10k)
#### Установить шрифт с поддержкой иконок ##### Установить шрифт с поддержкой иконок
```shell ```shell
https://github.com/ryanoasis/nerd-fonts?tab=readme-ov-file#font-installation https://github.com/ryanoasis/nerd-fonts?tab=readme-ov-file#font-installation
@ -137,7 +146,7 @@ rm JetBrainsMono.tar.xz
fc-cache fc-cache
``` ```
#### Установить непосредственно плагин PowerLevel10K для Oh My Zsh ##### Установить непосредственно плагин PowerLevel10K для Oh My Zsh
```shell ```shell
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
@ -149,11 +158,11 @@ git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$
ZSH_THEME="powerlevel10k/powerlevel10k" ZSH_THEME="powerlevel10k/powerlevel10k"
``` ```
#### Настройка ##### Настройка
После первого запуска консоли будет запущен мастер настройки внешнего вида PowerLevel10K После первого запуска консоли будет запущен мастер настройки внешнего вида PowerLevel10K
## Aliases ### Aliases
При переключении между `bash` и `zsh` удобнее иметь единый файл для псевдонимов (aliases) - `.aliases` и связать его с `.bashrc` и `.zshrc`: При переключении между `bash` и `zsh` удобнее иметь единый файл для псевдонимов (aliases) - `.aliases` и связать его с `.bashrc` и `.zshrc`:

View File

@ -1,8 +1,9 @@
#!/bin/bash #!/bin/bash
set -x #set -x
apt-get update
apt-get install -y curl git tmux zsh zsh-syntax-highlighting sudo apt-get update
sudo apt-get install -y curl git tmux zsh zsh-syntax-highlighting
# Tmux config # Tmux config
curl --create-dirs -fLo \ curl --create-dirs -fLo \
@ -10,10 +11,7 @@ curl --create-dirs -fLo \
https://git.da2001.ru/da2001/dots/raw/branch/main/.config/tmux/tmux.conf https://git.da2001.ru/da2001/dots/raw/branch/main/.config/tmux/tmux.conf
# Install Oh My Zsh # Install Oh My Zsh
wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended
RUNZSH='no' sh install.sh
rm install.sh
sed -i 's/^ZSH_THEME=.*/ZSH_THEME="tjkirch"/g' ~/.zshrc sed -i 's/^ZSH_THEME=.*/ZSH_THEME="tjkirch"/g' ~/.zshrc
# Install zsh-syntax-highlighting # Install zsh-syntax-highlighting
@ -21,36 +19,29 @@ echo "source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >>
# Install zsh-autosuggestions # Install zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
sed -i 's/^plugins=.*[^\)]/& zsh-autosuggestions/g' ~/.zshrc sed -i 's/^plugins=.*[^\)]/& zsh-autosuggestions/g' ~/.zshrc
# # PowerLevel10K
# 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
# git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
# sed -i 's/^ZSH_THEME=.*/ZSH_THEME="powerlevel10k\/powerlevel10k"/g' ~/.zshrc
# Aliases # Aliases
echo "Create => .aliases"
cat << EOF >> ~/.aliases cat << EOF >> ~/.aliases
.aliases
alias ip='ip --color=auto' alias ip='ip --color=auto'
alias ssht='ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no' alias ssht='ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no'
EOF EOF
# .bashrc echo "Add link .aliases to .bashrc"
cat << EOF >> ~/.bashrc cat << EOF >> ~/.bashrc
if [ -f ~/.aliases ]; then if [ -f ~/.aliases ]; then
. ~/.aliases . ~/.aliases
fi fi
EOF EOF
# zshrc echo "Add link .aliases to .zshrc"
cat << EOF >> ~/.zshrc cat << EOF >> ~/.zshrc
source $HOME/.aliases source ~/.aliases
EOF EOF
# Shell to zsh
echo "Change sheel for $USER"
sudo -k chsh -s "$(which zsh)" "$USER" # -k forces the password prompt
echo "ALL Done. Relogin for apply settings."