The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск десктоп-движка Arcan 0.7.1 и десктоп-окружения Durden 0.6.3

29.12.2025 11:17

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

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

Особенности Arcan:

  • Сочетание возможностей композитного сервера, дисплейного сервера и оконного менеджера.
  • Поддержка работы в обособленном режиме, при котором приложение на базе Arcan является самодостаточным звеном, работающим без дополнительных графических прослоек.
  • Встроенный мультимедийный фреймворк, предоставляющих средства для работы с графикой, обработки потокового видео и звука, анимации, загрузки изображений, работы с устройствами захвата видео.

  • Многопроцессная модель подключения обработчиков источников данных (например, видеопотоков и вывода запущенных программ).

  • Жёсткая модель разделения привилегий - компоненты движка разбиваются на небольшие непривилегированные процессы, взаимодействующие через интерфейс разделяемой памяти Shmif.
  • Встроенные средства мониторинга и анализа аварийных завершений работы процессов. Движок может сериализировать внутреннее состояние Lua-скриптов для упрощения отладки.
  • Возможность отката (Fallbacks) на другой обработчик - в случае сбоя из-за ошибки в программе движок может запустить запасное приложение, сохранив те же внешние источники данных и соединения.
  • Средства для совместного доступа и удалённого подключения к рабочему столу. Доступ по сети обеспечивает графический сервер "arcan-net", реализующий P2P-протокол A12, объединяющий возможности таких технологий, как mDNS (определение локальных сервисов), SSH (интерактивная текстовая оболочка), X11/VNC/RDP (интерактивная графическая оболочка), RTSP (потоковая передача мультимедийных данных) и HTTP (загрузка ресурсов и синхронизация состояния).
  • Командная оболочка Cat9, позволяющая привязывать выполнение команд к отдельным ячейкам, формирующим подобие электронной таблицы (видео с демонстрацией). Предложенная концепция позволяет перенаправлять потоки данных между окнами, связывая данные и обработчики в разных окнах по аналогии с ячейками в электронных таблицах (например, можно перенаправить вывод из одного окна в запущенный в терминале shell-обработчик и использовать результат в другом окне).

Связанные с проектом изменения:

  • Портирован развиваемый компанией Valve композитный сервер Gamescope, при помощи которого реализована возможность запуска игр из Steam без манипуляций с Xwayland.
  • Улучшен Qt-плагин qtarcan, позволяющий запускать в Arcan приложения, использующие Qt5 и Qt6, такие как Qbittorrent и Binary Ninja.
  • Созданы патчи и скрипт для запуска KeepassXC.
  • Развивается просмотрщик для протокола A12 и взаимодействия через него.
  • Развивается интерактивный оконный менеджер Lasso.
  • Добавлена утилита Xkbd2Lua для преобразования раскладок клавиатуры из X11 в формат, поддерживаемый Arcan.
  • Развиваются nix-пакеты для создания рабочего загрузочного окружения на базе Arcan, рабочего стола Durden и командной оболочки.
  • Добавлена поддержка постквантового алгоритма шифрования ML-KEM.
  • Добавлена возможность возобновления клиентами прерванных сетевых соединений (после восстановления оборванного соединения приложение будет повторно сопряжено без потери состояния его окна).
  • Добавлена опция "--cast", позволяющая организовать работу других пользователей с копией вывода приложения в режиме только для чтения.
  • В сервер каталогов добавлена поддержка новых унифицированных (Unified) и референтных (Referential) ссылок, при помощи которых можно объединять серверы в единое пространство имён или выстраивать цепочки серверов. В первом случае для пользователя группа серверов выглядит как один сервер, а во втором можно запускать приложения на одном сервере, подключившись к другому.
  • В API добавлена функция launch_target для динамического запуска приложения на сервере по запросу клиента. Для приложения можно создать контроллер - набор Lua-скриптов для управлением обмена сообщениями и доступа к ресурсам.
  • Добавлена поддержка внешних определителей ресурсов (External Resource Resolver), которые могут перехватывать операции с хранилищем Arcan и обрабатывать операции запроса ресурсов, например, организовать локальное кэширование или загрузку данных из Web, BitTorrent или IPFS вместо отдачи с локального диска.
  • Реализовано подобие тонких клиентов, позволяющих клиенту без полного стека Arcan (имея только просмотрщик Smash), перенести логику выполнения программ на сервер. Например, для запуска среды рабочего стола durden на сервере myserver можно выполнить "arcan-net --host-appl myserver@ durden".
  • В командную оболочку Cat9 добавлен бэкенд с отладчиком, поддерживающим протокол DAP (Debug Adapter Protocol) для локальной или удалённой отладки.
  • Добавлена большая порция изменений, связанных с развитием протокола A12, среды для выполнения скриптов на языке Lua, сетевой подсистемы, сервера каталогов для связывания компонентов, разнесённых по сети, системы разделяемой памяти Shmif и модуля egl-dri.

