среда, 22 июня 2022 г.

Ubuntu Sway Remix: отчет о развитии (Июнь 2022)

Приветствую. Для тех, кто не в курсе что к чему - в конце марта я начал работу над новым дистрибутивом (точнее сказать, вариантом дистрибутива) на основе Ubuntu, с оконным менеджером Sway - Ubuntu Sway Remix. Обзор первой его беты вы можете найти на моём YouTube-канале. С тех пор в дистрибутив было влито огромное число изменений, как внешних, так и внутренних. И я решил что неплохо бы своими словами, без сухих чейнджлогов, рассказать о проделанной работе. Время от времени я буду выкладывать подобные отчеты, а на канал делать обзор финальных версий дистрибутива.

Сайт

У проекта появился собственный сайт! Весьма простенький конечно, но все же. Сайт построен на платформе GitHub Pages, что весьма удобно. ISO-образы пока по-прежнему загружаются с Гитхаба, и да, я знаю - это очень медленно. На данный момент обсуждается вопрос поднятия своего сервера для сайта и распространения образов, но в краткосрочной перспективе я рассматриваю SourceForge и раздачу образов торрентами, например через Linuxtracker.

Установщик

Установщик Calamares обновлен до последней версии в ветке 3.2, куда влито внушительное число исправлений. Некоторые пользователи отписывались о проблеме, при которой если во время установки дистрибутива не была установлена галочка на пункте автоматического входа в систему, то система отказывалась загружаться и показывала просто черный экран с мигающим курсором. Как мне казалось, проблема была в дисплейном менеджере greetd, ведь именно он не запускался и не выдавал приглашение входа. Но после детального изучения проблемы, выяснилось, что виноват установщик. Дело в том, что по умолчанию Ubuntu Sway содержит конфиг, в котором прописан автологин для пользователя LiveCD (ubuntu), для того чтобы после загрузки с флешки автоматически запускалась графическая оболочка. Если во время установки, поставить галочку на "Автоматический вход в систему", то установщик перезапишет имя Live-пользователя на то, что вы указали. И все без проблем будет работать. Но вот если не поставить эту галочку - пользователь "ubuntu" так и останется в конфигурационном файле greetd, и после установки и перезагрузки, не найдя в системе пользователя с таким именем, greetd откажется запускаться. Благодаря разработчикам Calamares подготовлен патч, решающий эту проблему. Отныне, если пользователь не включил автоматический вход в систему, установщик будет удалять запись для пользователя "ubuntu", и по окончанию установки и перезагрузке - будет корректно выдаваться приглашение входа, где нужно будет ввести имя созданного пользователя и его пароль.

Кроме решения проблем с установкой, было добавлено слайдшоу, рассказывающее о наполнении дистрибутива. Наверняка не самый красивый и стильный вариант, но на данный момент - лучше чем ничего. Любые идеи активно принимаются здесь. Тема оформления также изменена, поскольку Calamares плохо дружит с темными темами. Отныне используется стиль оформления Fusion (используется по умолчанию для Qt) и светлые тона, в сочетании с зелеными элементами. Кроме того, окно установщика теперь корректно запускается в плавающем режиме, а не во весь экран как было раньше, что приводило к таким приколам, как не влезающий в экран список регионов.











Оформление

Тема оформления теперь может сменяться на лету, благодаря утилите nwg-look. Это своего рода аналог LXappearance, только сделанная специально для Wayland и Sway. В ней можно изменить тему GTK, тему курсора и шрифты. Все связанные с оформлением компоненты вынесены в отдельный пакет ubuntusway-artwork, для упрощения сопровождения. Добавлена тема для загрузочного экрана Plymouth. Во всех компонентах интерфейса, использующих CSS, применены общие свойства цветов из GTK, поэтому при смене темы оформления - они будут корректно перерисовываться и адаптироваться, без необходимости в ручном изменении цвета элементов. Разве что цвета обрамления и фона самих окон Sway останутся без изменений, но тут уж ничего не поделать. 


Заставка Plymouth (снизу появляется анимация загрузки)

Waybar

Панель Waybar претерпела ряд небольших изменений. Теперь она корректно работает со светлыми темами оформления, все элементы и текст читабельны. Исправлен стиль некоторых модулей, для более целостного вида. Добавлен новый модуль с утилитой wlogout, выводящей на экран кнопки блокировки, сна, гибернации, выхода, перезагрузки и выключения, заменившей собой swaynag, который хоть и вызывался клавиатурной комбинацией - требовал мышь для активации своих элементов. Меню wlogout поддерживает навигацию как мышью, так и клавиатурой, и может также быть вызвано комбинацией Mod+Shift+E, ранее вызывавшей swaynag.

 

Светлая тема Adwaita в nwg-look

wlogout

 

Работа в виртуальных машинах

