22 марта 2026, 10:10
Вышел публичный инициатива Cambalache 1.0 — средство для разработки GTK-интерфейсов

20 марта 2026 года состоялся выпуск открытого проекта Cambalache 1.0. Это средство для быстрой разработки интерфейсов для GTK 3 и GTK 4, использующий визуальное проектирование (WYSIWYG), парадигму MVC и философию первостепенного значения модели данных. Исходный исходник решения написан на Python и опубликован под лицензией LGPLv2.1. Для установки доступен пакет в формате flatpak.
В отличие от проекта Glade в Cambalache предоставляется сопровождение ведения нескольких интерфейсов пользователя в одном проекте.
Решение Cambalache не зависит от GtkBuilder и GObject, но предоставляет модель данных, соответствующую системе типов GObject. Проект поддерживается редактирование, визуализация и создание GTK‑стилей в формате CSS, редактирование XML‑файлов с ресурсами GResources, разработка шаблонов и виджетов, использование XML‑файлов GtkBuilder и разметки Blueprint.
Модель данных в Cambalache может импортировать и экспортировать разом несколько интерфейсов, поддерживает объекты, свойства и сигналы GtkBuilder, предоставляет стек отката операций (Undo / Redo) и функция сжатия истории команд. Для генерации модели данных из gir‑файлов предоставляется утилита cambalache‑db, а для генерации классов GObject из таблиц модели данных — утилита db‑codegen.
Интерфейс в Cambalache может генерироваться на базе GTK 3 и GTK 4, в зависимости от определённой в проекте версии. Для обеспечения поддержки разных веток GTK формирование рабочей области осуществляется в отдельном процессе с привлечением виджета Casilda, позволяющего встраивать в GTK4-приложения окна других процессов и реализованного в форме специализированного композитного сервера, использующего протокол Wayland и библиотеку wlroots. Casilda создаёт виртуальные устройства ввода, события в которые транслируются из GtkEventController, а также виртуальное девайс вывода, имеющее размер как у встроенного в приложение виджета. При помощи wlroots содержимое для предпросмотра отрисовывается в пиксельный буфер и загружается как поверхность Cairo (cairo.Surface) для отрисовки в GTK.

Читают сейчас

1 час назад
«Яндекс» внедрил в чат с «Алисой AI» 30 ИИ-персонажей с разными характерами и сценариями общения
В чат с Алисой AI добавили ИИ‑персонажей с разными характерами и манерой общения. На момент написания материала доступно 30 персонажей: от популярного блогера до аниме‑героини. Каждый персонаж рассчит

5 часов назад
Вышел VidCoder 12.20 — публичный инициатива для копирования DVD/Blu-ray и перекодирования видео для ПК на Windows
17 июня 2026 года состоялся релиз инструментария VidCoder 12.20. Это публичный инициатива для копирования DVD/Blu‑ray и перекодирования видео для ПК на Windows. Исходный код решения написан на C# и оп

7 часов назад
Трамп передумал считать Anthropic угрозой нацбезопасности — но Fable 5 пока не вернули
Президент США Дональд Трамп больше не полагает Anthropic угрозой национальной безопасности. В интервью "The Axios Show", опубликованном 19 июня, на прямой вопрос, представляют ли угрозу сама компания

7 часов назад
Вышла релиз Glow 26.10 — инструмента для системного анализа аппаратных и программных возможностей ПК на Windows 10/11
В середине июня 2026 года состоялся версия обновления проекта Glow 26.10. Это публичный инструмент для системного анализа и тестирования аппаратных и программных возможностей ПК на Windows 10/11. Исхо

9 часов назад
Анонс Google Brazos: как внедрить жидкостное охлаждение в обычный воздушный ЦОД
Перевод ЦОД на жидкостное охлаждение требует множество времени и больших капиталовложений. Google решили эту проблему, представив нам Brazos — замкнутую СЖО модульного типа. Под катом взглянем на архи