LINUX.ORG.RU

Обзор консольных утилит для украшения Linux

 


3

2

Эти утилиты не про “боевую” продуктивность. Они про настроение, демонстрацию возможностей терминала, эстетическое удовольствие, ASCII/ANSI-арт и тот самый эффект, когда у человека рядом возникает вопрос: «А что это у тебя там такое красивое в консоли?» Многие из них живут на GitHub, часть доступна через пакеты популярных дистрибутивов, а некоторые стали почти культовыми в мире terminal eye-candy.

Зачем вообще нужны такие команды

Условно их можно разделить на пять групп.

Первая — псевдо-рабочая активность: утилиты, которые имитируют “бурную деятельность” в терминале. Вторая — ASCII/ANSI-анимации и заставки: дождь символов, трубы, лава-лампы, глобусы и прочие движущиеся штуки. Третья — текстовый декор: баннеры, говорящие персонажи, декоративные шрифты. Четвёртая — игры: простые, но обаятельные терминальные аркады. Пятая — утилиты для работы с текстовой графикой: например, вывод изображений прямо в терминал.

1. Ретро-терминал и фальшивая “серьёзная работа”

cool-retro-term

Это не просто команда, а полноценный терминальный эмулятор, стилизованный под старые ЭЛТ-мониторы: зелёное или янтарное свечение, сканлайны, блики, виньетка, дрожание изображения. Проект позиционируется как красивый и настраиваемый терминал с CRT-эстетикой.

Чем хорош:

  • создаёт очень эффектный “вайб” ретрокомпьютера;
  • подходит для демонстраций, скриншотов и просто удовольствия;
  • настраиваются цвета, шрифты и эффекты.

Когда использовать: когда хочется не просто открыть shell, а играть в хакера из 80-х.

genact

genact — это генератор бессмысленной активности. Он делает вид, будто у вас идут брутфорс, майнинг, компиляция, хакинг и прочая “жутко важная работа”, хотя по факту это постановка. Авторы прямо описывают его как nonsense activity generator.

Пример:

genact

Почему это смешно:

  • идеально для “смотрите, у меня что-то очень серьёзное в терминале”;
  • годится для стримов, роликов, мемов и фона;
  • можно запускать несколько экземпляров одновременно.

Это, наверное, одна из самых честно бесполезных утилит в списке.

hollywood

hollywood делает примерно то же по духу, но масштабнее: разбивает экран на несколько панелей и наполняет их техноболтовнёй, бегущими логами, псевдо-мониторингом и прочим киношным “компьютерным драматизмом”. Проект прямо описывает себя как генератор technobabble для “голливудской мелодрамы”.

Пример:

hollywood

Где уместен:

  • на втором мониторе;
  • на фоне во время презентаций;
  • для розыгрышей коллег;
  • чтобы почувствовать себя оператором центра управления полётами.

Если genact — это один экран “я очень занят”, то hollywood — уже полноценная декорация.

2. Живые ASCII-анимации и терминальные заставки

cbonsai

cbonsai выращивает бонсай прямо в терминале. Это ncurses-программа на C, умеющая генерировать красивые ASCII-деревья в статическом или “живом” режиме.

Пример:

cbonsai

Чем цепляет:

  • медитативная штука;
  • отлично смотрится в большом терминальном окне;
  • даёт ощущение, что терминал — это место не только для логов и grep.

Это одна из самых уютных команд в подборке.

lavat

lavat симулирует лавовую лампу в терминале, используя метаболлы. По сути это живой “пузырящийся” ASCII-или Unicode-скринсейвер. Автор прямо описывает его как lava lamp simulation in the terminal.

Пример:

lavat

Что в нём классно:

  • необычная визуализация;
  • хорошо демонстрирует, что терминал может быть плавным и органичным, а не только “угловатым”;
  • подходит для фона.

pipes-rs

pipes-rs — Rust-переосмысление старой идеи pipes.sh: по экрану растут и поворачивают разноцветные трубы, образуя бесконечный анимированный узор. Проект прямо называет себя over-engineered rewrite of pipes.sh in Rust.

