Вот уже треть месяца я пользуюсь собственной версией DankMaterialShell 1.5.3. Сейчас я расскажу что это такое и как у меня работает.
Итак, для начала расскажу чем версия 1.5.3 (Saahriktu Edition) отличается от ванильной 1.5.3:
- Переписан модуль получения погодных данных. В ванильной версии там в качестве источника данных захардкожен api.open-meteo.com, который в конце сентября заблокировал РКН. В моей версии данные получаются с api.met.no.
- Переписан виджет отображения раскладки клавиатуры. В ванильной версии он выводит эту информацию текстом. В моей версии - рисует флаг страны.
- Кастомизирован виджет отображения времени и даты. Как видно по скриншоту, на нём дата отобразилась как «пт 09 окт.», в то время как ванильная версия виджета отобразила бы просто «пт 9».
Изменения здесь довольно просты и сводятся к замене строки
наreturn systemClock?.date?.toLocaleDateString(I18n.locale(), "ddd d");return systemClock?.date?.toLocaleDateString(I18n.locale(), "ddd dd MMM");
Теперь ближе к сути. Помимо панели у меня задействован следующий функционал DankMaterialShell:
- При неактивности 10 минут гасится монитор.
- Управление историей буфера обмена.
- Отображение уведомлений с их историей.
- Обои.
- Блокнот.
- Удобный системный монитор, откуда в т.ч. можно по-быстрому завершать процессы.
- Дополнительный лаунчер. Основной у меня - Nirvana Launcher.
Добавил пару хоткеев в конфиг Niri:
Mod+N { spawn-sh "dms ipc notepad open"; }
Alt+Ctrl+Backspace { spawn-sh "dms ipc processlist open"; }
Теперь про задействованные виджеты на панели.
Слева вы можете видеть кнопку лаунчера со значком в виде логотипа ALT Linux. Правее от него индикатор текущей раскладки в виде флага.
По центру расположены 3 виджета: 1) время и дата; 2) медиа-виджет; 3) виджет погоды.
Медиа-виджет скрывается когда нет ни одного активного плейера реализующего интерфейс MPRIS (Media Player Remote Interfacing Specification). Когда есть - он отображает информацию о воспроизводимой песне и отображает кнопки, которые позволяют поставить на паузу или переключиться на следующую или предыдущую песню.
Медиа-виджет, кстати, прекрасно работает в т.ч. и с Яндекс Музыкой в браузере.
Справа на панели расположены кнопки доступа к истории буфера обмена, уведомлениям, настройки громкости и виджету настроек сети, яркости, микрофона,... который также содержит кнопки, которые открывают доступ к меню настроек (она есть и в другом виджете) и к меню завершения сеанса.
Вся эта красота, напоминаю, работает на Quickshell. Да, такая реализация более требовательна к ресурсам, но зато её легче кастомизировать чем, например, Нокталию v5 на C++.










