Vydání desktopového enginu Arcan 0.6.1

После года разработки доступен релиз десктоп-движка Arcan 0.6.1, который объединяет в себе дисплейный сервер, мультимедийный фреймворк и игровой движок для обработки 3D-графики. Arcan может использоваться для создания различных графических систем, от пользовательских интерфейсов для встраиваемых приложений до самодостаточных десктоп-окружений. В том числе на базе Arcan развивается трёхмерный рабочий стол Safespaces для систем виртуальной реальности и десктоп-окружение Durden. Код проекта написан на языке Си и распространяется под лицензией BSD (некоторые компоненты под GPLv2+ и LGPL).

В новый выпуск включены накопившиеся за год наработки, главным образом сосредоточенные на развитии подсистемы для доступа к рабочему столу по сети. В общем виде представлен план подготовки первого значительного релиза 1.0: В следующей ветке 0.7 ожидается проведение работы по расширению звуковой подсистемы, улучшению совместимости и развитию средств для 3D-графики. Ветка 0.8 будет сфокусирована на оптимизации и производительности, а 0.9 на обеспечении безопасности.

Из наиболее заметных изменений в версии Arcan 0.6.1 отмечается модернизация дисплейного сервера arcan-wayland, использующего протокол Wayland, в котором реализована прослойка для использования EGL и включена по умолчанию поддержка dma-buf. В X-сервере Xarcan улучшена обработка переключений GPU и добавлена поддержка буфера обмена и аппаратного ускорения отрисовки курсора. Улучшена поддержка экранов с переменной частотой регенерации содержимого. В системе ввода проведена работа по снижению задержек.

Внесено много внутренних изменений, нацеленных на улучшение синхронизации и повышения эффективности управления очередями событий. Продолжено развитие графического сервера «arcan-net» для удалённой работы с рабочим столом по сети и используемого в данном сервере протокола A12, развиваемого для замены SSH/VNC/RDP/X11. Обновлены привязки для разработки компонентов на языке Lua.

Предложена концепция Pipeworld, позволяющая перенаправлять потоки данных между окнами, связывая данные и обработчики в разных окнах по аналогии с ячейками в электронных таблицах, формируя смешанный рабочий процесс, объединяющий графический и консольный интерфейсы (например, можно перенаправить вывод из одного окна в запущенный в терминале shell-обработчик и использовать результат в другом окне).

Напомним, что Arcan не привязан к отдельной графической подсистеме и может работать поверх различных системных окружений (BSD, Linux, macOS, Windows), используя подключаемые бэкенды. Например, имеется возможность запуска поверх Xorg, egl-dri, libsdl и AGP (GL/GLES). Под управлением дисплейного сервера Arcan могут выполняться клиентские приложения на базе X, Wayland и SDL2. В качестве ключевых критериев, применяемых при проектировании API Arcan называются безопасность, производительность и пригодность для отладки. Для упрощения разработки интерфейсов предлагается использовать язык Lua.

Vlastnosti Arcany:

  • Kombinace rolí kompozitního serveru, zobrazovacího serveru a správce oken.
  • Schopnost pracovat v samostatném režimu, ve kterém aplikace funguje jako soběstačný odkaz.
  • Vestavěný multimediální rámec, který poskytuje nástroje pro práci s grafikou, animacemi, zpracováním streamovaného videa a zvuku, načítáním obrázků a prací se zařízeními pro zachycení videa.
  • Multiprocesní model pro připojení procesorů dynamických datových zdrojů - od video streamů až po výstup jednotlivých programů.
  • Rigidní model sdílení oprávnění. Komponenty motoru jsou rozděleny do malých neprivilegovaných procesů, které komunikují prostřednictvím rozhraní sdílené paměti shmif;
  • Vestavěné nástroje pro monitorování a analýzu havárií, včetně enginu, který dokáže serializovat vnitřní stav skriptů Lua pro zjednodušení ladění;
  • Záložní funkce, která v případě selhání z důvodu chyby programu může spustit záložní aplikaci se zachováním stejných externích datových zdrojů a připojení;
  • Pokročilé nástroje pro sdílení, které lze použít k nahrávání nebo vysílání vybraných podmnožin zdrojů zvuku a videa při implementaci sdílení plochy.

Дополнительно можно отметить о подготовке нового выпуска рабочего стола Durden 0.7 развиваемого для использования с Arcan. В выпуске 0.7 появится поддержка вертикального размещения заголовка окна и строки состояния, а также будет добавлена утилита для голосового сопровождения (text to speech). Durden поддерживает как мозаичный интерфейс с полноценными средствами управления с клавиатуры, так и режим свободного размещения окон на экране. Все настройки, включая методы ввода, шрифты и визуальные эффекты, могут меняться на лету, без необходимости перезагрузки конфигурации.

Возможна настройка отдельного поведения для каждого окна и использования привязанного к окну независимого буфера обмена. Поддерживается работа в системах с несколькими мониторами, имеющими разные DPI. Имеется возможность отображения меню приложений в панели (глобальное меню) или размещение меню в заголовке окна. На рабочем столе допускается размещение виджетов. Имеется встроенная возможность видеозаписи действий на рабочем столе и в отдельных окнах. Подсистема управления вводом поддерживает смену раскладок клавиатуры и возможность работы с расширенными устройствами, такими как игровые пульты.

Zdroj: opennet.ru

Přidat komentář