Starship, это оболочка для терминала, написанная на языке Rust. Является свободной и с открытым исходным кодом. По сути, это кроссплатформенная оболочка, которую можно установить на другие операционные системы. Из преимуществ можно выделить, минималистичность, быстроту работы, настраиваемость самой оболочки. Интеграция с Git, что для разработчиков может быть крайне полезно.
В случае, если рассматриваете замену обычного терминала в операционных системах Linux, обратите внимания помимо Starship еще и на Fish Shell либо ZSH.
Устанавливаем шрифт для работы starship
Для корректной работы starship необходимы шрифты, в этой же статье ограничимся только одним шрифтом, а именно firacode. При желании, можно загрузить дополнительные шрифты по этой ссылке. Скачиваете и распаковываете в директорию “/.local/share/fonts”. Итак, устанавливаем шрифт, процесс установки будет приведен для deb ориентированных систем, таких как Debian, Ubuntu, Linux Mint и так далее:
sudo apt install fonts-firacode

В других дистрибутивах, возможно, процесс установки будет немного отличаться. В любом случае, если указанного шрифта в репозиториях вашего дистрибутива нет, то скачивайте его по ссылке выше и устанавливайте в указанную директорию.
Установка starship в дистрибутивах Linux
После того как установили шрифт, можно приступать к установке оболочки терминала starship. Предварительно убедившись, что “curl” присутствует у нас в системе. Что бы этого выяснить, можно ввести команду “curl –version”. Если curl отсутствует, то необходимо его установить, пример установки для deb систем:
sudo apt install curl
Для Arch/Manjaro:
sudo pacman -S curl
Для Fedora
sudo dnf install curl
Итак, когда все необходимые шаги выполнены, можно переходить к наконец к установке starship:
curl -sS https://starship.rs/install.sh | sh

Соглашаемся на установку, после чего будет скачан скрипт и автоматически, без дальнейшего вашего участия, будет установлен starship. Дальнейшие действия зависят от вашей текущей оболочки терминала, добавляем следующие строки в конец конфигурационного файла, отвечающего за вашу оболочку:
Bash
eval "$(starship init bash)"
Fish
starship init fish | source
Zsh
eval "$(starship init zsh)"
К примеру, для bash это файл с названием .bashrc, который расположен в домашней директории пользователя. Открываем его и добавляем в него соответствующую строку, после чего необходимо перезапустить терминал:
nano ~/.bashrc

Создание конфигурационного файла для starship
Переходим к настройке starship, для того что бы можно было кастомизировать под свои нужды данную оболочку, давайте создадим конфигурационный файл:
nano ~/.config/starship.toml
В открывшемся окне вписываем необходимые параметры, к примеру, измени приглашение в терминале:
# Use custom format
format = '''
[┌───────────────────>](bold green)
[│](bold green)$directory$rust$package
[└─>](bold green) '''
# Wait 10 milliseconds for starship to check files under the current directory.
scan_timeout = 10
# Disable the blank line at the start of the prompt
add_newline = false
# Set 'foo' as custom color palette
palette = 'foo'
# Define custom colors
[palettes.foo]
# Overwrite existing color
blue = '21'
# Define new color
mustard = '#af8700'

Заключение
Starship может стать отличной заменой обычному терминалу Linux, при желании, его легко можно модернизировать его под свои нужды. Более подробно о возможных конфигурациях написано на официальной странице Starship. Страница с возможностями starship частично переведена на Русский язык, там же имеются примеры возможных конфигураций.
Удалить starship можно следующими командами, сначала удалим конфигурационный файл:
rm ~/.config/starship.toml
Теперь удаляем сам starship:
sh -c 'rm "$(command -v 'starship')"'
И наконец, удаляем вписанную ранее строку в конфигурационный файл, как в данном случае это было сделано в .bashrc.
А на этом сегодня все, если статья оказалась вам полезна, подписывайтесь на рассылку журнала в pdf формате, а так же на социальные сети журнала Cyber-X:
По вопросам работы сайта, сотрудничества, а так же по иным возникшим вопросам пишите на E-Mail. Если вам нравится журнал и вы хотите отблагодарить за труды, вы можете перечислить донат на развитие проекта.