- Fish Shell – Кастомизация терминала Linux
- Устанавливаем Fish Shell в Debian
- Установка Fish Shell в Ubuntu
- Установка Fish Shell в Fedora
- Установка Fish Shell в Arch / Manjaro
- Настройка Fish Shell
- Заключение
- Installing Zsh and Powerlevel10k on Arch Linux
- Installing Zsh
- Changing The Default Shell
- Installing Powerlevel10k
- Links
- License
Fish Shell – Кастомизация терминала Linux
Работая в терминале Linux иногда хочется придать ему внешний вид который как то выделялся. Можно накатить ZSH, а можно установить Fish Shell. Последний весьма интересный проект, отличается от обычного терминала подсветкой синтаксиса, авто запоминанием вводимых команд, и разумеется кастомизации, то есть изменением внешнего вида. Настройка внешнего вида достигается в веб интерфейсе, который открывается в вашем браузере, что в свою очередь так же отличается от всех остальных терминалов. Сам код Fish Shell написан на языке C и C++, распространяется бесплатно и имеет открытый исходный код.
В любом случае, если вы хотите изменить внешний вид терминала, а так же немного сделать работу в нем более комфортной, одним из способов достичь этого является Fish Shell. Да и в целом проект весьма интересный и обладает многими функциями которые помогают при работе в терминале.
Устанавливаем Fish Shell в Debian
Fish Shell можно установить в операционных системах MacOS, FreeBSD и в Windows, но, мы остановимся только на установке в Linux. Для тех кто хочет установить данную оболочку терминала в других системах, рекомендую ознакомиться с этими инструкциями на официальном сайте. Для того что бы установить Fish Shell в Linux, необходимо подключить репозитории, для этого открываем терминал и вводим команды:
Установка Fish Shell в Debian 10
echo 'deb http://download.opensuse.org/repositories/shells:/fish:/release:/3/Debian_10/ /' | sudo tee /etc/apt/sources.list.d/shells:fish:release:3.list curl -fsSL https://download.opensuse.org/repositories/shells:fish:release:3/Debian_10/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/shells_fish_release_3.gpg > /dev/null
Затем обновляем списки пакетов и устанавливаем Fish Shell в Debian 10
sudo apt update sudo apt install fish
Установка Fish Shell в Debian 11
То же самое проделываем в Debian 11, открываем терминал и вводим следующие команды:
echo 'deb http://download.opensuse.org/repositories/shells:/fish:/release:/3/Debian_11/ /' | sudo tee /etc/apt/sources.list.d/shells:fish:release:3.list curl -fsSL https://download.opensuse.org/repositories/shells:fish:release:3/Debian_11/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/shells_fish_release_3.gpg > /dev/null
Обновляем списки пакетов и устанавливаем Fish Shell в Debian 11
sudo apt update sudo apt install fish
После установки Fish Shell можно найти в установленных программах, вам останется лишь назначить его по умолчанию, а затем пользоваться:
Установка Fish Shell в Ubuntu
Если вы пользователь дистрибутива Ubuntu или ее ответвлений, таких как Linux Mint, то вы можете подключить PPA репозиторий, откуда и установите Fish Shell. Как обычно, переходим в терминал и вводим команду на подключения PPA репозитория:
sudo apt-add-repository ppa:fish-shell/release-3
Нажимаем на Enter что бы подтвердить наши намерения на подключения репозитория, а затем обновляем на всякий пожарный списки пакетов и устанавливаем Fish Shell:
sudo apt update sudo apt install fish
После установки Fish Shell вы найдете в установленных программах, вам останется лишь установить его по умолчанию и назначить его на горячие клавиши. По поводу горячих клавиш в Gnome 3 у нас есть статья, если интересно, она доступна по этой ссылке.
Установка Fish Shell в Fedora
Что касается дистрибутива Fedora, то тут установка Fish Shell еще проще, вам не нужно добавлять репозитории, так как Fish Shell уже имеется в родных репозиториях самого дистрибутива. А для установки вам достаточно выполнить всего одну команду:
Установка Fish Shell в Arch / Manjaro
Точно так же можно установить Fish Shell и в дистрибутивах Arch и его ответвлений, в частности в Manjaro – всего одной командой. Открываем терминал и выполняем команду для установки Fish Shell:
Настройка Fish Shell
Как уже писалось, настройка Fish Shell осуществляется через веб интерфейс, что весьма не характерно в среде Linux для терминалов. Для того что бы вызвать меню настройки, выполняется команда в терминале:
После ее выполнения откроется интерфейс, где можно производить настройки Fish Shell:
Настроить внешний вид Fish Shell можно лишь экспериментами, так как дало это сугубо личное, и для одного один внешний вид будет нравиться, а другому нет. Весь функционал по настройки представлен в веб интерфейсе, но ничто не мешает вам править сами конфиги программы, но, будьте аккуратны, перед тем как править конфиги рекомендую сделать копии исходников.
Заключение
Безусловно, Fish Shell весьма интересный проект, который может не только разукрасить унылый терминал, но и облегчить чтение тех же конфигов благодаря подсветке синтаксиса. В любом случае даже если вас устраивает терминал по умолчанию, попробовать Fish Shell стоит. Более подробную информацию о всех функциях вы можете найти на официальном сайте. Так же, можно найти в сети множества инструкций по Fish Shell, могу порекомендовать вам одно видео, где вы можете почерпнуть некоторую информацию касательно индивидуальной настройки Fish Shell:
А на этом сегодня все, надеюсь, данная статья будет вам полезна.
Хотелось бы выразить огромную благодарность тем, кто принимает активное участие в жизни и развитии журнала, огромное спасибо вам за это.
Журнал Cyber-X
Installing Zsh and Powerlevel10k on Arch Linux
I have been a bash user ever since I started using Linux. But after installing Arch Linux I wanted to give another shell a try and so decided on Zsh. Below is how I went about replacing bash with Zsh.
Installing Zsh
Zsh is installed via pacman.
Check that Zsh has been installed by running it from the terminal.
Since this is the first time that Zsh has been run you should now see zsh-newuser-install which will allow you to setup some basic configuration. If you wish to skip this just press the q key. You can always manually run this with the below commands at a later date.
$ autoload -Uz zsh-newuser-install $ zsh-newuser-install -f
Changing The Default Shell
Installing Zsh does not automatically make it the system’s default shell. The next time you log back in you will find that your current shell is still in use. You can check which shell is been used by looking at the SHELL environment variable.
To see a list of shells that have been installed use the chsh command.
$ chsh -l /bin/sh /bin/bash /usr/bin/git-shell /bin/zsh /usr/bin/zsh
The same command can be used to change the default shell by providing it with the full path to the shell.
Note that this change is not instant and you will need to log out and log in again for it to take affect. Once you have done that check the SHELL environment variable again to confirm the change.
Installing Powerlevel10k
Powerlevel10k is a theme for Zsh and in order to make the most of it you should install the Meslo Nerd Font that has been patched for Powerlevel10k.
$ yay -Sy --noconfirm ttf-meslo-nerd-font-powerlevel10k
You need to configure your terminal to use this font. How this is done is dependant upon what terminal you are using. Since I use st from suckless I need to edit the file config.h and specify MesloLGS NF in the font settings.
static char *font = "MesloLGS NF:pixelsize=14:antialias=true:autohint=true";
Now that the dependences have been meet Powerlevel10k can be installed.
$ yay -Sy --noconfirm zsh-theme-powerlevel10k-git
Once it has been installed ensure that Zsh loads Powerlevel10k.
$ echo 'source /usr/share/zsh-theme-powerlevel10k/powerlevel10k.zsh-theme' >>! ~/.zshrc
You can now open a new terminal which will start the Powerlevel10k configuration wizard. This will ask you a few questions and configure your prompt. If it doesn’t trigger automatically, type p10k configure.
Once the configuration wizard has finished open a new terminal and you should see the Powerlevel10k theme been used.
Links
I don’t have comments as I don’t want to manage them. You can however contact me at the below address if you want to.
License
Copyright © 2021 David T. Sadler.