Sway по умолчанию требует обязательного наличия аппаратного ускорения, в противном случае - падает с ошибкой. В VirtualBox эта проблема решается просто - нужно установить галочку на пункте "3D ускорение" в свойствах виртуальной машины. Однако в QEMU/KVM с этим не так просто, и дело тут не только в Sway, но и косяках в QEMU. Поэтому были созданы обходные пути для решения проблем с работой Ubuntu Sway в виртуальных машинах. В QEMU/KVM используется программная отрисовка через Pixman, которая не сильно медленнее, но позволяет без проблем пользоваться дистрибутивом. VirtualBox, после установки дополнений гостевой ОС, также работает превосходно с Ubuntu Sway. Кроме того, видеодрайверы этих виртуальных машин не поддерживают так называемый аппаратный курсор, поэтому после запуска он был невидимым. Для решения этой проблемы пришлось отключить аппаратный курсор при запуске в VirtualBox и QEMU/KVM, оставив только программный. Теперь курсор видимый и полностью функциональный, хоть и малость тормозной. При запуске Ubuntu Sway в VirtualBox или QEMU/KVM он автоматически обнаруживает виртуальные окружения и применяет эти исправления.

Наполнение дистрибутива

Претерпел изменения и штатный набор софта. Файловый менеджер Thunar заменен на PCManFM, собранный с GTK 3. Причиной замены является нестабильность Thunar при работе в Sway, в частности при обращении к каталогу, на который у пользователя нет прав, Thunar начинает бесконтрольно спамить сообщениями, что к этому каталогу доступ запрещен, и пока не прибьешь его через терминал - не останавливается. Ни с одним другим файловым менеджером такой проблемы не было, но PCManFM был выбран как наиболее близкая по духу и легковесности к Thunar альтернатива. Также по причине крахов и нестабильной работы, менеджер PolicyKit от GNOME заменен на lxpolkit, от LXDE, также собранный с GTK 3. Архиватор File-Roller заменен на более удобный Engrampa, из MATE, из которого ранее был взят текстовый редактор Pluma. Также от MATE интегрирован калькулятор. Так как Sway в большей степени ориентирован на работу с клавиатуры, добавлен Vim-подобный веб-браузер Qutebrowser и консольный файловый менеджер Ranger. В качестве дополнительного эмулятора терминала, вместо Tilix задействован Kitty, более подходящий для тайлинговых оконных менеджеров и активно использующий аппаратное ускорение. Последнее явилось причиной почему он не применен по умолчанию вместо Foot - в виртуальных машинах он отказывается работать нормально, поэтому пока оставлен в запасных. Alacritty я не стал применять по причине того, что он не поддерживает лигатуры, и его достаточно тяжело собрать для Ubuntu. Хотя не исключено, что в одном из следующих выпусков Ubuntu Sway он появится, но на данный момент - Foot дефолтный эмулятор терминала. Добавлен dex - утилита для автоматического запуска приложений, ярлыки которых размещены в /etc/xdg/autostart. Таким образом налажена работа уведомлений о наличии обновлений системы, работа утилиты для сбора отчётов об ошибках, работа уведомлений на значках приложений в трее и т.д. Интегрирован Waypipe - прокси, позволяющий пробрасывать удаленно графический интерфейс приложения, та самая "сетевая прозрачность". Добавлен Wayvnc, реализация VNC-сервера для Sway. Кроме всего прочего добавлен mimelist для приложений по умолчанию, чтобы например изображения открывались в Swaymsg, PDF-документы - в Zathura и так далее. А для установки дополнительного софта - добавлен графический менеджер приложений GNOME Packagekit.



Документация

 

Документация ведется на встроенной Wiki Гитхаба. Богатством пока не отличается, но ответы на некоторые вопросы уже есть. Например руководство по запуску на компьютерах с видеокартами Nvidia с использованием проприетарного драйвера. Документация будет пополняться, но помощь конечно же приветствуется.
 

Kanban-доска

 

Дистрибутив обзавелся собственной kanban-доской все в том же GitHub, где будут размещаться предложенные фичи, баги, пулл-реквесты и тд, и сортироваться по степени значимости. Таким образом можно будет следить за развитием проекта.

Дальнейшие планы

В целом, дистрибутив более чем стабилен. Почти все запланированные и предложенные фичи реализованы, но пределов совершенству конечно же нет. Однако если продолжать искать что ещё можно добавить или изменить, то дистрибутив никогда не выйдет :) поэтому сейчас все в стадии активного тестирования с тем, что есть. К концу июня выйдет вторая бета, и если все будет хорошо - в десятых числах июля полноценный релиз. Далее работа сместится в сторону Ubuntu Sway 22.10, и туда уже можно будет включить то, что не попало в 22.04. Поинт-релизы Ubuntu Sway продолжат выходить как положено (22.04.1, 22.04.2 и так далее). На этом у меня все, до встречи!


Ссылки:

Проект на GitHub: https://github.com/Ubuntu-Sway

Проект на Launchpad: https://launchpad.net/~ubuntusway-dev

Обсуждение в Matrix: https://matrix.to/#/#ubuntusway:matrix.org

Комментариев нет:

Отправить комментарий