После года разработки опубликован релиз десктоп-движка Arcan 0.6.2, который объединяет в себе дисплейный сервер, мультимедийный фреймворк и игровой движок для обработки 3D-графики. Arcan может использоваться для создания различных графических систем, от пользовательских интерфейсов для встраиваемых приложений до самодостаточных десктоп-окружений. В том числе на базе Arcan развивается трёхмерный рабочий стол Safespaces для систем виртуальной реальности и десктоп-окружение Durden. Код проекта написан на языке Си и распространяется под лицензией BSD (некоторые компоненты под GPLv2+ и LGPL).
В новом выпуске продолжена разработка средств для удалённой работы с рабочим столом по сети. Доступ по сети обеспечивает графический сервер «arcan-net», реализующий протокол A12, который объединяет в себе возможности таких технологий, как mDNS (определение локальных сервисов), SSH (интерактивная текстовая оболочка), X11/VNC/RDP (интерактивная графическая оболочка), RTSP (потоковая передача мильтимедийных данных) и HTTP (загрузка ресурсов и синхронизация состояния).
Arcan не привязан к отдельной графической подсистеме и может работать поверх различных системных окружений (BSD, Linux, macOS, Windows), используя подключаемые бэкенды. Например, имеется возможность запуска поверх Xorg, egl-dri, libsdl и AGP (GL/GLES). Под управлением дисплейного сервера Arcan могут выполняться клиентские приложения на базе X, Wayland и SDL2. В качестве ключевых критериев, применяемых при проектировании API Arcan называются безопасность, производительность и пригодность для отладки. Для упрощения разработки интерфейсов предлагается использовать язык Lua.
Арцана карактеристике:
- Комбинација композитних улога сервера, сервера за приказ и менаџера прозора.
- Способност рада у посебном режиму, у којем апликација делује као самодовољна веза.
- Уграђени мултимедијални оквир који пружа алате за рад са графиком, анимацијом, обраду стриминг видеа и звука, учитавање слика и рад са уређајима за снимање видео записа.
- Вишепроцесни модел за повезивање процесора динамичких извора података – од видео токова до излаза појединачних програма.
- Чврсти модел дељења привилегија. Компоненте мотора су подељене на мале непривилеговане процесе који комуницирају преко схмиф интерфејса дељене меморије;
- Уграђени алати за праћење и анализу пада, укључујући мотор који може серијализирати интерно стање Луа скрипти како би се поједноставило отклањање грешака;
- Фаллбацкс функција, која у случају квара због грешке у програму може покренути резервну апликацију, одржавајући исте екстерне изворе података и везе;
- Напредни алати за дељење који се могу користити за снимање или емитовање одређених подскупова аудио и видео извора док се имплементира дељење радне површине.
Извор: опеннет.ру