Пример:

pipes-rs

Это классика жанра “поставил и залип”. Подходит для:

  • фоновой анимации;
  • скринкастов;
  • украшения startup-скриптов.

cmatrix

Одна из самых известных терминальных игрушек вообще. cmatrix воспроизводит “цифровой дождь” в стиле фильма The Matrix: столбцы символов летят сверху вниз с настраиваемой скоростью и режимами прокрутки.

Пример:

cmatrix

Почему до сих пор популярен:

  • это узнаваемая классика;
  • лёгкий и обычно доступный в репозиториях;
  • почти у каждого линуксоида был период “поставил cmatrix и почувствовал мощь”.

rusty-rain

rusty-rain — ещё одна вариация на тему Matrix rain, но уже на Rust и с упором на кроссплатформенность и кастомизацию: цвета, символы, скорость, направление. Проект описывает себя как fast, cross-platform Matrix-style rain effect for your terminal.

Когда выбрать его вместо cmatrix:

  • если хочется более современную реализацию;
  • если нужна дополнительная настройка;
  • если вам просто нравится Rust-экосистема.

unimatrix

unimatrix — ещё один “матричный” дождь, но с упором на Unicode, в том числе на японские полуширинные катаканы. Основан на идее cmatrix, но выглядит заметно богаче за счёт Unicode-символов и интерактивного управления.

Пример:

unimatrix

Если cmatrix — минималистичная классика, то unimatrix — более декоративная и выразительная версия.

mapscii

mapscii — почти магия: рендер OpenStreetMap в ASCII/Braille-стиле прямо в терминале. На вики OpenStreetMap проект описан как fun ASCII art zooming panning view of OpenStreetMap, а репозиторий говорит об ASCII/Braille world map renderer for your console.

Это уже не просто “прикол”, а демонстрация того, насколько далеко можно зайти с текстовой графикой.

Чем впечатляет:

  • карта мира в терминале;
  • перемещение и масштабирование;
  • отличный wow-effect для тех, кто такое видит впервые.

globe-cli

globe-cli рисует вращающийся ASCII-глобус в терминале. Проект adamsky/globe описывает себя как interactive ASCII globe generator, а crate globe-cli — как interactive ASCII globe in your terminal.

Пример:

globe-cli

Идеально для:

  • заставки;
  • оформления dotfiles;
  • просто красивого фона.

По впечатлению это что-то между screensaver и маленькой техно-скульптурой.

bb

bb — старая, но легендарная ASCII-demо-программа на базе AAlib. Debian до сих пор описывает пакет как high quality audio-visual demonstration of ASCII-art using AAlib, а репозиторий говорит об audiovisual demonstration for your text terminal.

Это уже почти демосцена в консоли:

  • абстрактные анимации;
  • визуальные эффекты;
  • дух старой школы Unix/Linux.

bb ощущается как музейный экспонат, который всё ещё умеет удивлять.

3. Работа с изображениями и терминальной графикой

chafa

chafa — уже не игрушка, а вполне практичная утилита. Она преобразует изображения, анимированные GIF и вообще графику в ANSI/Unicode-представление для терминала. Официальный сайт и GitHub описывают её как terminal graphics utility / command-line utility that converts image data into graphics formats or ANSI/Unicode character art suitable for display in a terminal.

Пример:

chafa image.png

Почему это полезно:

  • просмотр картинок по SSH;
  • вывод превью прямо в терминале;
  • поддержка разных режимов вывода, от старых text terminals до современных terminal graphics protocols.

Из всего списка это одна из самых реально полезных команд.

4. Декоративный текст и “говорящие” персонажи

toilet

toilet — свободная замена figlet, предназначенная для вывода крупных декоративных надписей в терминале. Проект Caca Labs прямо говорит, что это free replacement for FIGlet и стремится к совместимости с ним; сторонние обзоры также отмечают поддержку цвета и разные форматы вывода.

