Saya
В данный момент я работаю над своим окружением рабочего стола для Linux, которое работает с любым Wayland-композитором, поддерживающим протокол Layer Shell .
Проект сильно вдохновлён Eww и Fabric . Я хотел разобраться, как работают подобные системы, и в итоге решил написать своё решение, уже на Go. Окружение всё ещё находится в активной разработке. Исходный код и исполняемые файлы будут доступны позже.
На данный момент реализованы следующие части окружения:
- Меню питания — управление питанием
- Док (dock) — меню, вдохновлённое macOS, с возможностью настройки пользовательских действий
- Меню запуска — позволяет запускать приложения, искать в Интернете и выполнять многие другие действия при помощи поиска
- Сервер уведомлений — реализация демона уведомлений
- Панель — располагается с краю экрана и отображает информацию о системе
- Компоненты — полностью настраиваемые пользовательские виджеты
Запланированный функционал:
-
Экран блокировки
На данный момент реализованы привязки (bindings) Go для библиотекиgtk-session-lock
, которая реализует протоколext-session-lock-v1
в GTK. -
Экран входа в систему
Все программы настраиваются в конфигурационных YAML-файлах, их внешний вид можно кастомизировать при помощи CSS. Для компонентов используется встроенный скриптовый язык Tengo.
Откуда взялось название «Saya»? Я назвал этот проект в честь своей кошки :)
Демонстрация
Здесь представлены некоторые части окружения рабочего стола.

Панель (конфигурация и стили по умолчанию)

Меню запуска приложений (конфигурация и стили по умолчанию)

Меню питания (конфигурация и стили по умолчанию)