Как превратить простаивающий терминал в цифровое искусство
Вы когда-нибудь ловили себя на том, что просто смотрите в пустой экран терминала, пока компилируется тяжелый проект или скачиваются зависимости? В обычных операционных системах хранители экрана давно стали пережитком прошлого, но в мире CLI-инструментов всё работает иначе. Мы любим эстетику матричных дождей и ASCII-графики. Проект drift — это как раз та самая небольшая деталь, которой не хватало вашему рабочему окружению, чтобы оно выглядело по-настоящему живым.
Что это такое
drift — это скринсейвер для эмуляторов терминала, написанный на Go. Его главная фишка не в том, что он просто рисует красивые картинки, а в глубокой интеграции с оболочкой. Вы настраиваете тайм-аут, и если в консоли ничего не происходит пару минут, терминал мягко погружается в медитативную анимацию. Стоит нажать любую клавишу, и вы мгновенно возвращаетесь к своей командной строке.
Автор проекта phlx0 явно вдохновлялся «олдскульными» вещами. Тут и Conway's Game of Life, и знаменитый прыгающий логотип DVD, и даже стилизованная солнечная система. Все это отрисовывается с помощью символов Брайля и ASCII, что создает приятный эффект глубины.
Чем он может удивить
Внутри сейчас 11 различных сцен. Некоторые из них чисто декоративные, другие несут капельку смысла.
К примеру, сцена waveform рисует переплетающиеся синусоиды. Выглядит очень спокойно. А вот constellation превращает экран в звездное небо, где точки медленно дрейфуют и соединяются линиями, когда оказываются рядом.

Если вы скучаете по эстетике «Матрицы», есть сцена rain с падающими символами катаканы. Для любителей классики предусмотрены pipes (те самые бесконечные трубы из Windows 95) и starfield — полет сквозь звезды в 3D-перспективе.

Интересно реализована сцена life. Это классическая «Жизнь» Конвея, но с цветовым кодированием возраста клеток. Новые клетки вспыхивают ярко, а старые постепенно тускнеют, меняя палитру. Когда колония зацикливается или вымирает, поле автоматически перезапускается.
Темы и кастомизация
Разработчики терминальных утилит часто забывают, что у каждого из нас своя любимая цветовая схема. В drift с этим порядок. «Из коробки» доступно 9 популярных тем: Catppuccin, Nord, Dracula, Gruvbox, Rose Pine и другие.
Если этого мало, в конфиге ~/.config/drift/config.toml можно собрать свою палитру. Настройка довольно гибкая: указываете основной яркий цвет и наборы цветов для акцентов и затухания.
У каждой сцены есть свои параметры в конфиге. Можно подкрутить плотность дождя в Matrix-сцене, изменить количество планет в планетарии или скорость «варпа» в звездном поле.
Как заставить это работать автоматически
Самая практичная часть проекта — интеграция с шеллом. Вместо того чтобы каждый раз вручную вбивать команду, вы добавляете одну строчку в конфиг своего Zsh, Bash или Fish.
Например, для Zsh это выглядит так:
export DRIFT_TIMEOUT=120
eval "$(drift shell-init zsh)"
Теперь, если вы отошли за кофе и не трогали клавиатуру две минуты, терминал начнет показывать анимации. Это особенно эффектно смотрится на втором мониторе или на серверах, к которым вы подключены через SSH.
Техническая сторона
Проект написан на Go (версии 1.23+) и использует библиотеку tcell для работы с терминалом. Это хороший пример того, как можно выжать максимум из текстового вывода, используя символы Unicode и Braille patterns для имитации графики высокого разрешения. При этом утилита не требует CGO и легко собирается под любую платформу — будь то macOS на Apple Silicon, Linux или Windows.
Кстати, для Windows интеграция с шеллом пока не завезли, но саму программу можно запускать просто как CLI-приложение.
Стоит ли ставить
Если вы проводите в терминале большую часть дня, drift — это приятный способ сделать рабочее место чуть менее суровым. Он не грузит процессор (по умолчанию работает на 30 FPS) и легко настраивается под себя.
Кому это пригодится:
- Тем, кто любит кастомизировать свою систему (r/unixporn одобряет).
- Разработчикам, которые часто оставляют открытые терминалы на виду у коллег или клиентов.
- Всем, кто ценит качественные CLI-инструменты с вниманием к деталям.
Установить можно через Homebrew, AUR или просто скачав бинарник из релизов. Проект еще молодой, звезд не так много, но код чистый, а задумка реализована честно и без лишнего пафоса. Просто скачайте, запустите drift --showcase и посмотрите, как ваш терминал оживает.