Пример:

toilet "Hello, Linux"

Для чего годится:

  • красивые баннеры в shell-скриптах;
  • заставки в консоли;
  • оформление MOTD, README-демо и приветствий.

ponysay

ponysay — это cowsay, только с пони. Проект и man-страницы описывают его как pony rewrite of cowsay / cowsay but with ponies.

Пример:

ponysay "Добро пожаловать"

Это уже совсем нишевая эстетика, но если вам нравится культура terminal jokes, ponysay — классика.

charasay

charasay — более современная и цветная интерпретация идеи cowsay: персонажи, ANSI-арт, Rust-реализация. Репозиторий описывает проект как “The future of cowsay” и “display colorful ANSI arts saying something in your terminal”.

Чем он интереснее старых аналогов:

  • выглядит богаче;
  • использует цвет;
  • больше ощущается как terminal art, а не просто шутка.

5. Терминальное искусство со временем и ритмом

arttime

arttime — очень необычный проект: он совмещает ASCII/текст-арт с функциями часов, таймера и time manager. Описание на GitHub и в man-тексте именно так его и характеризует: clock / timer / text-art viewer for the terminal.

Это уже почти “арт-оболочка” для пауз, работы по таймеру и созерцания.

Подходит для:

  • pomodoro-подобных сценариев;
  • красивого idle-режима в терминале;
  • тех, кто любит смешение утилитарности и эстетики.

6. Игры в терминале

ascii-patrol

ascii-patrol — ASCII-игра, вдохновлённая аркадой Moon Patrol. Репозиторий и официальный сайт именно так её и описывают.

Это уже не просто “красиво бегают символы”, а полноценная игра:

  • ретро-ощущение;
  • настоящая аркадная динамика;
  • очень приятный пример того, что терминал остаётся живой игровой платформой.

ninvadors

ninvadors — терминальный клон Space Invaders на базе ncurses/ASCII. В описаниях проекта он прямо называется Space Invaders clone based on ncurses for ASCII output.

Если хочется не смотреть на анимацию, а нажимать клавиши и проигрывать пришельцам, это хороший выбор.

Что из этого действительно стоит попробовать первым

Если хочется быстро понять вкус всей подборки, я бы рекомендовал начать так:

  • для вау-эффекта: hollywood, cool-retro-term, mapscii, globe-cli;
  • для залипания: cbonsai, lavat, pipes-rs, cmatrix;
  • для пользы: chafa, toilet;
  • для юмора: genact, ponysay, charasay;
  • для игр: ascii-patrol, ninvadors;
  • для олдскульного демосценического духа: bb.

Небольшие замечания по установке

У части этих программ есть пакеты в популярных дистрибутивах или community-репозиториях. Например, cmatrix, hollywood и chafa встречаются в пакетной инфраструктуре openSUSE; bb есть как минимум в Debian; некоторые Rust-проекты ставятся через cargo, а часть более нишевых вещей — из GitHub-репозиториев вручную.

Поэтому универсальный совет такой:

  1. сначала проверить пакетный менеджер дистрибутива;
  2. затем посмотреть GitHub/официальный сайт;
  3. для Rust-утилит — не забывать про cargo install.

Итог

Все эти команды вместе показывают важную вещь: терминал в Linux — это не только рабочий инструмент, но и культурная среда. Здесь есть свои шутки, свой визуальный стиль, свои аркады, свои “демосцены” и свой способ делать красоту из простых символов.

Если смотреть прагматично, из списка действительно полезнее всего chafa и частично toilet. Если смотреть с точки зрения удовольствия — тут царят cool-retro-term, hollywood, cbonsai, pipes-rs, cmatrix и mapscii. А если хочется полностью принять абсурд терминальной эстетики, запускайте genact, рядом ponysay, а на фоне пусть крутится globe-cli.

★☆

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 2)
printf '\e[0;33;5m' ; hexdump -C /dev/urandom
firkax ★★★★★
()