Одновременно опубликован выпуск среды рабочего стола Durden 0.6.3. Прошлый релиз был сформирован в 2020 году. В Durden поддерживается мозаичный и классический режимы компоновки окон с полноценными средствами управления при помощи клавиатуры. Возможна работа в системах с несколькими мониторами, имеющими разные DPI.

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

Версия 0.6.3 является подготовительным выпуском перед находящимся в разработке релизом Durden 0.7, в котором будет предложен набор существенных нововведений, таких как экранные жесты, поддержка вертикальных заголовков и панелей, компактный режим отображения заголовков и панелей, новый конфигуратор, предпросмотр по наведению мыши, экранная клавиатуры osdkbd, режим совмещения окон, поддержка синтезатора речи, интеграция компонентов a12net и a12_directory для обеспечение сетевой прозрачности и удалённого доступа.

  1. Главная ссылка к новости (https://arcan-fe.com/2025/12/2...)
  2. OpenNews: Выпуск десктоп-движка Arcan 0.7
  3. OpenNews: Представлены дисплейный сервер Arcan и десктоп-окружение Durden
  4. OpenNews: Проект Genode опубликовал выпуск ОС общего назначения Sculpt 25.10
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/64523-arcan
Ключевые слова: arcan, desktop, durden
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (14) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 13:46, 29/12/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    В полку Х-форков прибыло! XLibre, Phoenix, Xarcan. Это, наверное, неплохо. Альтернатива должна быть всегда.
     
     
  • 2.4, ilyafedin (ok), 14:07, 29/12/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Wayback еще
     
     
  • 3.10, IMBird (ok), 14:44, 29/12/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Xenocara ещё + закрытые реализации в коммерческих юниксах.
     
  • 3.11, Аноним (11), 14:49, 29/12/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Это читер, у него фора.
     
  • 2.8, myster (ok), 14:26, 29/12/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    К сожалению, когда появляется так много форков, через 4 года выясняется, что поддерживается лишь один, и тот вот-вот может загнуться. Обычно так происходит.
     

  • 1.5, Васян (?), 14:09, 29/12/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    и чем это лучше привычного гнома ?
     
     
  • 2.6, Аноним (6), 14:15, 29/12/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Не клянчит донаты в уведомлениях.
     

  • 1.7, Arch KDE (?), 14:23, 29/12/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Я вот даже не понимаю чем так многим вайленд не нравится.  По мне отличная штука, работает хорошо, что еще надо людям, хз. Зачем разводить зоопарк, как по мне зоопарк это плохо, должен быть какой то стандарт в линуксе, это бы облегчило разработку программ и игр.
     
     
  • 2.9, Аноним (9), 14:26, 29/12/2025 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Согласен, нужно вернуться к стандарту иксов и оставить вяленого в зоопарке.
     
     
  • 3.14, Онанимус (?), 15:25, 29/12/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Жаль, только анонимные иксперты опеннета знают, как нужно. Но их, как обычно, забудут спросить люди, принимающие решения.
     
     
  • 4.16, 12yoexpert (ok), 15:31, 29/12/2025 [^] [^^] [^^^] [ответить]  
  • +/
    ты, наверное, думаешь, что пошутил. штош, горбатого могила исправит
     
  • 2.15, Аноним (15), 15:31, 29/12/2025 [^] [^^] [^^^] [ответить]  
  • +/
    by-design ограничен в возможностях. Банально приложения не могут выставлять координаты своих окон, чего уж говорить об остальном.
     

  • 1.12, 12yoexpert (ok), 15:08, 29/12/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > могут выполняться клиентские приложения на базе <...> Wayland

    хорошую вещь дурдомом не назовут

     
  • 1.17, Аноним (17), 15:46, 29/12/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А может кто-нибудь объяснить, как может работать ГУИ на двух мониторах с разными dpi? Если окно целиком одномоменто переместилось с одного экрана на другой, то можно представить, что приложение получает соответствующее событие и целиком перерисовывает окно с учетом dpi экрана. Нужно только, чтобы тулкит умел принять такое событие и умел делать релайоут окна. Ну а если окно постепенно перемещается с одного экрана на другой. Тут как быть?
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру