Xsnow – падающий снег на вашем рабочем столе Linux
Обновлено 23.02.2024
Приветствую!
Сегодня будет немного тематический пост: как создать новогоднее настроение с помощью снежной метели на рабочем столе вашего компьютера под управлением Linux. Речь пойдет об open source утилите – Xsnow. По традиции, выполним ее установку и настройку в дистрибутиве Linux Mint)
P.S. Всех с наступающими праздниками! 🎅🎅🎅
Присоединяйтесь к нашему каналу: t.me/r4ven_me и чату: t.me/r4ven_me_chat в Telegram .
Предисловие
Утилита Xsnow существует уже очень продолжительное время. Если верить английской википедии, ее зарождение началось еще в далеком 1984 году, затем в начале 90-х она перекочевала в среду X Window System (классической подсистемы Linux, отвечающей за графическое отображение) благодаря автору Rick Jansen.
Я не силен в переводах, поэтому приведу краткую выдержку из wiki на английском:
Xsnow is a software application that creates the appearance of snow falling on the elements of the graphical user interface of a computer system. Xsnow was originally created as a virtual greeting card for Macintosh systems in 1984. In 1993, the concept was ported to the X Window System as Xsnow, and was included on a number of Linux distributions in the late 1990s.
Wikipedia
Пока готовил материал, обнаружил интересную вещь.
Если сейчас в поиске яндекса вбить запрос xsnow, то можно наблюдать крутую отсылку! В браузере пойдет снег и санта полетит по своим делам. Точно также, как это выглядит в Xsnow. Честно сказать, не ожидал такого от поисковика) отдают дань олдскульным штукам) похвально)
Установка xsnow в Linux Mint
Перед установкой xsnow, я выполнил предварительный поиск в репозиториях Linux Mint. Вот что указано в коротком описании данного пакета:
sudo apt search xsnow
И так, чтобы установить утилиту Xsnow в Linux Mint 21 выполняем в терминале:
sudo apt update
sudo apt install xsnow
Готово.
Настройка xsnow
Запустить утилиту можно через терминал или главное меню:
xsnow
После запуска, применятся настройки по умолчанию и на рабочем столе начнется некая вакханалия)
Можете изучить настройки, их довольно много.
Лично я предпочитаю минимализм и обычно отключаю почти все, кроме снега. Устанавливаю по вкусу интенсивность и скорость его падения.
Выглядит это примерно так:
Если вы разделяете мои взгляды, то можете скопировать мой конфиг себе в систему. Для этого необходимо открыть и отредактировать файл конфигурации ~/.xsnowrc
(с недавних пор он теперь в формате xml) в любом текстовом редакторе.
К слову, недавно у меня была заметка про очищенный от телеметрии форк редактора кода VSCode, под названием – VSCodium. Поэтому откроем конфиг Xsnow с его помощью:
codium ~/.xsnowrc
Заменяем содержимое на:
<?xml version="1.0" encoding="UTF-8"?>
<xsnow_flags>
<AllWorkspaces>1</AllWorkspaces>
<BlowOffFactor>40</BlowOffFactor>
<BlowSnow>0</BlowSnow>
<CpuLoad>100</CpuLoad>
<Transparency>0</Transparency>
<Scale>100</Scale>
<DesiredNumberOfTrees>10</DesiredNumberOfTrees>
<FlakeCountMax>250</FlakeCountMax>
<Halo>0</Halo>
<HaloBright>25</HaloBright>
<MaxOnTrees>200</MaxOnTrees>
<MaxScrSnowDepth>20</MaxScrSnowDepth>
<MaxWinSnowDepth>20</MaxWinSnowDepth>
<Moon>0</Moon>
<MoonSpeed>120</MoonSpeed>
<MoonSize>100</MoonSize>
<NoFluffy>0</NoFluffy>
<NoKeepSBot>1</NoKeepSBot>
<NoKeepSnow>0</NoKeepSnow>
<NoKeepSnowOnTrees>1</NoKeepSnowOnTrees>
<NoKeepSWin>1</NoKeepSWin>
<NoMeteorites>1</NoMeteorites>
<NoSanta>1</NoSanta>
<NoSnowFlakes>0</NoSnowFlakes>
<NoTrees>1</NoTrees>
<NoWind>1</NoWind>
<NStars>20</NStars>
<OffsetS>0</OffsetS>
<OffsetW>-8</OffsetW>
<OffsetX>4</OffsetX>
<OffsetY>0</OffsetY>
<Overlap>1</Overlap>
<Rudolf>1</Rudolf>
<SantaSize>3</SantaSize>
<SantaSpeedFactor>100</SantaSpeedFactor>
<SnowFlakesFactor>100</SnowFlakesFactor>
<SnowSize>4</SnowSize>
<SnowSpeedFactor>20</SnowSpeedFactor>
<Stars>0</Stars>
<ThemeXsnow>0</ThemeXsnow>
<TreeFill>30</TreeFill>
<VintageFlakes>0</VintageFlakes>
<WhirlFactor>100</WhirlFactor>
<WindTimer>30</WindTimer>
<SnowColor>#eceff4</SnowColor>
<TreeColor>chartreuse</TreeColor>
<TreeType>1,2,3,4,5,6,7,</TreeType>
<Anarchy>50</Anarchy>
<AttrFactor>100</AttrFactor>
<BirdsOnly>0</BirdsOnly>
<BirdsRestart>0</BirdsRestart>
<BirdsScale>100</BirdsScale>
<BirdsSpeed>100</BirdsSpeed>
<DisWeight>20</DisWeight>
<FollowWeight>30</FollowWeight>
<FollowSanta>0</FollowSanta>
<Nbirds>70</Nbirds>
<Neighbours>7</Neighbours>
<PrefDistance>40</PrefDistance>
<ShowAttrPoint>0</ShowAttrPoint>
<ShowBirds>0</ShowBirds>
<ViewingDistance>40</ViewingDistance>
<BirdsColor>#361A07</BirdsColor>
</xsnow_flags>
Также данный конфиг доступен в моей репе на GitHub.
Если что, конфиг программы генерируется автоматически при открытии графического меню программы.
Сохраняем и закрываем.
Настройка автозапуска xsnow
Теперь давайте настроим автозапуск программы. Для этого идем в настройки системы, далее параметр Автозагрузка:
Нажимаем кнопку +
добавить:
Находим xsnow, выбираем его и нажимаем Добавить приложение:
Теперь Xsnow будет запускаться при каждом входе в систему.
Для корректности запуска, добавим задержку в 5 сек и параметр, отключающий открытие графического окна программы при запуске:
xsnow -nomenu
Интересный факт. О возрасте программы также говорит синтаксис ключей — длинные ключи программы имеют один дефис вместо двух.
Нажимаем Сохранить:
Готово. Чтобы запустить программу сейчас, нажимаем соответствующую кнопку, предварительно выбрав нужное приложение:
Иногда я включаю летающего санту. Сделать это можно добавив нужный параметр в команду запуска:
xsnow -nomenu -showsanta
Видео демонстрация
Как-то давно, я записывал короткую видео демонстрацию Xsnow. Поэтому просто оставлю это здесь.