Рабочий стол Budgie переходит с GTK+ и библиотек GNOME на Qt

Разработчики дистрибутива Solus приняли решение о переводе рабочего стола Budgie на фреймворк Qt. Изначально Budgie был построен на основе GTK+ и штатных библиотек GNOME, но использовал собственные реализации оболочки GNOME Shell, панели, апплетов и системы вывода уведомлений. Указано, что потребности Budgie переросли возможности стека GNOME, и проект не может должным образом развиваться на основе штатных библиотек GNOME.

Отмечается, что GTK+ развивается в паре с GNOME и разрабатывается для решения задач, которые ставят перед собой разработчики GNOME, без оглядки на другие проекты. В итоге, каждый значительный релиз GNOME приводит к возникновению непредвиденных проблем, возникающих при переводе Budgie на обновлённые библиотеки GNOME. Среди таких проблем упоминаются нарушение совместимости API или ABI, слияние компонентов, нарушение работы виджетов и тем оформления, непостоянство GdkScreen API, изменение поведения GSettings. Для того, чтобы поддерживать Budgie на плаву приходится тратить много усилий и притворяться GNOME Shell. В качестве выхода рассматривалась возможность создания собственного ответвления библиотек GNOME, но подобный шаг оценен как излишне трудоёмкий.

Рассмотрев все за и против оптимальным признан путь миграции рабочего стола Budgie на Qt. По мнению разработчиков, переход на Qt положительно отразится на производительности, позволит реализовать новые возможности и расширить графические эффекты. При этом в основной кодовой базе планируется использовать только средства разработки на C++ и отказаться от применения языка Vala. В Budgie также не будет применяться QML и библиотеки KDE. Подобное ограничение не распространяется на сторонние виджеты, авторы которых вольны применять QML. Переход на Qt не означает обеспечение совместимости с KDE Plasma и проект продолжит ориентацию на запуск приложений GNOME, обеспечив их бесшовную интеграцию в окружение на базе Qt.

0_1481903473.jpg

©  OpenNet