Всё, теперь у меня передоз «ненужно».

Нельзя же так, надо дозировать :)

CrX ★★★★★
()
Ответ на: комментарий от unclestephen

Не, ну chafa, ninvadors и ascii-patrol прикольные. Но о двух из них я уже знал.

CrX ★★★★★
()

А если вместо «бесполезных…» мы напишем «…консольных утилит для украшения Linux»?

hobbit ★★★★★
()

текст на уровне чат-гопоты модели 3.2-турбо

gagarin0
()
Последнее исправление: gagarin0 (всего исправлений: 1)

это либо мой мозг деградировал, либо я уже научился распознавать текст написанный нейронкой

idoffront
()
Ответ на: комментарий от hobbit

Если уж что решил, то точно выпьет подтвердит

unclestephen ★☆
() автор топика

Поставил hollywood, полюбовался две минуты, снёс. А этот гад мне включил цветную раскраску приглашения шелла. Причём всем пользователям:)

Beewek ★★★
()

Статья сгенерирована ИИ.

wandrien ★★★
()
Ответ на: комментарий от idoffront

Да щас куда не зайдёшь, везде этот стиль, при чем непонятно, что хуже: или это ИИ, или это уже люди сами пишут в этом стиле, и им норм.

wandrien ★★★
()
Последнее исправление: wandrien (всего исправлений: 1)
Ответ на: комментарий от Beewek

у меня ничего не поломалось, кста, именного его я ставил и запускал

просто некоторые вещи ломали зависимости или отсутствовали в репах

unclestephen ★☆
() автор топика
Ответ на: комментарий от wandrien

Те кто сами пишут в этом стиле - удачно попались в детектор идиотов, расставленный другими идиотами, постящими везде выхлопы бредогенераторов.

Что касается этого «автора», то он недавно выдал вообще очевидные помои: www.linux.org.ru/forum/talks/18259434

Раньше за ним такого не замечалось. Возможно, на него повлияли какие-то события во время его отсутствия в феврале.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 2)
Ответ на: комментарий от Aceler

забавно, натолкнуло на мысль, что можно где-нибудь публично захостить эти интересные консольные приложения, для того чтобы не ставить их локально и делать что-нибудь

telnet console-cinema.ltd 23

telnet console-cinema.ltd 24

и т.д.

gagarin0
()

chafa

все остальное либо мусор либо в репе нет

amd_amd ★★★★★
()

Есть ещё sl - прога, чтобы когда ты опечатывался при быстром наборе «ls» у тебя перед экраном пробегал аскии паровозик, и пока он не доедет, ты не сможешь ничё писать. Ни ctrl+c, ни насколько помню ctrl+z не помогают.

daniyal
()

Эти матриксы умеют ассинхронный вывод? Чтобы падения символов для каждого стобца были с разной скоростью.

dmitry237 ★★★★★
()

Киберпанком повеяло. Запустила genact в coolretroterm, любуюсь эффектами, и вдруг строка: «compiling josephine_derive». Полезла смотреть, что это за Жозефина такая, а ИИ мне выдает крипоту "По запросу «josephine derive» наиболее вероятным результатом является Жоржетт Жермен Жозефин Дерив (Georgette Germaine Josephine Derive), французская женщина, скончавшаяся 1 мая 2008 года в Эво-ле-Бен, регион Крез. Место смерти: Эво-ле-Бен (Évaux-les-Bains), Крез, Новая Аквитания, Франция. Источник данных: Национальный институт статистики и экономических исследований Франции (INSEE).

По-моему, не такая уж безобидная утилитка, и лезет куда не просили.

Irma ★★★
()

Афигеть, целая статья про скучные скринсейверы

daniyal
()
Ответ на: комментарий от gagarin0

Это какая-то вебня в альтернативном измерении, где гуи не победил, но веб приложения всё равно умудряются гадить.

daniyal
()

Ошибка кстати а уровне названия - это не утилиты Linux, а утилиты для любой posix совместимой оськи

daniyal
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.