The OpenNET Project / Index page

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

·18.04.2024 Релиз видеоплеера MPV 0.38 (23 +7)
  Состоялся выпуск открытого видеоплеера MPV 0.38, в 2013 году ответвившегося от кодовой базы проекта MPlayer2. В MPV основное внимание уделяется разработке новых возможностей, не заботясь о сохранении совместимости с MPlayer. Код MPV распространяется под лицензией LGPLv2.1+, некоторые части остаются под GPLv2, но процесс перехода на LGPL почти завершён и для отключения оставшегося GPL-кода можно использовать опцию "--enable-lgpl".

Среди изменений в новой версии:

  • Продолжается развитие нового модуля вывода vo_gpu_next, построенного на основе библиотеки libplacebo и использующего шейдеры и графические API Vulkan, OpenGL, Metal или Direct3D для обработки и отрисовки видео. В новой версии vo_gpu_next обеспечено сохранение кэша в отдельных файлах.
  • Расширены возможности, связанные с Wayland: добавлена поддержка многопользовательских окружений с несколькими клавиатурами и мышами (multi-seat), обеспечена корректная прокрутка с высоким разрешением, улучшено масштабирование на экранах с высокой плотностью пикселей (HiDPI), улучшена обработка изменения курсора, включено требование по использованию переменной окружения WAYLAND_DISPLAY для инициализации.
  • Для скриптов добавлен API mp.input, позволяющий запросить ввод пользователем текстовых данных.
  • В проигрыватель добавлена опция "--deinterlace-field-parity" для автоматического включения деинтерлейсинга.
  • В сборки для mac OS добавлен пакет MoltenVK для обеспечения поддержки API Vulkan.
  • Добавлена возможность масштабирования видео колесом мыши при удерживании клавиши Ctrl.
  • В модуль вывода звука ao_avfoundation добавлена начальная поддержка драйвера AVFoundation, который используется в macOS.
  • В модуль вывода видео добавлена возможность использования контекстных меню на платформе Win32.
  • Во встроенном GUI OSC (On Screen Controller) разрешено отключения отдельных возможностей, связанных с использованием колеса мыши.
  • В окружениях X11 обеспечена поддержка масштабирования DPI с шагом 0.5 и использования по умолчанию DPI, указанного в параметре Xft.dpi.
  • Удалён устаревший нестандартный код поддержки Raspberry Pi.
  • Добавлена опция "--input-commands", позволяющая указать команды, которые будут выполнены после запуска mpv.
  • Добавлены новые опции "--osd-bar-border-size", "--secondary-sub-delay", "--sub-filter-sdh-enclosures", "--secondary-sub-ass-override", "--volume-gain", "--sub-lavc-o", "--input-preprocess-wheel".
  • Добавлены новые команды "load-config-file", "load-input-conf", "loadfile insert-next" и "loadlist insert-next".
  • Подняты требования к версиям зависимостей. Для работы теперь нужны как минимум версии FFmpeg 4.4 и libplacebo 6.338.2.

  1. OpenNews: Релиз видеоплеера MPV 0.37
  2. OpenNews: Медиаплеер MPV прекращает поддержку GNOME
  3. OpenNews: Инициатива по выбору официального GUI для MPV
  4. OpenNews: В рамках проекта MPlayer2 создан форк медиаплеера MPlayer
  5. OpenNews: Выпуск мультимедийного проигрывателя MPlayer 1.5
Обсуждение (23 +7) | Тип: Программы |
·17.04.2024 Выпуск Wayland-Protocols 1.35 (45 +9)
  Опубликован выпуск пакета wayland-protocols 1.35, содержащего набор протоколов и расширений, которые дополняют возможности базового протокола Wayland и предоставляют возможности, необходимые для построения композитных серверов и пользовательских окружений.

Все протоколы последовательно проходят три фазы - разработка, тестирование и стабилизация. После завершения стадии разработки (категория "unstable") протокол помещается в ветку "staging" и официально включается в состав набора wayland-protocols, а после завершения тестирования перемещается в категорию стабильных. Протоколы из категории "staging" уже можно применять в композитных серверах и клиентах, где требуется связанная с ними функциональность. В отличие от категории "unstable" в "staging" запрещено внесение изменений, нарушающих совместимость, но в случае выявление проблем и недоработок в ходе тестирования, не исключается замена новой значительной версией протокола или другим Wayland-расширением.

В новой версии:

  • В разряд стабильных переведён протокол tablet-v2, предоставляющий средства для организации ввода с графических планшетов.
  • В категорию "staging" добавлен новый протокол alpha-modifier, позволяющий клиентам менять уровень прозрачности поверхности и выносить операции по обеспечению прозрачности на сторону композитного сервера, который в свою очередь может переадресовать эти операции KMS.
  • В протокол xdg-shell добавлена рекомендация не выводить декорирование вне геометрических границ окна, в случае использования мозаичной компоновки окон.



В настоящее время в состав wayland-protocols входят следующие стабильные протоколы, в которых обеспечивается обратная совместимость:

  • "viewporter" - позволяет клиенту выполнять действия по масштабированию и обрезанию краёв поверхности на стороне сервера.
  • "presentation-time" - обеспечивает отображение видео.
  • "xdg-shell" - интерфейс создания и взаимодействия с поверхностями как с окнами, что позволяет их передвигать по экрану, сворачивать, разворачивать, изменять размер и т.д.
  • "linux-dmabuf" - обеспечивает совместное использование нескольких видеокарт при помощи технологии DMA-BUF (позволяет создать wl_buffer на базе DMA-BUF).
  • "tablet" - организация ввода с графических планшетов.

Протоколы, тестируемые в ветке "staging":

  • drm-lease - предоставляет ресурсы, необходимые для формирования стереокартинки с разными буферами для левого и правого глаза при выводе на шлемы виртуальной реальности.
  • "ext-session-lock" - определяет средства блокировки сеанса, например, во время работы хранителя экрана или вывода диалога аутентификации.
  • "single-pixel-buffer" - позволяет создавать однопиксельные буферы, включающие четыре 32-разрядных значения RGBA.
  • "xdg-activation" - позволяет передать фокус между разными поверхностями первого уровня (например, при помощи xdg-activation одно приложение может переключить фокус на другое).
  • content-type - позволяет клиентам передать композитному серверу сведения об отображаемом содержимом, которые могут использоваться для оптимизации поведения с учётом содержимого, например, выставлении специфичных DRM-свойств, таких как "content type". Заявлена поддержка следующих типов контента: none (нет сведений о типе данных), photo (вывод цифровых фото, требующий минимальной обработки), video (видео или анимация, требуется более точная синхронизация, чтобы исключить подтормаживания) и game (запуск игр, требуется вывод с минимальной задержкой).
  • ext-idle-notify - даёт возможность композитным серверам передавать клиентам уведомления о неактивности пользователя, что может использоваться для активации дополнительных режимов энергосбережения после определённого времени неактивности.
  • tearing-control - позволяет отключить в полноэкранных приложениях вертикальную синхронизацию (VSync) с кадровым гасящим импульсом, применяемую для защиты от появления разрывов при выводе (tearing). В мультимедийных приложениях появление артефактов из-за разрывов является нежелательным эффектом, но в игровых программах с артефактами можно смириться, если борьба с ними приводит к дополнительным задержкам.
  • ext-foreign-toplevel-list - получение информации о поверхностях, размещённых на самом верхнем уровне (toplevel), которые позволяют организовать закрепление окон поверх другого содержимого, например, для подключения собственных панелей и переключателей окон.
  • security-context - позволяет идентифицировать клиентов, использующих sandbox-изоляцию. Клиент может зарегистрировать новое подключение к композитному серверу на базе Wayland и прикрепить к нему контекст безопасности, после чего в соответствии с указанным контекстом безопасности композитный менеджер ограничит возможности, доступные для установленного соединения.
  • cursor-shape - альтернативный способ настройки внешнего вида курсора, основанный на передаче серии изображений курсора вместо привязки к поверхности (wl_surface).
  • "ext-transient-seat" - предназначен для создания временных независимых сеансов (seat), рассчитанных на использование вместе с виртуальными устройствами ввода. Например, при реализации возможности подключения к удалённому рабочему столу протокол позволяет создать для каждого пользователя отдельный сеанс с виртуальными клавиатурой и мышью.
  • "xdg-toplevel-drag" - расширяет механизм "drag & drop" возможностью прикрепления окон верхнего уровня к операции перемещения, что может быть использовано, например, для организации перетаскивания мышью панелей инструментов или вкладок браузера. Новый протокол позволяет создавать отсоединяемые части окна, которые при перетаскивании из этого окна становятся новыми окнами и могут перемещаться поверх существующего окна перед повторным прикреплением.
  • "xdg-dialog" - позволяет назначать поверхностям верхнего уровня признаки, специфичные для диалоговых окон, например, можно создавать модальные диалоги, которые блокируют взаимодействие пользователя с остальной частью интерфейса.
  • "linux-drm-syncobj" - предоставляет инструменты для явной синхронизациии буферов при помощи объектов синхронизации DRM (Direct Rendering Manager). Предполагается, что в контексте синхронизации при отрисовке в буфер предложенный протокол позволит улучшить работу с драйверами на базе графических API Vulkan и OpenGL (реализация базируется на обработчиках в драйверах). Новый протокол даёт возможность убедиться, что операция отрисовки в буфер завершена до того, как композитный менеджер отобразит данный буфер.

Протоколы, разрабатываемые в ветке "unstable":

  • "fullscreen-shell" - управление работой в полноэкранном режиме.
  • "input-method" - обработка методов ввода.
  • "idle-inhibit" - блокировка запуска скринсейвера (экранной заставки).
  • "input-timestamps" - временные метки для событий ввода.
  • "keyboard-shortcuts-inhibit" - управление прикреплением клавиатурных комбинаций и горячих клавиш.
  • "linux-explicit-synchronization" - специфичный для Linux механизм синхронизации буферов в привязке к поверхности.
  • "pointer-gestures" - управление с сенсорных экранов.
  • "pointer constraints" - ограничения указателей (блокировка).
  • "primary-selection" - по аналогии с X11 обеспечивает работу первичного буфера обмена (primary selection), вставка информации из которого обычно осуществляется средней кнопкой мыши.
  • "relative pointer events" - относительные события указателей.
  • "text-input" - организация ввода текста.
  • "xdg-foreign" - интерфейс взаимодействия с поверхностями "соседнего" клиента.
  • "xdg-decoration" - отрисовка декораций окон на стороне сервера.
  • "xdg-output" - дополнительные сведения о видеовыходе (используется для дробного масштабирования).
  • "xwayland-keyboard-grab" - захват ввода в приложениях XWayland.
    1. OpenNews: Выпуск Wayland-Protocols 1.34
    2. OpenNews: В библиотеке SDL3 отменяют переход на Wayland по умолчанию (отмена отложена)
    3. OpenNews: Сотрудник Canonical представил miracle-wm, композитный менеджер на базе Wayland и Mir
    4. OpenNews: Доступен Wayland 1.22
Обсуждение (45 +9) | Тип: Программы |
·17.04.2024 Проект OpenBSD перешёл на использование формата PAX для tar-архивов (41 +6)
  В кодовую базу OpenBSD принято изменение, переводящее утилиту tar на использование по умолчанию формата PAX при создании архивов. Изменение войдёт в состав выпуска OpenBSD 7.6. Использование формата PAX даст возможность сохранять более длинные имена файлов, обрабатывать ссылки, использовать более точные сведения о времени и помещать в архив файлы очень большого размера.

Из минусов перехода на PAX упоминается увеличение размера несжатых архивов и ограниченная поддержка формата в экосистеме. Для возвращения старого поведения и сохранения архивов в формате TAR предлагается при вызове утилиты tar указывать опцию "-F ustar".

  1. OpenNews: Релиз GNU tar 1.33
  2. OpenNews: Разработчики OpenBSD экспериментируют с использованием Wayland
  3. OpenNews: Для OpenBSD реализована возможность использования рабочего стола KDE Plasma
  4. OpenNews: Выпуск OpenBSD 7.5
Обсуждение (41 +6) | Тип: К сведению |
·17.04.2024 Обновление Java SE, MySQL, VirtualBox, Solaris и других продуктов Oracle с устранением уязвимостей (9 +7)
  Компания Oracle опубликовала плановый выпуск обновлений своих продуктов (Critical Patch Update), нацеленный на устранение критических проблем и уязвимостей. В апрельском обновлении в сумме устранена 441 уязвимость.

Некоторые проблемы:

  • 10 проблем с безопасностью в Java SE и 13 проблем в GraalVM. 8 уязвимостей в Java SE могут быть эксплуатированы удалённо без проведения аутентификации и затрагивают окружения, допускающие выполнение не заслуживающего доверия кода. Наиболее опасные проблемы в Java SE (уязвимость в JavaFX/WebKitGTK) и GraalVM (уязвимость в Node.js) имеют уровень опасности 7.5 из 10. Уязвимости устранены в выпусках Java SE 22.0.1, 21.0.3 и 17.0.11.
  • 26 уязвимостей в сервере MySQL, все из которых могут быть эксплуатированы удалённо. Наиболее серьёзная проблема имеет уровень опасности 6.5 и связана с уязвимостью в openSSL. Менее опасные уязвимости затрагивают оптимизатор, InnoDB, Thread Pooling, Group Replication Plugin, Audit Plugin, DML, mysqldump. Проблемы будут устранены в выпусках MySQL Community Server 8.4.0 и 8.0.38.
  • 13 уязвимостей в VirtualBox, 7 из которых помечены как опасные (у четырёх проблем уровень опасности 8.8 из 10, а у трёх - 7.8 из 10). Подробности об уязвимостях не раскрываются, но судя по выставленному уровню опасности, они позволяют получить доступ к хост-окружению из гостевых систем. Две уязвимости проявляются только на хостах с Linux и две - только на хостах с Windows. Одна из уязвимостей допускает удалённое совершение атаки по HTTP без прохождения аутентификации, но уровень опасности для данной проблемы выставлен в 5.9 из 10 из-за сложности эксплуатации. Уязвимости устранены в обновлении VirtualBox 7.0.16.
  • 3 уязвимости в Solaris, которые затрагивают технологию Solaris Zones и системные утилиты. Проблемам присвоены уровни опасности 8.2, 7.8 и 2.0. Уязвимости устранены в обновлении Solaris 11.4 SRU68. Кроме устранения уязвимостей в новой версии также обновлены версии пакетов Explorer 24.2, Node.js 18.19.1, BIND 9.18.24, libuv 1.48.0, sendmail 8.18.1, Unbound 1.19.1, Firefox 115.9.0esr, Thunderbird 115.9.0, library/nss, library/libtiff и kernel/arch-x86.

  1. OpenNews: Выпуск VirtualBox 7.0.16 с устранением уязвимостей
  2. OpenNews: Обновление Java SE, MySQL, VirtualBox, Solaris и других продуктов Oracle с устранением уязвимостей
  3. OpenNews: Возможность генерации фиктивных подписей ECDSA в Java SE. Уязвимости в MySQL, VirtualBox и Solaris
  4. OpenNews: Релиз 19.3.0 виртуальной машины GraalVM и реализаций Python, JavaScript, Ruby и R на её основе
Обсуждение (9 +7) | Тип: Проблемы безопасности |
·17.04.2024 Выпуск VirtualBox 7.0.16 (33 +8)
  Компания Oracle опубликовала корректирующий релиз системы виртуализации VirtualBox 7.0.16, в котором отмечено 15 исправлений. Помимо данных изменений в новой версии устранено 13 уязвимостей, 7 из которых помечены как опасные (у четырёх проблем уровень опасности 8.8 из 10, а у трёх - 7.8 из 10).

Подробности об уязвимостях не раскрываются, но судя по выставленному уровню опасности, они позволяют получить доступ к хост-окружению из гостевых систем. Две уязвимости проявляются только на хостах с Linux и две - только на хостах с Windows. Одна из уязвимостей допускает удалённое совершение атаки по HTTP без прохождения аутентификации, но уровень опасности для данной проблемы выставлен в 5.9 из 10 из-за сложности эксплуатации.

Основные изменения в VirtualBox 7.0.16:

  • В дополнениях для хостов и гостевых систем добавлена начальная поддержка ядра Linux 6.9. В дополнениях для гостевых систем добавлена поддержка ядра 6.8 (для хостов ядро 6.8 поддерживалось ранее).
  • В дополнениях для хостов и гостевых систем на базе Linux добавлена возможность запрета автоматической загрузки модуля ядра через выставление параметра mod_name.disabled=1 в командной строке ядра.
  • В хост-окружениях на базе Linux решены проблемы со сборкой модулей ядра Linux при использовании компилятора GCC 13.2.
  • В хост-окружениях на базе Linux решены проблемы с определением IPC-сокета VBoxSVC в стартовом скрипте VBox.sh, проявляющиеся при запуске виртуальной машины с использованием утилиты sudo.
  • В дополнениях для хостов и гостевых систем на базе Linux устранены предупреждения, связанные с поддержкой UBSAN и mk_pte.
  • В дополнениях гостевых систем на базе Windows отмечены улучшения, связанные с графикой.
  • В хост-окружениях на базе macOS решены проблемы со снижением производительности виртуальных машин при использовании App Nap.
  • Упрощён запуск вложенных гостевых систем с использованием гипервизора KVM на хостах с CPU Intel.
  • Устранено аварийное завершение виртуальной машины, проявляющиеся на некоторых новых CPU AMD.
  • В драйвере USB решены проблемы с контроллерами EHCI.
  • Улучшена поддержка звуковых устройств.
  • Обновлена документация на утилиты VBoxManage и vboximg-mount.
  • В пакете Guest Control налажено задействование правильного сеанса Windows при запуске процессов в гостевых окружениях Windows.

  1. OpenNews: VirtualBox адаптирован для работы поверх гипервизора KVM
  2. OpenNews: Выпуск VirtualBox 7.0.14
  3. OpenNews: Уязвимость в VirtualBox, эксплуатируемая через протокол RDP
  4. OpenNews: Релиз системы виртуализации VirtualBox 7.0
Обсуждение (33 +8) | Тип: Программы |
·16.04.2024 Новые версии nginx 1.25.5 и форка FreeNginx 1.26.0 (30)
  Сформирован выпуск основной ветки nginx 1.25.5, в рамках которой продолжается развитие новых возможностей. В параллельно поддерживаемой стабильной ветке 1.24.x вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей. В дальнейшем на базе основной ветки 1.25.x будет сформирована стабильная ветка 1.26. Код проекта написан на языке Си и распространяется под лицензией BSD.

Среди изменений:

  • В модуль stream добавлена поддержка виртуальных серверов, конфигурация которых определяется в блоке "server { ... }" при помощи директивы server_name.
    
       server {
           server_name ~^(www\.)?(.+)$;
           proxy_pass www.$2:12345;
       }
    
  • Добавлен новый модуль ngx_stream_pass_module, предназначенный для проброса принятых соединений напрямую в любой слушающий сокет, связанный с такими модулями, как http, stream и mail.
    
       stream {
           server {
               listen 12345 ssl;
    
               ssl_certificate     domain.crt;
               ssl_certificate_key domain.key;
    
               pass 127.0.0.1:8000;
           }
       }
    
  • В директиве listen модуля stream реализована поддержка параметров "deferred" (включает отложенный accept), "accept_filter" (фильтр входящих соединений, применяемый перед вызовом функции accept) и "setfib" (задание таблицы маршрутизации).
  • Для некоторых архитектур реализована поддержка определения размера блока (cache line), используемого для передачи данных между кэшем CPU и памятью.
  • На системах Apple Silicon добавлена поддержка пакетного менеджера Homebrew.
  • Решены проблемы с кросс-компиляцией для Windows.
  • Устранена ошибка, приводившая к закрытию соединений при использовании режима 0-RTT в протоколе QUIC.

Дополнительно можно отметить публикацию стабильной версии проекта FreeNginx 1.26.0, развивающего форк Nginx. Разработку форка ведёт Максим Дунин, один из ключевых разработчиков Nginx. FreeNginx позиционируется как некоммерческий проект, обеспечивающий разработку кодовой базы Nginx без корпоративного вмешательства. Выпуск 1.26.0 отмечен как стабильный релиз, вобравший в себя изменения и исправления из выпусков mainline-ветки Nginx 1.25. Среди прочего в состав FreeNginx 1.26.0 вошли экспериментальная поддержка протокола HTTP/3, улучшения для противодействия DoS-атакам и исправления, связанные с асинхронной обработкой ввода/вывода.

Одновременно состоялся выпуск njs 0.8.4, интерпретатора языка JavaScript для веб-сервера nginx. Интерпретатор njs реализует стандарты ECMAScript и позволяет расширять возможности nginx по обработке запросов с помощью скриптов в конфигурации. Скрипты могут использоваться в файле конфигурации для определения расширенной логики обработки запросов, формирования конфигурации, динамической генерации ответа, модификации запроса/ответа или быстрого создания заглушек с решением проблем в web-приложениях. В новой версии: в CLI добавлена поддержка JavaScript-движка QuickJS; добавлена возможность выставления заголовка Server; реализована проверка на дублирование переменных, выставленных через js_set.

  1. OpenNews: Выпуск Angie 1.5.0, российского форка Nginx
  2. OpenNews: Представлен FreeNginx, форк Nginx, созданный из-за несогласия с политикой компании F5
  3. OpenNews: В nginx 1.25.4 и Angie 1.4.1 устранены уязвимости, связанные с HTTP/3
  4. OpenNews: Уязвимости в ingress-nginx, позволяющие скомпрометировать кластеры Kubernetes
  5. OpenNews: Выпуск nginx 1.25.3, njs 0.8.2 и NGINX Unit 1.31.1
Обсуждение (30) | Тип: Программы |
·16.04.2024 Выпуск платёжной системы GNU Taler 0.10, развиваемой проектом GNU (71 +16)
  После полутора лет разработки проект GNU представил выпуск свободной системы электронных платежей GNU Taler 0.10, предоставляющей анонимность покупателям, но сохраняющей возможность идентификации продавцов для обеспечения прозрачности предоставления налоговой отчётности. Система не позволяет отследить информацию о том, куда пользователь тратит деньги, но предоставляет средства для отслеживания поступления средств (отправитель остаётся анонимным), что решает свойственные BitCoin проблемы с налоговым аудитом. Код написан на Python и распространяется под лицензиями AGPLv3 и LGPLv3.

GNU Taler не создаёт собственную криптовалюту, а работает с уже существующими валютами, в том числе с долларами, евро и биткоинами. Поддержку новых валют можно обеспечить через создание банка, который выступает финансовым гарантом. Бизнес-модель GNU Taler основана на выполнении операций обмена - деньги из традиционных платёжных систем, таких как BitCoin, Mastercard, SEPA, Visa, ACH и SWIFT, преобразуются в анонимные электронные деньги в той же валюте. Пользователь может передавать электронные деньги продавцам, которые затем могут на точке обмена поменять их обратно в реальные деньги, представленные традиционными системами платежей.

Все транзакции в GNU Taler защищены с использованием современных криптографических алгоритмов, позволяющих сохранить достоверность даже при утечке приватных ключей клиентов, продавцов и точек обмена. Формат БД предоставляет возможность верификации всех совершённых транзакций и подтверждения их непротиворечивости. Подтверждением платежа для продавцов является криптографическое доказательство перевода в рамках заключённого с клиентом контракта и криптографически подписанное подтверждение о наличии средств на точке обмена. В состав GNU Taler входят набор базовых компонентов, предоставляющих логику для работы банка, точки обмена, торговой площадки, кошелька и аудитора.

Финансирование разработки осуществляется на гранты Еврокомиссии, Государственного секретариата Швейцарии по образованию и Государственного секретариата Швейцарии по исследованиям и инновациям (SERI). В рамках проекта NGI TALER ведётся работа по созданию на базе GNU Taler продукта, готового для применения в Евросоюзе.

Основные изменения:

  • Добавлена поддержка обмена ключами с использованием протокола EBICS 3.0 (Electronic Banking Internet Communication Standard), предназначенного для защищённого обмена информацией о платежах между банками. Для отправки запросов в банки с использованием протокола EBICS предложена утилита libeufin-nexus.
  • Для магазинов предложен более удобный интерфейс проведения платежей с использованием QR-кодов, реализованный через публично доступный обработчик GET-запросов, использующий шаблоны.
  • В Apple app store размещена реализация кошелька для платформы iOS.
  • В кошельках улучшено управление подключением к точкам обмена.
  • В Wallet-core добавлена возможность генерации событий мониторинга для упрощения диагностики.
  • Для кошельков реализован новый тип транзакций, представляющих средства, потерянные из-за деноминации, отзыва или истечения срока действия монет.
  • В Wallet-core обеспечено кэширование запросов и добавлена поддержка верификации ключей в асинхронном режиме.

  1. OpenNews: Опубликована P2P-платформа GNUnet 0.20
  2. OpenNews: Выпуск платёжной системы GNU Taler 0.9, развиваемой проектом GNU
  3. OpenNews: Доступен GNU Anastasis, инструментарий для резервного копирования ключей шифрования
  4. OpenNews: Проект GNU представил собственную платёжную систему GNU Taler
Обсуждение (71 +16) | Тип: Программы |
·15.04.2024 Инициатива по избавлению браузерного движка Servo от привязки к Mozilla SpiderMonkey (107 +18)
  Разработчики браузерного движка Servo представили инициативу по усилению модульности и уходу от использования низкоуровневых API JavaScript-движка SpiderMonkey, развиваемого компанией Mozilla и применяемого в Servo для обеспечения поддержки JavaScript и WebAssembly. В дальнейшем Servo планируют перевести на более высокоуровневый API и слой абстракций для взаимодействия с JavaScript-движками, что даст возможность избавиться от небезопасных прямых обращений к коду SpiderMonkey, выполняемых в блоках unsafe. В отдалённой перспективе изменение позволит уйти от жёсткой привязи к SpiderMonkey и обеспечить поддержку других движков JavaScript и WebAssembly, таких как используемый в Chrome движок V8.

