Прокачка терминала в Debian

Признайся: ты до сих пор смотришь на монохромный список файлов после ls и чувствуешь лёгкую тоску? Твой терминал — это интерфейс к могуществу системы, а выглядит он как квитанция из ЖЭКа. Когда коллеги показывают свои подсвеченные консоли с иконками и умным поиском, тебя бросает в дрожь? Спокойно, мы это исправим.
Мы не будем ставить очередную «тему для рабочего стола». Мы прокачаем самое сердце — твой эмулятор терминала. В 2026 году стыдно пользоваться голым «черным окном». Погнали собирать сетап, от которого у тебя пойдут мурашки по клавишам.
1. Фундамент: Сносим старое кладбище и ставим Ptyxis
Если ты всё ещё сидишь в GNOME Terminal... попробуй открыть штук 10 вкладок. Почувствовал, как всё затормозило? А теперь представь, что существует терминал, который использует твою видеокарту не только для майнинга и игр.
Знакомься, Ptyxis. Это как стандартный терминал, но который пил протеин. Он молниеносен, умеет работать с контейнерами (привет, ребята на podman) и — внимание! — восстанавливает сессии. Ты можешь закрыть окно, а открыв снова, обнаружить все вкладки на своих местах. Это не магия, это разработка под GNOME.
Как заиметь:
sudo apt install ptyxisЕсли хочешь совсем свежую версию — бери через Flatpak.
2. Лицо: Starship — твой космический корабль
Твоя командная строка — это твой аватар. Она должна кричать: «Я в ветке main! У меня тут Python 3.12! И прошлая команда не упала!». Стандартный user@host:~$ — это прошлый век.
Ставим Starship. Это промпт, написанный на Rust (что уже звучит мощно), который не тормозит и знает всё о твоей Git-репе.
Но есть нюанс. Иконки без специальных шрифтов — это просто квадратики. А квадратики — это грусть.
Шрифты (чтобы не было иероглифов)
Просто установить пакет недостаточно — нужно скачать шрифт с правильными иконками.
- Зайди на официальный сайт Nerd Fonts и выбери шрифт по душе. Я рекомендую JetBrainsMono или FiraCode — они сексуальнее всего смотрятся в коде.
- Скачай архив, распакуй и установи шрифты (обычно двойным кликом по файлу
.ttfи кнопкой «Установить»). - Главное: После установки зайти в параметры терминала (Ptyxis) и в разделе «Внешний вид» выбрать этот новый шрифт вместо системного. Без этого шага иконки так и останутся квадратиками.
Установка Starship
curl -sS https://starship.rs/install.sh | shили если Debian 13+ то:
sudo apt install starshipКастомизация (чтобы выделяться)
Базовый конфиг Starship хорош, но если хочется большего:
- Загляни в раздел с готовыми пресетами. Там есть и минималистичные, и пафосные, как у хакеров из кино.
- А если чувствуешь в себе силы джедая — открой руководство по конфигурации и накрути там всё под себя: цвета, символы, информацию. Хочешь, чтобы в строке отображалась фаза луны? Пожалуйста, это же Starship!
3. Святая троица: eza, fzf, bat — или как заставить старичков GNU уйти на пенсию
Есть команды, которые мы используем вслепую: ls, cat, Ctrl+R. Они работают, но работают скучно. Пора сделать им апгрейд. Мы установим трёх богатырей, которые превратят наш терминал в консоль будущего.
Установка
Перед любой установкой неплохо бы обновить список пакетов. На всякий случай:
sudo apt updateА теперь ставим наших героев:
sudo apt install fzf # волшебный поисковик
sudo apt install eza # ls на стероидах
sudo apt install bat # котик для подсветки синтаксиса (в Debian — batcat)Настройка алиасов (чтобы пальцы не забыли старые привычки)
Открывай свой ~/.bashrc:
nano ~/.bashrcИ добавляй туда эти строки. Они подменяют старые команды на новые, но с бонусами.
# Современные алиасы через eza
alias ls='eza -a --icons=always --color=always --group-directories-first'
alias ll='eza -al --icons=always --color=always --group-directories-first --git'
alias tree='eza --tree --icons=always --level=2'
# bat в Debian называется batcat, сделаем алиас для удобства
alias bat="batcat"Что тут происходит?
ls— показывает все файлы (включая скрытые), с иконками, цветами, и папки сверху.ll— детальный список, какls -l, но ещё и с информацией о Git-статусе файлов.tree— рисует дерево папок глубиной в два уровня (удобно для быстрого обзора).bat— чтобы не писать каждый разbatcat.
Настройка магического предпросмотра для fzf
Это сделает поиск файлов и истории визуальным и красивым. Добавь в тот же ~/.bashrc следующие строки:
# Предпросмотр файлов и папок в fzf
export FZF_CTRL_T_OPTS="
--walker-skip .git,node_modules,target
--preview 'if [ -d {} ]; then eza --tree --color=always {} | head -200; else batcat -n --color=always {}; fi'
--preview-window 'right:60%:wrap'"
export FZF_ALT_C_OPTS="
--preview 'eza --tree --color=always {} | head -200'"Что это даёт?
- Когда ты нажмёшь Ctrl+T и выберешь файл — справа откроется окно с его содержимым, подсвеченным
bat(номера строк, раскраска синтаксиса). - Если выберешь папку —
ezaпокажет её структуру в виде дерева. - Окно предпросмотра занимает 60% экрана и умеет переносить длинные строки (параметр
wrap). --walker-skipговорит fzf не заходить в служебные папки вроде.gitиnode_modules— экономит время и нервы.
Как пользоваться этими суперсилами
После того как ты добавил всё в .bashrc, не забудь применить изменения:
source ~/.bashrcТеперь в Ptyxis у тебя появились три комбо-приёма:
| Сочетание | Что делает | Как использовать |
|---|---|---|
| Ctrl + R | Поиск по истории команд | Начни печатать кусок любой старой команды (например, ssh admin), и fzf мгновенно найдёт её. Выбирай стрелочками → жми Enter. |
| Ctrl + T | Поиск файлов | Вставь путь к любому файлу прямо в командную строку. Удобно, когда нужно передать в аргумент длинный путь. |
| Alt + C | Умный переход по папкам | Выбери папку из списка (можно искать по имени), и терминал сам выполнит cd в неё. |
Проверь, что алиасы работают:
Просто введи в терминале:
lsТы должен увидеть содержимое каталога, где папки будут со значками, а скрытые файлы (начинающиеся с точки) — на своих местах.
А теперь попробуй:
llТы получишь подробный список с правами доступа, размером файлов (в человекочитаемом формате, например, 2.5M вместо байтов) и датой изменения. И всё это с иконками!
Если хочешь увидеть дерево папок, набери:
tree(по умолчанию глубина 2 уровня, но можно передать --level 3, чтобы заглянуть глубже).
4. Редактор: Прощай, Nano — встречай Fresh
Знаешь, в чём главная проблема терминальных редакторов? Либо ты учишь комбинации как в Vim и потом не можешь выйти (привет, ирония), либо ты мучаешься с Nano, где сочетания клавиш выглядят как шифровка для спецслужб. А если хочется просто открыть файл и начать писать код, как в нормальном редакторе, но не выходя из терминала?
Встречай Fresh — это VS Code, который переехал в консоль и не растерял по дороге ни одного удобства. Он создан для тех, кто хочет «чтобы всё работало сразу», без конфигов и режимов.
Что в нём такого?
Разработчик постарался упаковать в терминальный редактор всё, за что мы любим современные IDE, но при этом оставить его быстрым, как гепард на кофеине.
Вот лишь малая часть того, что умеет Fresh:
| Категория | Фичи |
|---|---|
| Работа с файлами | Открыть/сохранить/новый/закрыть, вкладки, файловый менеджер, поиск файлов в Git-репозитории. |
| Редактирование | Мультикурсор (да, как в Sublime!), блочное выделение, отмена/повтор, умные отступы, комментарии. |
| Поиск и замена | Инкрементальный поиск, замена по выделению, глобальный grep по репозиторию (git grep). |
| Навигация | Переход к строке/скобке, история позиций, закладки, навигация по ошибкам. |
| Интерфейс | Разделение на панели (split view), номера строк, перенос строк, поддержка мыши, меню. |
| LSP (Language Server) | Переход к определению, поиск ссылок, подсказки, автодополнение, рефакторинг, диагностика. |
| Продуктивность | Палитра команд (как в VS Code) — Ctrl+P, макросы, панель с ошибками, Git-лог. |
| Расширяемость | Плагины на TypeScript (в песочнице QuickJS), подсветка TODO, решение merge-конфликтов. |
| Интернационализация | Поддержка языков, система перевода плагинов. |
Установка
Ставится Fresh через официальный .deb пакет. Идём на страницу релизов, скачиваем свежий .deb и устанавливаем:
sudo dpkg -i fresh-editor_*.debПосле установки проверь, что команда fresh работает.
Делаем редактором по умолчанию
Добавь в ~/.bashrc строчку, чтобы Git и прочие программы знали, кто тут главный:
export EDITOR='fresh'Совет бывалого: Если очень хочется оставить Nano для быстрых правок — оставь. Но для серьёзной работы попробуй Fresh хотя бы неделю. Скорее всего, назад дороги не будет.
5. Финальный аккорд: Что в итоге должно быть в ~/.bashrc
Чтобы у тебя не возникло путаницы, вот полный блок, который должен оказаться в твоём ~/.bashrc (добавляй в конец файла):
# Инициализация Starship
eval "$(starship init bash)"
# fzf
eval "$(fzf --bash)"
# Алиасы для eza и bat
alias ls='eza -a --icons=always --color=always --group-directories-first'
alias ll='eza -al --icons=always --color=always --group-directories-first --git'
alias tree='eza --tree --icons=always --level=2'
alias bat='batcat'
# Умный поиск fzf с предпросмотром
export FZF_CTRL_T_OPTS="
--walker-skip .git,node_modules,target
--preview 'if [ -d {} ]; then eza --tree --color=always {} | head -200; else batcat -n --color=always {}; fi'
--preview-window 'right:60%:wrap'"
export FZF_ALT_C_OPTS="
--preview 'eza --tree --color=always {} | head -200'"
# Редактор по умолчанию
export EDITOR='fresh'Не забудь: После редактирования выполнить source ~/.bashrc или просто перезапустить терминал.
Открываем терминал Ptyxis из Nautilus по правой кнопке мыши
Знаешь, что бесит? Когда ты бродишь по папкам в графическом проводнике, находишь нужную директорию, и тут надо открывать терминал и вручную пилить туда через cd. В 2026 году мы так не живём.
Хочешь, чтобы в контекстном меню Nautilus (правый клик по папке) появилась волшебная кнопка «Открыть в Ptyxis»?
Инструкция для смелых
Разработчик расширения любезно оставил мануал. Нам придётся немного покомпилировать, но мы же гики, нам не привыкать.
Шаг 1. Ставим инструменты сборки
Открой терминал и скопируй эту команду. Она установит компилятор и всё, что нужно для сборки расширения:
sudo apt install gcc pkgconf libglib2.0-dev libnautilus-extension-devШаг 2. Скачиваем исходник
Берём файл nautilus-ptyxis.c прямо из репозитория. Удобнее всего использовать wcurl (или классический wget). Если wcurl не установлен, просто замени на wget:
wcurl https://codeberg.org/jakedane/nautilus-ptyxis/raw/branch/main/nautilus-ptyxis.cЕсли нет wcurl: wget https://codeberg.org/jakedane/nautilus-ptyxis/raw/branch/main/nautilus-ptyxis.c
Шаг 3. Компилируем (самая ответственная часть)
Вставь эту длинную команду целиком. Она создаст библиотеку, которую Nautilus сможет подгрузить:
gcc -fPIC -shared nautilus-ptyxis.c -o libnautilus-ptyxis.so \
$(pkg-config --cflags --libs gio-2.0 glib-2.0 gobject-2.0 libnautilus-extension-4)Шаг 4. Кладём библиотеку на место
Скопируй полученный файл в каталог расширений Nautilus. Используем sudo, потому что это системная папка:
sudo cp -v libnautilus-ptyxis.so /usr/lib/x86_64-linux-gnu/nautilus/extensions-4/Шаг 5. Перезапускаем Nautilus
Чтобы расширение подхватилось, закрой все окна файлового менеджера и выполни:
nautilus -qТеперь снова открой любую папку, кликни правой кнопкой мыши — и вуаля! Пункт «Open in Ptyxis» (или «Открыть в Ptyxis») ждёт тебя.
Чтобы было на русском надо перед компиляцией поправить в исходнике.
Добро пожаловать в будущее
Поздравляю! Теперь твой терминал выглядит так, будто им пользуются в Голливуде, когда показывают хакеров 🖥️
- Фундамент: Ptyxis — терминал, который не тормозит, восстанавливает сессии и умеет работать с контейнерами. GPU-рендеринг, детка.
- Лицо: Starship + кастомный шрифт из Nerd Fonts. Твоя командная строка теперь знает всё: от версии Python до фазы луны (если захочешь настроить). А иконки — не квадратики, а настоящие символы.
- Глаза и руки: eza (ls с иконками и Git), bat (cat с подсветкой), fzf (поиск с предпросмотром). Команды
ls,ll,treeтеперь выдают информацию красиво и с чувством. - Мозг: fzf с магическими настройками. Ctrl+R, Ctrl+T, Alt+C работают как швейцарские часы: ищут историю, файлы и папки с предпросмотром через bat и eza.
- Редактор: Fresh — VS Code в терминале. Мультикурсор, LSP, понятные сочетания клавиш. Никаких больше мучений с выходом из Vim.
- Бонус: Интеграция с Nautilus — правой кнопкой мыши открываешь любую папку прямо в Ptyxis.
Жизнь больно хороша 😉
После такой настройки работа на «голых» серверах по SSH вызовет ломку, холодный пот и острое желание срочно развернуть там свой конфиг. Ты был предупреждён. Но теперь ты знаешь, как сделать красиво везде.