Проект Servo написан на языке Rust и отличается поддержкой многопоточного рендеринга web-страниц, распараллеливанием операций с DOM (Document Object Model) и задействованием предоставляемых языком Rust механизмов безопасного программирования. Проект Servo изначально развивался компанией Mozilla, но затем перешёл под покровительство организации Linux Foundation. Servo изначально создан с поддержкой разбиения кода DOM и рендеринга на более мелкие подзадачи, которые могут выполняться параллельно и более эффективно использовать ресурсы многоядерных CPU. В Firefox уже интегрированы некоторые части Servo, такие как многопоточный CSS-движок и система отрисовки WebRender.

  1. OpenNews: Проект по интеграции с Qt web-движка Servo, развиваемого на языке Rust
  2. OpenNews: Релиз браузерного движка WebKitGTK 2.42.0 и обновление проекта Servo
  3. OpenNews: Разработка браузерного движка Servo переведена в организацию Linux Foundation Europe
  4. OpenNews: Возобновлена активная разработка браузерного движка Servo
  5. OpenNews: Представлен браузерный движок Kosmonaut, написанный на языке Rust
Обсуждение (107 +18) | Тип: К сведению |
·14.04.2024 Выпуск симуляторов транспортных компаний OpenTTD 14.0 и OpenLoco 24.04 (46 +36)
  Доступен релиз OpenTTD 14.0, свободной стратегической игры, симулирующей работу транспортной компании в реальном времени. Релиз приурочен к празднованию 20-летия проекта. Код OpenTTD написан на языке С++ и распространяется под лицензией GPLv2. Установочные пакеты подготовлены для Linux, Windows и macOS.

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

В новой версии:

  • Добавлена возможность замедления течения календарного времени, вплоть до его остановки. Изменение не меняет темп движения транспортных средств, динамику перевозок и прогресс развития городов, но влияет на время появления новых транспортных средств, инфляцию и устаревание транспорта.
  • В функции поиска пути для судов появилась возможность направлять корабли на большие расстояния без использования буев. Изменение позволит создавать игры, в которых используются только корабли, и исключит потерю кораблями маршрутов до портов.
  • Добавлен режим распределения транспортных средств, позволяющий избежать скопления транспорта на маршруте, благодаря автоматическому поддержанию дистанции между транспортом.
  • Обеспечена поддержка интеграции с социальными сетями и платформами, такими как Steam, Discord и GOG Galaxy, что позволяет другим отслеживать, когда пользователь играет в OpenTTD.
  • Добавлена возможность проведения опросов среди игроков, позволяющих лучше понять как пользователи играют в OpenTTD.
  • Предложен встроенный масштабируемый TTF-шрифт, обеспечивающий должный внешний вид при разных уровнях масштабирования. Улучшена отрисовка графического интерфейса и решены проблемы с цветами.
  • Добавлена кнопка "Help and Manuals" ("Помощь и руководства") для доступа к основной информации об игре
  • Пересмотрены применяемые по умолчанию настройки игрового процесса. Изменения в основном коснулись включения новых возможностей.
  • Читы (Cheats) переименованы в песочницу (Sandbox), так как некоторые воспринимали данное название в негативном контексте, в то время, как в OpenTTD подразумевался режим играть так, как нравится.

Дополнительно можно отметить выпуск OpenLoco 24.04, открытого движка для симулятора транспортной компании Chris Sawyer's Locomotion. В новой версии реализация команд для создания зданий и дорог переписана на языке С++, улучшена работа генераторов карт и ландшафтов, улучшена отрисовка текста.

Также можно упомянуть обновление проекта OpenRCT2 0.4.10, развивающего открытую реализацию стратегической игры RollerCoaster Tycoon 2, симулирующей конструирование парка развлечений и управление им, а также охватывающей также элементы инфраструктуры, такие как магазины и кафе. Для работы OpenLoco и OpenRCT2 требуются файлы с ресурсами от оригинальных игр Chris Sawyer's Locomotion и RollerCoaster Tycoon 2. Из отличий открытых вариантов движков выделяется поддержка современных платформ, улучшенный интерфейс, повышение качества искусственного интеллекта.

  1. OpenNews: Выпуск игры OpenRCT2, предлагающей симулятор парка аттракционов
  2. OpenNews: Выпуск открытого игрового движка VCMI 1.3.0, совместимого с Heroes of Might and Magic III
  3. OpenNews: Выпуск TR1X 3.0, открытого движка для игры Tomb Raider
  4. OpenNews: Выпуск свободной стратегической игры Warzone 2100 4.4.2
Обсуждение (46 +36) | Тип: Программы |
·14.04.2024 Релиз http-серверов Lighttpd 1.4.76 и Apache httpd 2.4.59 (70 +2)
  Опубликован релиз легковесного http-сервера lighttpd 1.4.76, ориентированного на сочетание высокой производительности, безопасности, соответствия стандартам и гибкости настройки. Lighttpd пригоден для применения на высоконагруженных системах и нацелен на низкое потребление памяти и ресурсов CPU. Код проекта написан на языке Си и распространяется под лицензией BSD.

В новой версии:

  • Обеспечено выявление совершения атаки "Continuation flood", осуществляемой через отправку на сервер HTTP/2 непрекращающегося потока кадров CONTINUATION без выставления флага END_HEADERS. Утверждается, что данная атака не приводит к отказу в обслуживании lighttpd, но в качестве дополнительной меры добавлено её выявление и отправка ответа GO_AWAY.
  • Учтён инцидент с внедрением бэкдора в пакет xz. При создании релизов для сборки зависимостей теперь используется получение кода из Git командой "git archive" с верификацией по тегам релиза и без загрузки готовых архивов с кодом.
  • По умолчанию предоставлен встроенный файл mimetype.assign.
  • Добавлена поддержка расширения MPTCP (MultiPath TCP), которая не активирована по умолчанию.
  • Улучшена поддержка платформ GNU/Hurd и NetBSD 10.
  • Сокращено число системных вызовов, совершаемых при подключениях к бэкенду.
  • В следующих выпусках планируется выставить TLSv1.3 в качестве минимально поддерживаемой по умолчанию версии протокола TLS (сейчас параметр MinProtocol выставлен в значение TLSv1.2). В будущем обработчик server.error-handler-404 будет ограничен только обработкой ошибок 404 (сейчас обрабатывается как 404, так и 403).

Также можно отметить релиз HTTP-сервера Apache 2.4.59, в котором представлено 21 изменение и устранены три уязвимости:

  • CVE-2024-27316 - уязвимость, приводящая к исчерпанию свободной памяти при совершении атаки "Continuation flood".
  • CVE-2024-24795, CVE-2023-38709 - возможность совершения атаки по разделению ответов HTTP на системах фронтэнд-бэкенд, позволяющей добиться подстановки дополнительных заголовков ответа или расщеплению ответов для того, чтобы вклиниться в содержимое ответов другим пользователям, обрабатываемых в том же потоке между фронтэндом и бэкендом.
  • В модуль mod_cgi добавлен параметр CGIScriptTimeout для выставления таймаута выполнения скрипта.
  • В mod_xml2enc обеспечена совместимость с libxml2 2.12.0 и более новыми выпусками.
  • В mod_ssl для компоновки списков имён удостоверяющих центров при обработке директив SSLCACertificatePath и SSLCADNRequestPath адействованы штатные функции OpenSSL.
  • В mod_xml2enc обеспечена обработка XML для любых MIME-типов text/* и XML для исключения повреждения данных в форматах Microsoft OOXML.
  • В утилите htcacheclean при указании опций -a/-A реализован перебор всех файлов для каждого подкаталога.
  • В mod_ssl в директивах SSLProxyMachineCertificateFile/Path разрешено ссылаться на файлы, содержащий сертификаты удостоверяющих центров.
  • В документации к утилитам htpasswd, htdbm и dbmmanage уточнено, что в них используется хэширование, а не шифрование паролей.
  • В htpasswd добавлена поддержка обработки хэшей паролей, используя алгоритм SHA-2.
  • В mod_env разрешено переопределение системных переменных окружения.
  • В mod_ldap реализовано экранирование HTML-данных в заголовке ldap-status.
  • В mod_ssl улучшена совместимость с OpenSSL 3 и обеспечено возвращение системе освобождённой памяти.
  • В mod_proxy разрешено выставление TTL для настройки времени жизни записи в кэше DNS-ответов.
  • В mod_proxy в параметр ProxyRemote добавлена поддержка третьего аргумента, через который можно настроить передаваемые на внешний прокси учётные данные для Basic-аутентификации.

  1. OpenNews: Релиз http-сервера Lighttpd 1.4.74
  2. OpenNews: Уязвимость в протоколе HTTP/2, задействованная в крупнейшей DDoS-атаке
  3. OpenNews: Атака Continuation flood, приводящая к проблемам на серверах, использующих HTTP/2.0
  4. OpenNews: Релиз http-сервера Apache 2.4.58 с устранением DoS-уязвимостей в HTTP/2
  5. OpenNews: Первый стабильный выпуск библиотеки GNU libmicrohttpd
Обсуждение (70 +2) | Тип: Программы |
·14.04.2024 Выпуск платформы Lutris 0.5.17 для упрощения доступа к играм из Linux (53 +19)
  Опубликован выпуск игровой платформы Lutris 0.5.17, предоставляющей инструменты для упрощения установки, настройки и управления играми в Linux. Код проекта написан на языке Python и распространяется под лицензией GPLv3. Готовые сборки доступны в формате flatpak.

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

Предоставляется возможность установки игр, распространяемых через сервисы GOG, Steam, Epic Games Store, Battle.net, Amazon Games, Origin и Uplay. При этом сам по себе Lutris выступает лишь в роли посредника и не продаёт игры, поэтому для коммерческих игр пользователь должен самостоятельно приобрести игру в соответствующем сервисе (бесплатные игры можно запускать одним кликом из графического интерфейса Lutris).

Каждая игра в Lutris привязывается к сценарию загрузки и обработчику, описывающему окружение для запуска игры. В том числе предоставляются готовые профили с оптимальными настройками для запуска игр под управлением Wine. Кроме Wine игры могут запускаться при помощи эмуляторов игровых консолей, таких как RetroArch, Dosbox, FS-UAE, ScummVM, MESS/MAME и Dolphin.

Среди изменений в новой версии:

  • Добавлена поддержка запуска игр с использованием Supermodel, эмулятора платформы Sega Model 3, позволяющего выполнять некоторые классические аркадные игры.
  • Добавлена поддержка эмулятора Vita3k, для запуска игр, созданных для приставки Sony PlayStation Vita.
  • Добавлена поддержка синхронизации игр, игровой статистики и игровых категорий между несколькими устройствами, используя сервис на сайте lutris.net.
  • Экран "Lutris" заменён на "Games", в котором используются новые возможности синхронизации библиотеки игр.
  • Добавлена экспериментальная поддержка режима Umu, позволяющего использовать Proton и Pressure Vessel (система для запуска игр в отдельных контейнерах) без привязки к сервису Steam.
  • Улучшена сортировка игр (инвертирована сортировка по продолжительности игры и времени последней игры).
  • При выборе нескольких игр предоставлена возможность использования для них команды "Categories".
  • В Cemu, эмуляторе игровой консоли Nintendo Wii U, добавлена поддержка файлов в формате WUA.
  • При включении опции "Show Hidden Games" скрытые игры теперь показываются в отдельной секции и опять скрываются после завершения просмотра.
  • В баннерах и обложках добавлена поддержка PNG-файлов с прозрачным фоном.
  • Объявлена устаревшей поддержка libstrangle и xgamma.

  1. OpenNews: Выпуск платформы Lutris 0.5.15 для упрощения доступа к играм из Linux
  2. OpenNews: Выпуск Bazzite 1.0, редакции Fedora Silverblue для любителей компьютерных игр
  3. OpenNews: Выпуск Nobara 39, редакции Fedora с патчами для игр и обработки контента
  4. OpenNews: Выпуск Bottles 2022.1.28, пакета для организации запуска Windows-приложений в Linux
  5. OpenNews: Новая версия пакета PlayOnLinux 4.3
Обсуждение (53 +19) | Тип: Программы |
·14.04.2024 Библиотека LibGodot для встраивания в приложения сцен, созданных для игрового движка Godot (45 +19)
  Мигель де Икаса (Miguel de Icaza), основатель таких проектов, как GNOME, Midnight Commander и Mono, представил инициативу по реализации возможности встраивания в приложения произвольных сцен, подготовленных для игрового движка Godot. Для включения в состав Godot предложена библиотека LibGodot, позволяющая отрисовывать контент, созданный для движка Godot, а также предоставляющая API для управления движком и взаимодействия с контентом. Библиотека поддерживает динамическое и статическое связывание и может использоваться с кодом на C++, Swift, Rust, Python и других языках, для которых созданы обвязки GDExtension. Код открыт под лицензией MIT.

Разработчики библиотеки намерены добиться включения экспериментальной поддержки LibGodot в состав выпуска Godot 4.3, а в версии Godot 4.4 обеспечить поддержку в LibGodot графического API OpenGL и платформ Android, Windows, Linux (X11 и Wayland), помимо изначально поддерживаемых macOS и iOS. Из областей применения LibGodot, кроме интеграции контента Godot в графический интерфейс приложения (показа окон Godot, как части интерфейса), отмечается возможность управления движком Godot из приложения и решение задач, связанных с автоматизацией разработки (например, для задействования при сборке ассетов).

  1. OpenNews: Выпуск открытого игрового движка Godot 4.2
  2. OpenNews: Проект GodotOS подготовил оболочку операционной системы на игровом движке Godot
  3. OpenNews: Выпуск игрового движка Open 3D Engine 23.10, открытого компанией Amazon
  4. OpenNews: Открыт код игрового движка Dagor Engine, который будет использован VK в Nau Engine
  5. OpenNews: Раскол в сообществе свободного игрового движка Urho3D привёл к созданию форка
Обсуждение (45 +19) | Тип: Программы |
·14.04.2024 Доступен Lakka 5.0, дистрибутив для создания игровых консолей (23 +10)
  Представлен релиз дистрибутива Lakka 5.0, позволяющего превратить компьютеры, телеприставки или одноплатные компьютеры в полноценную игровую консоль для запуска ретроигр. Проект является модификацией дистрибутива LibreELEC, изначально рассчитанного на создание домашних кинотеатров. Сборки Lakka формируются для платформ i386, x86_64 (GPU Intel, NVIDIA или AMD), Raspberry Pi, Orange Pi, Banana Pi, Hummingboard, Cubox-i, Odroid C1/C1+/XU3/XU4 и т.д. Для установки достаточно записать дистрибутив на SD-карту или USB-накопитель, подключить геймпад и загрузить систему.

В основе Lakka лежит эмулятор игровых консолей RetroArch, обеспечивающий эмуляцию широкого спектра устройств и поддерживающий такие расширенные возможности, как многопользовательские игры, сохранение состояния, улучшение качества изображения старых игр при помощи шейдеров, перемотка игры назад, горячее подключение геймпадов и видео стриминг. Среди эмулируемых консолей: Atari 2600/7800/Jaguar/Lynx, Game Boy, Mega Drive, NES, Nintendo 64/DS, PCEngine, PSP, Sega 32X/CD, SuperNES и т.д. Поддерживаются геймпады от уже имеющихся игровых приставок, включая Playstation 3, Dualshock 3, 8bitdo, Nintendo Switch, XBox 1 и XBox360.

В новом выпуске:

  • Системное окружение обновлено до пакетной базы LibreELEC 11 (прошлая ветка была основана на LibreELEC 10.x).
  • Пакет RetroArch обновлён до версии 1.17.
  • Обновлены версии эмуляторов и игровых движков. В состав включены новые движки:
    • dirksimple - движок для игры Dragon’s Lair
    • dosbox-core - эмулятор DOSBox
    • ep128emu - эмулятор Enterprise 64/128, Videoton TVC, Amstrad CPC и ZX Spectrum
    • geolith - эмулятор Neo Geo AES и MVS Cartridge System
    • jaxe - эмулятор XO-CHIP, S-CHIP и CHIP-8
    • numero - эмулятор калькулятора TI-83
    • thepowdertoy - движок для игры The Powder Toy
    • vice_xpet - эмулятор Commodore PET
    • vircon32 - виртуальная игровая консоль (Virtual Game Console)
    • vitaquake2 - движок для Quake II
  • Пакет Mesa обновлён до версии 24.0.4.
  • Ядро Linux обновлено до ветки 6.1 (ранее применялась ветка 5.10).
  • Добавлены сборки для устройств:
    • Raspberry Pi 5, Raspberry Pi Zero 2, Raspberry Pi Compute Module 4.
    • OrangePi 4 LTS, OrangePi Zero2, OrangePi 3 LTS.
    • BananaPi CM4, BananaPi M2 Pro, BananaPi M2S, BananaPi M5.
    • Radxa Zero, Radxa Zero2, Radxa Rock Pi 4 Plus, Radxa Rock Pi 4 C Plus.
    • WeTek Core, WeTek Hub, WeTek Play 2.
    • Firefly ROC-PC Plus.
  • Добавлена отдельная сборка для ПК с поддержкой GPU NVIDIA (в состав включён проприетарный драйвер NVIDIA).
  • Для Retroarch XMB UI предложена тема оформления Retrorama.

  1. OpenNews: Выпуск Lakka 4.3, дистрибутива для создания игровых консолей
  2. OpenNews: Компания Valve опубликовала CAD-файлы корпуса игровой консоли Steam Deck
  3. OpenNews: Выпуск эмулятора игровых консолей RetroArch 1.16
  4. OpenNews: Выпуск дистрибутива для создания домашних кинотеатров LibreELEC 11.0.4
  5. OpenNews: Выпуск платформы Lutris 0.5.15 для упрощения доступа к играм из Linux
Обсуждение (23 +10) | Тип: Программы |
·13.04.2024 Выпуск KDE Frameworks 6.1.0. Реализация Explicit Sync для KDE (76 +33)
  Спустя полтора месяца после релиза KDE 6.0 опубликован выпуск платформы KDE Frameworks 6.1.0, предоставляющей реструктуризованный и портированный на Qt 6 базовый набор библиотек и runtime-компонентов, лежащих в основе KDE. Фреймворк включает в себя 72 библиотеки, часть которых может работать в качестве самодостаточных надстроек над Qt, а часть формируют программный стек KDE.

Выпуск cформирован в соответствии с инициативой по предсказуемому ежемесячному формированию обновлений KDE Frameworks. Помимо исправления ошибок и недоработок, выявленных после публикации ветки KDE 6.0, в новой версии можно отметить следующие новшества:

  • В kdeclarative добавлена поддержка платформы Android. Добавлены зависимости, необходимые модулю QML. Из KDeclarativeMouseEvent и WheelEvent удалена поддержка QML_ELEMENT.
  • В kfilemetadata добавлена возможность автоматического определения кодировки текста. Добавлена поддержка метаданных файлов .mod, .s3m, .xm и .it. Для чтения файлов задействован класс QFile. Для ускорения определения информации о типах по имени задействована хэш-таблица.
  • В kguiaddons в Recorder добавлена возможность записи клавиатурных комбинаций, в которых используются сразу несколько клавиш-модификаторов (Shift, Ctrl, Alt, Meta).
  • В kiconthemes в KIconDialog реализован фильтр символьных пиктограмм.
  • В kio в ScopedProcessRunner улучшена поддержка systemd. В PreviewJob разрешён показ миниатюр для локальных файлов. В kfilewidget в файле состояния обеспечено сохранение данных о недавно просмотренных файлах и URL. Добавлена возможность сохранения реакции пользователя на ошибки SSL (чтобы не выводить предупреждения каждый раз). Для кнопок по умолчанию задействованы символьные пиктограммы.
  • В kirigami улучшена компоновка элементов в диалоговых окнах. Расширено применение навигации при помощи клавиатуры. В ColumnView задействована анимация смены страниц на базе OutExpo. В InlineMessage добавлен параметр для явного выставления позиции. В pushDialogLayer добавлена обработка URL.
  • В knewstuff изменён стиль диалогов с запросом о перезаписи. По умолчанию задействована сортировка элементов по числу загрузок.
  • В ktexteditor переделан диалог сохранения и задействован хинтинг для корректного выравнивания символов.
  • В kwindowsystem добавлена поддержка клавиш-модификаторов (Shift, Ctrl, Alt, Meta).
  • В qqc2-desktop-style добавлена поддержка локализации. Прекращено использование модуля ECMQMLModules. Унифицировано выравнивание и горизонтальное растяжение меток. KQuickStyleItem переведён на использование C++20 std::accumulate. Добавлены аннотации к функциям. Учтены глобальные настройки отключения анимации. Добавлена возможность использования собственных шрифтов в ToolButtons.
  • В bluez-qt добавлена поддержка передачи данных о производителе в анонсах Bluetooth LE.
  • В breeze-icons проведена чистка пиктограмм и цветовых схем, уже не используемых приложениями. Добавлены новые пиктограммы, такие как system-suspend-inhibited, system-suspend-uninhibited, suyu, elisa-symbolic, skladnik. Изменено оформление пиктограмм с символикой увеличительного стекла.
  • В kcmutils модули QML переведены на декларативную регистрацию типов. Улучшен вывод информации об ошибках в SharedQmlEngine. Объявлена устаревшей реализация кнопки контекстной помощи ContextualHelpButton, вместо которой следует использовать аналог из фреймворка Kirigami.
  • В kconfig обеспечена регистрация модуля KConfigPropertyMap для QML.
  • В KConfig, KNotifyConfig и KCoreAddons прекращён поиск модуля QtDBus на платформах Windows, macOS и Android. В KNotifyConfig и KConfigWidgets прекращено использование DBus в Windows и macOS.
  • Kcrash переведён на использование функции sigaction.
  • В kholidays обновлена база праздничных дней.
  • В kimageformats улучшена проверка заголовков и обеспечена обработка дополнительных опций для формата TGA.
  • В kjobwidgets упрощена проверка работы в окружениях на базе протокола X11.
  • В kquickcharts обеспечена генерация набора шейдеров GLSL по умолчанию.
  • В kstatusnotifieritem улучшена активация связанных окон в окружениях на базе протокола Wayland.
  • В ksvg добавлена поддержка загрузки SVG-изображений из файлов QRC.
  • В syntax-highlighting подсветка классов Qt адаптирована для Qt 6, а подсветка сценариев Cmake адаптирована для CMake 3.29. Добавлена поддержка синтаксиса GPRbuild.

Из изменений, внесённых за последнюю неделю в KDE, отмечается реализация поддержки технологии Explicit Sync, позволяющей приложениям информировать композитный менеджер на базе протокола Wayland о готовности вывода кадра на экран, что позволяет добиться снижения задержек и избавиться от появления артефактов при выводе графики. Explicit Sync решает проблемы с нарушением вывода и подвисаниями на системах с GPU NVIDIA и включённой поддержкой Wayland.

Интерфейс текстового редактора KWrite переведён с традиционного меню на использование меню "гамбургер":

  1. OpenNews: Инцидент с темой оформления KDE, удаляющей пользовательские файлы
  2. OpenNews: Корректирующий выпуск KDE Plasma 6.0.1
  3. OpenNews: Доступна мобильная платформа KDE Plasma Mobile 6
  4. OpenNews: Релиз KDE 6.0
  5. OpenNews: Увидел свет KDE Frameworks 5
Обсуждение (76 +33) | Тип: Программы |
·13.04.2024 Выпуск Cambalache 0.90, инструмента для разработки GTK-интерфейсов (18 +1)
  Опубликован релиз проекта Cambalache 0.90, развивающего инструмент быстрой разработки интерфейсов для GTK 3 и GTK 4, использующий парадигму MVC и философию первостепенного значения модели данных. В отличие от Glade в Cambalache предоставляется поддержка ведения нескольких интерфейсов пользователя в одном проекте. Код написан на Python и поставляется под лицензией LGPLv2.1. Для установки доступен пакет в формате flatpak.

Cambalache не зависит от GtkBuilder и GObject, но предоставляет модель данных, соответствующую системе типов GObject. Модель данных может импортировать и экспортировать разом несколько интерфейсов, поддерживает объекты, свойства и сигналы GtkBuilder, предоставляет стек отката операций (Undo / Redo) и возможность сжатия истории команд. Для генерации модели данных из gir-файлов предоставляется утилита cambalache-db, а для генерации классов GObject из таблиц модели данных - утилита db-codegen.

Интерфейс может генерироваться на базе GTK 3 и GTK 4, в зависимости от определённой в проекте версии. Для обеспечения поддержки разных веток GTK формирование рабочей области осуществляется с привлечением бэкенда Broadway, позволяющего отрисовывать вывод библиотеки GTK в окне web-браузера. Основной процесс Cambalache предоставляет обвязку на базе WebKit WebView, в которой при помощи Broadway транслируется вывод из процесса Merengue, который непосредственно занимается отрисовкой интерфейса, создаваемого пользователем.

В новой версии осуществлён перевод интерфейса пользователя Cambalache на библиотеку GTK 4. Каталог виджетов обновлён для GNOME SDK 46. Расширены возможности, связанные с привязкой действий к элементам контекстного меню и переводом всплывающих подсказок к кнопкам. Присвоение номера 0.90 после версий 0.1x объясняется приближением к готовности выпустить релиз Cambalache 1.0.

  1. OpenNews: Выпуск Cambalache 0.10, инструмента для разработки GTK-интерфейсов
  2. OpenNews: Представлен Cambalache, новый инструмент разработки GTK-интерфейсов
  3. OpenNews: Завершено портирование GIMP на GTK3
  4. OpenNews: В GTK добавлены новые движки отрисовки для OpenGL и Vulkan
  5. OpenNews: Доступен графический тулкит GTK 4.14 с новыми движками для OpenGL и Vulkan
Обсуждение (18 +1) | Тип: Программы |
Следующая страница (раньше) >>



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

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