The OpenNET Project / Index page

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

·27.01 Создатель systemd и лидер LXC ушли из Microsoft и основали компанию Amutable (11 +2)
  Леннарт Поттеринг, Кристиан Браунер и Крис Кюль, до последнего времени работавшие в Microsoft, объявили о создании компании Amutable. Компания зарегистрирована в Германии и в качестве своей миссии упоминает обеспечение криптографически верифицируемой целостности Linux-систем. Детали планируют озвучить на конференции FOSDEM. Пока упоминается только, что развиваемые компанией технологии связаны с верифицированной загрузкой Linux, обеспечением целостности процесса сборки и сохранением заслуживающего доверия состояния во время работы.

Руководителем компании (CEO) назначен Крис Кюль (Chris Kühl), основатель поглощённой Microsoft компании Kinvolk, развивавшей дистрибутив Flatcar Container Linux (форк CoreOS Container Linux) и открытые cloud-native решения для Kubernetes. Техническим директором стал Кристиан Браунер (Christian Brauner), мэйнтейнер подсистемы VFS в ядре Linux, лидер проектов LXC и Incus (форк LXD), один из сопровождающих glibc и участник разработки systemd. Пост главного инженера (Chief Engineer) занял Леннарт Поттеринг (Lennart Poettering), создавший такие проекты, как Avahi (реализация протокола ZeroConf), звуковой сервер PulseAudio и системный менеджер systemd.

В новую компанию также перешли 7 инженеров, участвующих в таких открытых проектах, как systemd, ядро Linux, Kubernetes, runc, LXC, Incus и containerd, а также имеющих опыт сборки как традиционных дистрибутивов (Debian, Fedora/CentOS, SUSE, Ubuntu), так и атомарно обновляемых систем (Flatcar Container Linux, ParticleOS, Ubuntu Core).

  1. Главная ссылка к новости
  2. OpenNews: Леннарт Поттеринг ушёл из Red Hat и трудоустроился в Microsoft
  3. OpenNews: Леннарт Поттеринг предложил модернизировать разбивку загрузочных разделов
  4. OpenNews: Леннарт Поттеринг предложил новую архитектуру верифицированной загрузки Linux
  5. OpenNews: Проект Linux Containers представил атомарно обновляемый дистрибутив IncusOS
  6. OpenNews: Форк LXD будет развиваться под эгидой сообщества Linux Containers
Обсуждение (11 +2) | Тип: К сведению |


·27.01 Проект Xfce анонсировал композитный сервер Xfwl4, использующий Wayland и Rust (24 +1)
  Команда разработчиков среды рабочего стола Xfce объявила о начале разработки нового композитного сервера Xfwl4, использующего протокол Wayland. В Xfwl4 решено не использовать кодовую базу ныне применяемого оконного менеджера xfwm4 и развивать проект с нуля на языке Rust, используя библиотеку Smithay. Проект находится на начальной стадии разработки, первый тестовый выпуск ожидается в середине 2026 года. Код Xfwl4 распространяется под лицензией GPLv3.

В Xfwl4 намерены реализовать всю имеющуюся в xfwm4 функциональность, вплоть до возможности использования существующих настроек xfconf и интерфейса конфигурации, но с учётом специфики использования Wayland вместо X11. Из расширенных функций отмечается существенная переработка логики запуска сеансов, реализация Wayland-протокола xdg-session-management и поддержка запуска X11-приложений при помощи XWayland.

В качестве причины создания нового композитного сервера упоминается неудачная попытка реализации одновременной поддержки X11 и Wayland в существующей кодовой базе оконного менеджера xfwm4, который изначально был спроектирован с учётом тесной интеграции протокола X11, что затрудняло отделение общей логики управления окнами от специфики X11.

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

Xfwl4 решено развивать поверх библиотеки Smithay, предоставляющей реализацию почти всех официальных расширений протокола Wayland, а также протоколов wlroots и KDE. Smithay применяется в таких проектах, как Cosmic и Niri. По аналогии с wlroots библиотека Smithay предоставляет высокоуровневые абстракции, но при этом позволяет вмешиваться в работу низкоуровневых систем и адаптировать под свои потребности методы вывода графики, работу с устройствами ввода, поведение Wayland-протоколов и обработку задач, связанных с построением рабочего стола. Язык Rust выбран, как затрудняющий совершение ошибок при работе с памятью и снижающий вероятность проблем, приводящих к аварийному завершению работы.

  1. Главная ссылка к новости
  2. OpenNews: Релиз среды рабочего стола Xfce 4.20 c частичной поддержкой Wayland
  3. OpenNews: Предположительно 14 млн человек пользуются средой рабочего стола Xfce
  4. OpenNews: Проект Xfce обновил планы, связанные с поддержкой Wayland
  5. OpenNews: Используемый в Xfce оконный менеджер xfwm4 портирован для работы с Wayland
  6. OpenNews: Выпуск файлового менеджера Thunar 4.17.0, развиваемого проектом Xfce
Обсуждение (24 +1) | Тип: Программы | Интересно


·27.01 Выпуск открытого игрового движка Godot 4.6 (57 +15)
  Представлен релиз свободного игрового движка Godot 4.6, подходящего для создания 2D- и 3D-игр. Движок поддерживает простой для изучения язык задания игровой логики, графическую среду для проектирования игр, систему развёртывания игр в один клик, возможности анимации и симуляции физических процессов, встроенный отладчик и систему выявления узких мест в производительности. Код игрового движка, среды проектирования игр и сопутствующих средств разработки (физический движок, звуковой сервер, бэкенды 2D/3D рендеринга и т.п.) распространяется под лицензией MIT.

Исходные тексты движка были открыты в 2014 году студией OKAM, после десяти лет развития проприетарного продукта профессионального уровня, который использовался для создания и публикации многих игр для PC, игровых консолей и мобильных устройств. Движком поддерживаются все популярные стационарные и мобильные платформы (Linux, Windows, macOS, Wii, Nintendo 3DS, PlayStation 3, PS Vita, Android, iOS, BBX), а также разработка игр для Web. Готовые для запуска бинарные сборки сформированы для Linux, Android, Windows и macOS.

Основные изменения в Godot 4.6 (1, 2, 3):

  • В редакторе предложена по умолчанию новая тема оформления "Modern", примечательная современным внешним видом, более контрастным выделением информации для повышения читаемости, оптимизацией отступов между элементами и применением цветовой схемы в серых тонах. Для пользователей привыкших к старому оформлению доступна опция для возвращения классической темы.
  • В редакторе унифицирована работа с панелями. Нижние панели и большинство dock-панелей теперь являются плавающими и могут открепляться. Панели можно перемещать в режиме drag&drop в различные части интерфейса.
  • Для новых 3D-проектов по умолчанию задействован движок симуляции физических процессов JoltPhysics, который уже используется в играх класса AAA, таких как Death Stranding 2.
  • Добавлена новая система обратной кинематики (IK, inverse kinematic), позволяющая создавать более реалистичную анимацию. Добавлены новые модификаторы и ограничители (constraint), позволяющие контролировать поворот и угловую скорость сочленений для исключения нежелательных движений. Задаваемые ограничения можно привязывать к 3D-узлам, например, чтобы рука персонажа тянулась и хваталась за оружие. Добавлен новый модификатор IKModifier3D, созданный на основе скелетного модификатора SkeletonModifier3D. Для использования доступны детерминированные решатели (solver) TwoBoneIK3D и SplineIK3D, а также итеративные решатели FABRIK3D, CCDIK3D и JacobianIK3D. Модульная архитектура IK-фреймворка позволяет комбинировать его с другими модификаторами и ограничителями для тонкой настройки процедурной анимации прямо в движке.

  • Полностью переделана система SSR (Screen Space Reflection), отвечающая за визуализацию материалов с отражающей поверхностью, таких как металл, вода и стекло. Новая реализация отличается достижением более высокой реалистичности, повышением производительности и добавлением двух режимов - full-resolution (максимальное качество) и half-resolution (более высокая производительность).

  • Реализованы уникальные внутренние идентификаторы узлов (Node ID), сохраняемые в файлах сцены и не меняющиеся после реорганизации сцены, изменении иерархии элементов, перемещении или переименовании узлов.
  • Добавлена библиотека libgodot, позволяющая встраивать Godot Engine в собственные приложения вместо его запуска в форме отдельного процесса, что может быть полезным, например, при разработке собственных игровых редакторов. Поддерживается работа в Linux, Windows и macOS.
  • 2D-сцены, помещаемые как тайлы в TileMap (например, анимированные сундуки, лампы и факелы), теперь могут поворачиваться с шагом в 90 градусов.

  • Для приближения рабочего процесса к современным 3D-редакторам осуществлено разделение режимов выделения и преобразования. Прежний режим "Выделение" (Select) переименован в "Преобразование" (Transform), а также добавлен новый режим только для выделения, в котором можно выделять узлы без показа гизмо преобразования, что предотвращает случайные операции перемещения, поворота и масштабирования.

  • Улучшен 3D-инструмент рисования и удаления в GridMap, который переведён на алгоритм Брезенхема для интерполяции между точками, что позволяет получить более гладкие линии и ускорить создание новых уровней и воксельных карт за счёт уменьшения ручных корректировок.

  • В 3D-гизмо добавлена возможность вращения объектов с выравниванием по направлению камеры.

  • В графическом интерфейсе упрощён процесс центровки точки поворота.

  • Разделена обработка фокуса для мыши/трекпада и клавиатуры - клик мышью мышью больше не меняет фокус ввода с клавиатуры.
  • При выборе узла MarginContainer в редакторе обеспечена визуализация отступов в области просмотра.
  • Улучшена навигация между вкладками: при перемещении ресурса в режиме Drag&Drop теперь можно навести курсор на нужную вкладку и автоматически переключиться на неё без клика.

  • В панели Output для открытия файла в редакторе теперь можно кликнуть на его имя в сообщении об ошибке или предупреждении.

  • В инструмент отслеживания объектов добавлена возможность создания снапшотов ObjectDB и сравнения срезов состояния со списками существующих объектов в определённые моменты времени.
  • В диалог быстрого открытия ресурсов (Quick Open) добавлена поддержка предпросмотра выбранного ресурса в контексте имеющейся сцены.

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

  • Добавлена поддержка дельта-кодирования патчей PCK, позволяющая включать в патчи только изменившиеся части ресурсов.
  • Добавлена возможность настройки цвета светодиодных индикаторов игровых контроллеров. В будущем ожидается поддержка датчиков движения, cенсорных панелей, тактильной обратной связи, адаптивных триггеров и получения информации о контроллере.
  • За счёт оптимизации обработки RGB-текстур, которые теперь преобразуются в RGBA на GPU и используются напрямую, удалось до двух раз ускорить операции импорта сжатых текстур.
  • При рендеринге по умолчанию активирован режим смешивания "Screen" и обеспечено применение эффекта свечения (Glow) до тонирования (tonemapping). Добавлена возможность настройки параметров тонального преобразования AgX.
  • В редактор Godot XR добавлена поддержка устройств Android XR для упрощения тестирования и отладки проектов для дополненной и виртуальной реальности. Добавлена поддержка спецификации OpenXR 1.1.
  • Добавлена поддержка запуска экспортированных приложений на Android-устройствах через scrcpy для зеркалирования содержимого экрана смартфона на экран ПК.

  • При сборке проектов для Windows по умолчанию задействован Direct3D 12.

Дополнительно можно отметить продолжение разработки проекта Redot, развивающего форк Godot, созданный в ответ на жёсткую политику модерации в официальных каналах общения и непринятия разработчиками Godot суждений, расходящихся с их взглядами. Основатели Redot были намерены построить инклюзивное сообщество, в котором принимаются любые личные убеждения разработчиков, не приемлема политизация процесса разработки и основное внимание сосредоточено только на создании игр. Несколько дней назад опубликован кандидат в релизы Redot 26.1, в который перенесены многие улучшения из Godot 4.6.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск открытого игрового движка Godot 4.4
  3. OpenNews: Библиотека LibGodot для встраивания в приложения сцен, созданных для игрового движка Godot
  4. OpenNews: Обнаружено вредоносное ПО, использующее игровой движок Godot как платформу для запуска
  5. OpenNews: Проект GodotOS подготовил оболочку операционной системы на игровом движке Godot
  6. OpenNews: Выпуск игрового движка Open 3D Engine 25.10
Обсуждение (57 +15) | Тип: Программы |


·27.01 Релиз Proton 10.0-4, пакета для запуска Windows-игр в Linux (46 +24)
  Компания Valve опубликовала релиз проекта Proton 10.0-4, основанного на кодовой базе проекта Wine и нацеленного на обеспечение запуска в Linux игровых приложений, созданных для Windows и представленных в каталоге Steam. Наработки проекта распространяются под лицензией BSD.

Proton позволяет напрямую запускать в Linux-клиенте Steam игровые приложения, поставляемые только для Windows. Пакет включает в себя реализацию DirectX 8/9/10/11 (на базе пакета DXVK) и DirectX 12 (на базе vkd3d-proton), работающие через трансляцию вызовов DirectX в API Vulkan, предоставляет улучшенную поддержку игровых контроллеров и возможность использования полноэкранного режима независимо от поддерживаемых в играх разрешений экрана. Для увеличения производительности многопоточных игр поддерживаются механизмы "esync" (Eventfd Synchronization) и "futex/fsync".

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

  • Обновлена версия VKD3D-Proton 3.0b, ответвления от пакета vkd3d, созданного Valve для улучшения поддержки Direct3D 12 в Proton. Пакет vkd3d обновлён до версии 1.18.
  • Добавлена поддержка Steamworks SDK 1.63.
  • Движок Wine Mono с реализацией платформы .NET обновлён до выпуска 10.4.1.
  • Налажена работа тактильной обратной связи в контроллерах DualSense.
  • Добавлена поддержка игр:

    • Changeling VR
    • Chronology
    • Death by Scrolling
    • Distant Worlds 2
    • Drop Dead: The Cabin
    • Fellowship
    • Girls' Frontline
    • Lost Memories 3 Side Stories
    • Metal Slug: Awakening
    • Modules
    • Quantum Threshold
    • REACH
    • Ring Runner: Flight of the Sages
    • Stellar Reach
    • Summoners War: RUSH
    • Surgeon Simulator: Experience Reality
    • The Obsessive Shadow
    • Zero Caliber 2 Remastered
    • 懒人修仙传2
  • Решены проблемы в играх:
    • Adventures Of Fluzz
    • Agatha Christie: Evil Under the Sun
    • Age of Empires IV Anniversary Edition
    • AQUARIUM
    • Ara: History Untold
    • Arc Riders
    • Assassin's Creed Shadows
    • Atelier Resleriana
    • Avowed, Grounded 2
    • Black Squad
    • Blood Rush
    • CHRONO TRIGGER
    • Cladun
    • Clair Obscur: Expedition 33
    • Conquer the World
    • Crystal of Atlan
    • Dragon's Dogma Dark Arisen
    • Dungeons & Dragons Online
    • Far Cry 5
    • For Honor
    • Ghost of Tsushima DIRECTOR'S CUT
    • GodsArena Online
    • Great Circle
    • Indiana Jones
    • Indivisible
    • Killer Instinct
    • King of Bones
    • Lemma
    • Lost Planet: Extreme Condition
    • Marvel Rivals
    • Marvin's Mittens
    • Mohrta
    • Mystery Manor: Hidden Objects
    • Okayunyumu!
    • Phasmophobia
    • Revolver360 Re:Actor
    • Rigid Force Alpha
    • Rocket Jockey
    • Sackboy: A Big Adventur
    • Secrets of Grindea
    • Sword of the Stars: The Pit
    • Tekken 8
    • The Conquest of Go
    • The Outer Worlds 2
    • Trainatic
    • Transcendence
    • Ultimate Marvel vs Capcom 3
    • Wild Assault
    • Xalia

  1. Главная ссылка к новости
  2. OpenNews: Стабильный релиз Proton 10.0, пакета для запуска Windows-игр в Linux
  3. OpenNews: Новые версии Wine 10.20, Vkd3d 1.18 и vkd3d-proton 3.0
  4. OpenNews: Выпуск Wine 10.9, Wine staging 10.9 и GE-Proton 10-4
  5. OpenNews: Компания Valve опубликовала дистрибутив для игровых консолей SteamOS 3.7
  6. OpenNews: Компания Valve представила приставку Steam Machine и VR-шлем Steam Frame, поставляемые с Linux
Обсуждение (46 +24) | Тип: Программы |


·27.01 Новая версия BitTorrent-клиента Transmission 4.1.0 (169 +30)
  После трёх лет разработки опубликован релиз Transmission 4.1.0, относительно лёгкого и нетребовательного к ресурсам BitTorrent-клиента, поддерживающего разнообразные интерфейсы пользователя: GTK, Qt, native Mac, Web-интерфейс, daemon, CLI. Код написан на языке С++ и распространяется под лицензиями GPLv2 и GPLv3.

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

  • Добавлен опциональный режим последовательной загрузки, при котором блоки загружаются в порядке их следования в файле, а не хаотично, что позволяет, например, начать просмотр загружаемого видео не дожидаясь окончания его загрузки.
  • Повышена скорость загрузки при использовании протокола µTP (Micro Transport Protocol).
  • Добавлена поддержка UDP-трекеров, использующих IPv6 или смешанный стек (IPv4+IPv6).
  • Добавлена поддержка трекеров, использующих старый вариант расширения BEP-7 для работы через IPv6 с выставлением информации о дополнительных адресах через параметры "&ipv4=" и "&ipv6=".
  • Предложен новый API RPC для удалённого управления и взаимодействия фонового процесса с фронтэндами, совместимый с JSON-RPC 2.0. Поддержка старого RPC сохранена.
  • В меню и панели Qt-клиента задействованы родные для операционных систем пиктограммы - SF Symbols в macOS, Segoe Fluent в Windows 11, Segoe MDL2 в Windows 10 и имена пиктограмм, соответствующих стандарту XDG, в остальных ОС. В компактном режиме интерфейса добавлена информация о предполагаемом времени загрузки (ETA, Estimated Time of Arrival). Реализовано выделение неактивных торрентов с использованием полупрозрачности.
  • В GTK-клиенте задействован штатный диалог GTK для выбора файлов. Улучшена работа слайдеров.
  • В web-клиенте появилась поддержка добавления торрентов в режиме drag&drop. Добавлен контрастный вариант темы оформления. Повышена отзывчивость интерфейса. Добавлено контекстное меню для переименования или копирования отдельных файлов.
  • Реализована возможность использования прокси для web-соединений.
  • Решена проблема с отправкой излишних анонсов HTTP-трекерам.
  • В libtransmission проведена оптимизация для снижения нагрузки на CPU и уменьшения потребления памяти.
  • Улучшена поддержка сборки для платформы Android, используя NDK (Native Development Kit).

  1. Главная ссылка к новости
  2. OpenNews: Релиз BitTorrent-клиента Deluge 2.2
  3. OpenNews: Выпуск qBittorrent 5.1
  4. OpenNews: После пятилетнего перерыва выпущен BitTorrent-клиент rTorrent 0.10.0
  5. OpenNews: Новая версия BitTorrent-клиента Transmission 4.0.0, перешедшего с Си на Си++
Обсуждение (169 +30) | Тип: Программы |


·26.01 Выпуск редактора RAW-изображений RapidRAW 1.4.9 (48 +10)
  Опубликован выпуск RapidRAW 1.4.9, свободного редактора для проявки RAW-изображений, позиционируемого как легковесная альтернатива Adobe Lightroom. Приложение ориентировано на быструю отбраковку больших серий снимков и недеструктивное редактирование. Код проекта написан на языках Rust и TypeScript (с использованием фреймворка Tauri), интерфейс построен на React. Исходные тексты распространяются под лицензией AGPLv3. Готовые сборки доступны для Linux (Flatpak, AppImage, DEB, RPM), Windows и macOS.

Ключевые изменения в новой версии:

  • Интегрирована библиотека Lensfun для автоматической коррекции дисторсии и виньетирования на основе базы профилей объективов.
  • Представлен инструмент трансформации геометрии, позволяющий исправлять заваленный горизонт и перспективные искажения с помощью направляющих линий.
  • Переработана логика работы с локальными коррекциями. Обеспечен строгий порядок обработки составных частей маски, что устранило неоднозначность результата при сложном комбинировании форм (например, при сложении нескольких градиентов). Реализована поддержка перетаскивания (Drag-and-Drop) для изменения очерёдности слоёв, а также независимая инверсия и настройка прозрачности для каждого примитива внутри маски.
  • Добавлена система профилей экспорта: пользователи могут сохранять наборы параметров (формат файла, качество сжатия, каталог сохранения, шаблон переименования) для быстрого переключения между задачами.
  • Взаимодействие с нейросетями вынесено в отдельный модуль RapidRAW-AI-Connector. Утилита служит прослойкой между редактором и локальным сервером ComfyUI (графический интерфейс для Stable Diffusion на основе узлов), обеспечивая кэширование результатов генерации и встраивание внешних сценариев обработки (workflows).
  • Оптимизирован рендеринг ленты снимков: внедрение виртуализации списка (отрисовка в DOM только видимых элементов) решило проблему падения производительности при навигации по каталогам, содержащим тысячи фотографий.
  • Обновлён декодер метаданных и изображений. Улучшена совместимость с RAW-файлами камер Fujifilm (.RAF) и Canon (.CR3), унифицирован разбор EXIF-данных.
  • Доработана цветовая схема тёмной темы интерфейса для повышения контрастности элементов управления.

  1. Главная ссылка к новости
  2. OpenNews: Релиз программы для обработки фотографий RawTherapee 5.12
  3. OpenNews: Системы машинного обучения для синтеза изображений и подавления шумов на ночных фото
  4. OpenNews: Google опубликовал библиотеку Magritte для скрытия лиц на видео и фотографиях
  5. OpenNews: Релиз программы для обработки фотографий Darktable 5.4.0
Обсуждение (48 +10) | Автор: Аноним | Тип: Программы |


·26.01 Выпуск SVT-AV1 4.0, кодировщика для формата видео AV1 (77 +17)
  Опубликован выпуск библиотеки SVT-AV1 4.0.0 (Scalable Video Technology AV1) c реализациями кодировщика и декодировщика формата кодирования видео AV1, для ускорения которых задействованы присутствующие в процессорах x86_64 и ARM расширения для аппаратного распараллеливания вычислений. Проект создан компанией Intel в партнёрстве с Netflix с целью достижения уровня производительности, пригодного для перекодирования видео на лету и применения в сервисах, отдающих видео по запросу (VOD). В настоящее время разработка ведётся под эгидой альянса Open Media (AOMedia), курирующего развитие формата кодирования видео AV1. Ранее проект развивался в рамках проекта OpenVisualCloud, который также разрабатывает кодировщики SVT-HEVC и SVT-VP9. Код распространяется под лицензией BSD.

SVT-AV1 может быть собран для систем на базе любых архитектур, для которых имеется компилятор с поддержкой стандарта C99, но наилучшая производительность достигается на системах x86_64, для которых применяются ассемблерные оптимизации на базе инструкций SIMD (желательно наличие в CPU поддержки AVX2, но в качестве минимума достаточно и SSE2). Потребление памяти зависит от числа задействованных при кодировании процессорных ядер, регулируемых опцией "--lp". Из-за усложнения применяемых в AV1 алгоритмов, для кодирования данного формата требуется существенно больше ресурсов, чем для других форматов.

Среди изменений в новом выпуске SVT-AV1:

  • Проведена оптимизация режимов кодирования одиночных кадров и изображений в формате AVIF. Для пресетов M0-M11 при включении параметра MS-SSIM (--tune 4) отмечено повышение скорости кодирования в 5-8 раз при сохранении уровня качеста. При оценке при помощи метода BD-Rate (Bjontegaard-Delta) отмечается повышение эффективности сжатия на 5-8% при том же уровне сложности.
  • Проведена оптимизация компромиссов качество/скорость при кодировании в режиме "--rtc" (Real-Time Communications). Для пресетов M7-M11 наблюдается увеличение скорости на 5-15% при сохранении уровней качества.
  • Проведена оптимизация компромиссов качество/скорость при кодировании в режиме случайного доступа (Random Access). Для пресетов M0-M7 отмечается ускорение на 10-25% без потери качества при использовании опции "--fast-decode=1|2).
  • На системах ARM задействованы дополнительные оптимизации на базе расширений Neon и SVE2, позволившие на 5% повысить производительность кодирования потоков в низком разрешении с высокой глубиной цвета.
  • Из форка SVT-AV1-PSY, сопровождение которого прекращено, завершён перенос расширенных возможностей для режима высокого визуального качества, включаемого при использовании настроек "--tune 0" (VQ, Video Quality) для видео и "--tune 3" (IQ, Image Quality) для изображений Avif.
  • Реализован метод психовизуального моделирования AC Bias, улучшающий сохранение детализации и шума от сенсора камеры.
  • Улучшена поддержка S-кадров (Switch Frames), применяемых при переключении между потоками разного качества. Добавлена поддержка S-кадров в опциях настройки квантования (QP, Quantization Parameter) и порядка декодирования.
  • Добавлена возможность применения режимов IQ (Image Quality) и MS-SSIM (Multi-Scale Structural Similarity Index) при кодировании изображений и отдельных кадров.
  • Внесены изменения в API, среди прочего нарушающие обратную совместимость.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск SVT-AV1 3.1.0, кодировщика для формата видео AV1
  3. OpenNews: Разработчики кодека AV1 представили формат IAMF для объёмного звука
  4. OpenNews: Уязвимость в эталонных реализациях кодеков AV1 и VP8/VP9
  5. OpenNews: Кодек AV2 продемонстрировал снижение битрейта на 30% при уровне качества AV1
Обсуждение (77 +17) | Тип: Программы |


·26.01 Представлен смартфон NexPhone, совмещающий Android, Debian и Windows (152 +23)
  Компания Nex Computer, в прошлом развивавшая dock-станцию NexDock для превращения Android-смартфона в ноутбук, анонсировала смартфон NexPhone. Компания вынашивала идею создания данного устройства с 2012 года и смогла реализовать проект только спустя 14 лет. В новом устройстве попытались совместить традиционный смартфон с переносной рабочей станцией, позволяющей получить полноценную среду рабочего стола при подключении смартфона к монитору, клавиатуре и мыши. NexPhone поставляется с платформой Android и примечателен наличием возможности запуска рабочих столов на базе Debian и Windows 11, которые доступны не только при подключении монитора, но и через штатный 6.58-дюймовый экран.

При подключении к стационарному монитору доступны три варианта интерфейса: появившийся в ветке Android 16 многооконный интерфейс для больших экранов с панелью задач в стиле ChromeOS, а также среды рабочего стола, построенные с использованием Debian GNU/Linux и Windows 11.

Графическая среда на базе Debian вызывается непосредственно из интерфейса Android как отдельное приложение, поддерживает аппаратное ускорение графики. На сайте проекта не упоминается как именно организован запуск Debian, вероятно подобная функциональность основана на проектах типа Lindroid и DebDroid или добавленной в Android 16 QPR2 возможности для запуска виртуальных машин с Linux и приложении Linux Terminal.

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

NexPhone поставляется в защищённом пыле- и водонепроницаемом корпусе, соответствующем степеням защиты MIL-STD-810H, IP68 и IP69K. Устройство оснащено 6.58-дюймовым экраном (1080×2403, 120Hz), 12 ГБ ОЗУ, 256GB Flash + карта microSD, восьмиядерным процессором Qualcomm QCM6490, GPU Qualcomm Adreno 643, Wi-Fi 6E, Bluetooth 5.2 LE, NFC, GPS/A-GPS, BeiDou, Galileo, GLONASS, Dual SIM, USB-C 3.1. Имеется три камеры: основная Sony IMX787 64MP (также применяется в Google Pixel 8 Pro и Pixel 9 Pro Fold), широкоугольная Samsung S5K3L6XX 13MP и селфи-камера Samsung S5K3J1SX 10MP. Аккумулятор 5000mAh Li-ion с поддержкой проводной 18W и беспроводной зарядки. Размер 173×82.6×13.1 мм, вес 256 гр.

Для подключения монитора, клавиатуры, мыши и периферийных устройств в комплект входит USB-C хаб с переходником для HDMI. Также поддерживается использование беспроводных клавиатуры и мыши по Bluetooth с прямым подключением монитора через порт USB-C. В настоящее время проект находится на стадии запуска массового производства. Поступление NexPhone в продажу запланировано на третий квартал 2026 года по цене $549.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск платформы Android 16 QPR2 с поддержкой запуска графических Linux-приложений
  3. OpenNews: Google подтвердил грядущее слияние Android и Chrome OS
  4. OpenNews: В Android встроена возможность запуска графических Linux-приложений
  5. OpenNews: Компания Canonical представила редакцию Ubuntu для смартфонов
  6. OpenNews: Опубликован postmarketOS 25.12, Linux-дистрибутив для смартфонов и мобильных устройств
Обсуждение (152 +23) | Тип: К сведению |


·25.01 Выпуск сервисного менеджера s6-rc 0.6 (89 +20)
  Доступен выпуск сервисного менеджера s6-rc 0.6.0.0, предназначенного для управления запуском скриптов инициализации и сервисов. Поддерживается отслеживание дерева зависимостей и автоматический запуск или завершение сервисов для достижения указанного состояния. Инструментарий s6-rc может применяться как в системах инициализации, так и для организации запуска произвольных сервисов в привязке к событиям, отражающим изменение состояния системы. Система поддерживает скрипты инициализации, совместимые с sysv-init, и может импортировать информацию о зависимостях из sysv-rc или OpenRC. Код написан на языке Си и распространяется под лицензией ISC.

Сервисный менеджер s6-rc включает набор утилит для запуска и остановки длительно функционирующих процессов (демонов) или сразу завершаемых скриптов инициализации. В процессе работы обеспечивается параллельный запуск не пересекающихся между собой сервисов и гарантируется повторяющаяся при разных запусках последовательность выполнения скриптов. Все изменения состояния обрабатываются с учётом зависимостей, например, при запуске какого-то сервиса будут автоматически запущены необходимые для его работы зависимости, а при остановке - остановлены и зависимые сервисы.

В отличие от других сервисных менеджеров s6-rc поддерживает упреждающее (в offline-режиме) построение графа зависимостей для имеющегося набора сервисов, что позволяет выполнить ресурсоёмкий анализ зависимостей отдельно, а не во время загрузки или изменения состояния. При этом система не является монолитной и разбита на серию отдельных и заменяемых модулей, каждый из которых в соответствии с философией Unix решает только определённую задачу. Проект s6-rc придерживается философии минимализма (не содержит ничего лишнего) и потребляет минимум ресурсов.

Вместо уровней запуска (runlevel) в s6-rc предлагается концепция наборов (bundles), позволяющая группировать сервисы по произвольным признакам и решаемым задачам. Для повышения эффективности работы используется скомпилированная БД зависимостей, создаваемая утилитой s6-rc-compile на основе содержимого каталогов с файлами для запуска/остановки сервисов. Для разбора и манипуляций с БД предлагаются утилиты s6-rc-db и s6-rc-update.

В новой версии добавлены коллекции утилит s6-rc-repo-* и s6-rc-set-* для управления репозиториями с определениями сервисов; обеспечена поддержка разделяемых библиотек на платформе macOS; добавлена опция "--bootdb" для настройки на этапе сборки загрузочной базы данных с информацией о сервисах и зависимостями между ними; в утилиту s6-rc-compile добавлена опция "-v2".

Проектом также развиваются сопутствующие пакеты, дополняющие s6-rc:

  • s6 - утилиты для отслеживания работы процессов и управления процессами (аналог daemontools и runit). Поддерживаются такие возможности как перезапуск процессов после их аварийного завершения, запуск обработчика (активация сервиса) при обращении к сетевому порту, журналирование событий (замена syslogd) и контролируемое предоставление дополнительных привилегий (аналог sudo).
  • s6-linux-init - реализация init-процесса для операционных систем на базе ядра Linux, применяемого для создания систем инициализации, в которых для управления сервисами и скриптами используются пакеты s6 и s6-rc.
  • s6-networking - набор утилит для создания сетевых сервисов, похожий на ucspi.
  • s6-frontend - обвязка для воссоздания функциональности daemontools и runit поверх s6.
  • s6-portable-utils - набор типовых Unix-утилит, таких как cut, chmod, ls, sort и grep, оптимизированных для потребления минимальных ресурсов и поставляемых под лицензией ISC.
  • s6-linux-utils - набор утилит, привязанных к Linux, таких как chroot, freeramdisk, logwatch, mount и swapon.
  • mdevd - менеджер событий (аналог udevd), предназначенный для обработки горячего подключения устройств. По конфигурации mdevd совместим с mdev из состава Busybox.
  • bcnm - сетевой конфигуратор с возможностями для настройки Wi-Fi на стороне клиента.
  • execline - язык написания сценариев.
  • skalibs - библиотека для создания безопасных системных приложений на языке Си.
  • s6-dns - набор клиентских библиотек и утилит, заменяющих типовые DNS-утилиты из BIND и djbdns.
  • dnsfunnel - перенаправляет локальные DNS-запросы на внешний сервер (DNS forwarder).
  • shibari - простой DNS-сервер.
  • tipidee - HTTP-сервер с поддержкой HTTP/1.1.

  1. Главная ссылка к новости
  2. OpenNews: Релиз T2 SDE 25.10, платформы для создания дистрибутивов
  3. OpenNews: Опубликован системный менеджер GNU Shepherd 1.0.0
  4. OpenNews: Уязвимость в системе инициализации finit, позволяющая войти в систему без пароля
  5. OpenNews: Первый выпуск минималистичной системы инициализации Nitro
  6. OpenNews: Выпуск системы инициализации SysVinit 3.15. Переход проекта с GitHub на CodeBerg
Обсуждение (89 +20) | Тип: Программы |


·25.01 Представлена ФС DAXFS, похожая на ramfs и tmpfs, но работающая в обход страничного кэша (34 +13)
  Конг Ванг (Cong Wang), сопровождающий подсистему управления трафиком (TC, Traffic Control) в ядре Linux и развивающий проект Multikernel, представил в списке разработчиков ядра Linux новую файловую систему DAXFS. DAXFS использует для хранения данных оперативную память, работает в режиме только для чтения и напоминает по функциональности урезанные файловые системы ramfs и tmpfs. Модуль ядра с реализацией DAXFS, а также утилита mkdaxfs для создания ФС опубликованы под лицензией GPLv2. После рецензирования рассматривается возможность интеграции DAXFS в основной состав ядра.

Ключевой особенностью новой ФС является задействование подсистемы DAX (Direct Access) для работы в обход страничного кэша и прямого обращения к разделяемой физической памяти. В ramfs и tmpfs содержимое сохраняется в страничном кэше, что при использовании одной ФС в нескольких контейнерах или ядрах, запущенных при помощи технологии Multikernel, приводит к размещению нескольких копий данных в физической памяти. Наполнение ramfs и tmpfs также требует выполнения лишних операций копирования без возможности выполнить маппинг существующей области памяти.

Прямой доступ к памяти в DAXFS позволяет исключить лишние операции копирования и организовать работу в обход традиционного стека ввода/вывода на базе блочных устройств и механизмов буферизации, а также избавиться от фрагментации выделения памяти при совместном использовании одной ФС в разных контейнерах и multikernel-ядрах. DAXFS работает в режиме Zero-Copy и напрямую отдаёт содержимое файлов из памяти без лишнего дублирования данных в страничном кэше и с возможностью маппинга непрерывных областей физической памяти в каждый экземпляр контейнера или ядра. Дополнительно поддерживается использование API dma-buf для использования памяти, экспортируемой GPU, FPGA/SmartNIC или CXL-устройствами.

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

Ключевой областью использования DAXFS называется применение совместно с технологией Multikernel, позволяющей на одном физическом компьютере выполнять несколько независимых экземпляров ядра Linux, которые имеют прямой доступ к аппаратным ресурсам и могут использоваться для запуска нескольких изолированных системных окружений.

DAXFS также может применяться для организации совместного доступа нескольких контейнеров или ядер к базовому системному образу, размещённому в разделяемой памяти; снижению накладных расходов при обращении к информации в памяти аппаратных ускорителей; организации обращения к памяти с нескольких хостов без сетевого ввода-вывода или к постоянной памяти, используя устройства на базе шины CXL (Compute Express Link).

  1. Главная ссылка к новости
  2. OpenNews: Представлен Multikernel, механизм для одновременного выполнения нескольких ядер Linux
  3. OpenNews: Выпуск отказоустойчивой файловой системы LittleFS 2.10
  4. OpenNews: Открыт код распределённой файловой системы 3FS, используемой в DeepSeek
  5. OpenNews: Открыт код распределённой файловой системы TernFS
  6. OpenNews: Компания Huawei предложила новую ФС EROFS для ядра Linux
Обсуждение (34 +13) | Тип: Программы | Интересно


·25.01 Выпуск компилятора языка D 2.112 (135 +12)
  Опубликован релиз DMD 2.112, эталонного компилятора для языка D. Код компилятора распространяется под свободной лицензией BSL (Boost Software License). Поддерживаются системы Linux, Windows, macOS и FreeBSD.

Язык D использует статическую типизацию, обладает синтаксисом, схожим с C/C++, и обеспечивает производительность компилируемых языков. Язык D также заимствует некоторые возможности динамических языков, полезные для повышения эффективности разработки и обеспечения безопасности. Например, имеется поддержка: ассоциативных массивов, косвенного определения типов, автоматического управления памятью, средств параллельного программирования, шаблонов, компонентов для метапрограммирования. Опционально доступен сборщик мусора. В программах на языке D можно использовать библиотеки на языке C, а также некоторые библиотеки на C++ и Objective-C.

Среди изменений в выпуске 2.112:

  • Операции над Ассоциативным массивом (хэшмап) реализованы через шаблоны.
  • Битовые поля включены в язык и теперь не нужно использовать отдельный "-preview=bitfields".
  • Висящие операторы "else", указанные без выделения блока фигурными скобками, теперь будет выдавать ошибку вместо предупреждения:
    
       int i, j;
       if (i)
           if (j)
               return 1;
           else    // Error: else is dangling, add { } after condition `if (i)`
               return 2;
    
    
  • Добавлен новый ключ "-extI" для указания внешних путей импорта, который аналогичен параметру пути импорта (-I), за исключением указания на то, что найденный с его помощью модуль находится вне компилируемого в данный момент исполняемого файла. В Windows он используется, когда параметр переопределения dllimport установлен на любое значение, кроме "none", чтобы принудительно импортировать символы внешнего модуля с помощью DllImport.
  • Добавлены модули для C-файлов. Подобно расширению "__import", ключевое слово "__module" переносит объявление модулей из языка D в язык C. Это особенно полезно, когда необходимо импортировать несколько C-файлов с одинаковым именем (например, hello/utils.c и world/utils.c), поскольку оба файла должны быть импортированы с помощью import utils, когда они указаны в командной строке, что приводит к конфликтам.
    
    
       --hello/utils.c:
    
       #if __IMPORTC__
       __module hello.utils;
       #endif
    
       int sqr(int x) { return x * x; }
    
       --world/utils.c:
    
       #if __IMPORTC__
       __module world.utils;
       #endif
    
       int max(int a, int b) { return a > b ? a : b; }
    
       --app.d:
    
       import hello.utils;
       import world.utils;
    
       static assert(sqr(3) == 9);
       static assert(max(3, 5) == 5);
    
    
  • Объявлено устаревшим неявное преобразование целых чисел в присваивании значений типа "int op= float". Это сделано для предотвращения потенциальных ошибок, когда присваивание "op=" неявно обрезает правую часть выражения от ненулевого значения до нуля.
    
       uint a;
       float b = 0.1;
       a += b; // Deprecation: `uint += float` is performing truncating conversion
    
  • В runtime добавлены несколько новых шаблонных реализаций.
  • Исправлены ошибки связанные с недокументированным изменением в ABI macOS 15.4.
  • С-макросы теперь преобразуются в шаблоны при работе "ImportC":
    
       import core.sys.posix.stdlib;
       import core.sys.posix.unistd;
    
       extern(C) int main()
       {
           int status, pid = vfork();
           if (pid == 0)
           {
               // ...
               return 0;
           }
    
           waitpid(pid, &status, 0);
           if (WIFEXITED(status))
           {
               // ...
           }
           return 0;
       }
    
  • В стандартной библиотеке реализована функция "lazyCache", которая предоставляет механизм кэширования диапазонов с отложенной оценкой. В отличие от cache, который немедленно оценивает элементы диапазона во время его создания, lazyCache откладывает оценку до тех пор, пока элементы не будут явно запрошены.
    
       auto result = iota(-4, 5).map!(a => tuple(a, expensiveComputation(a)))().lazyCache();
       // No computations performed at this point
    
       auto firstElement = result.front;
       // First element is now evaluated
    
  • Улучшена обратная совместимость "getrandom()" на старых версиях Linux и других системах.
  • "std.uni" обновлена до поддержки Unicode 17.
  • В "std.uuid" добавлена поддержка uuid v7 .
  • Новый API для "std.conv", где появились три функции "writeText", "writeWText" и "writeDText".
  • В пакетный менеджер dub добавлена опция "-dest и ключ frameworks.
    
       --Было:
    
       lflags "-framework" "Cocoa"
    
       --Теперь можно:
       frameworks "Cocoa" "OpenGL"
    

Дополнительно можно отметить разработку ряда интересных проектов на языке D:

  • В области разработки игр (GameDev) были следующие обновления: в dvn, движок для создания визуальных новелл, добавлены примеры использования. В порт движка Godot добавлена экспериментальная поддержка экспорта в Web. В Steam выпущена игра The Art of Reflection, реализованная с использованием технологий D и DirectX на собственном движке.
  • В области веб-разработки развивается легковесный планировщик файберов photon, который показал высокие результаты в тесте производительности TechEmpower и вошёл в топ 10 результатов по нескольким тестам (Plaintest, JSON). Данный движок был интегрирован в популярный веб-фреймворк Vibe.D, в результате чего удалось добиться прироста производительности без изменения кода веб-приложений.
  • После анонса о начале разработки нового сборщика мусора на конференции Dconf (видео1, видео2), данное обновление вошло в новый релиз. Новый GC также можно попробовать установить в качестве отдельного пакета. На данный момент поддерживается архитектура x86_64 для OC Linux и Windows. Продолжается работа над поддержкой macOS и других архитектур.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск компилятора языка D 2.111
  3. OpenNews: Выпуск компилятора языка D 2.110
  4. OpenNews: Выпуск компилятора языка D 2.100
  5. OpenNews: Для языка D представлен runtime для программирования микроконтроллеров
Обсуждение (135 +12) | Автор: D_dev | Тип: Программы |


·25.01 Обновление графического редактора GIMP 3.0.8 (110 +18)
  Представлен выпуск графического редактора GIMP 3.0.8. Готовые сборки опубликованы для Linux (AppImage, Snap и Flatpak для архитектур x86 и ARM64), macOS и Windows. Основное внимание при подготовке версии 3.0.8 уделено исправлению ошибок и регрессивных изменений. Новая функциональность будет предложена в ветке GIMP 3.2, в которой появится поддержка слоёв-ссылок (Link layer) и векторных слоёв (Vector layer), а также расширеной поддержки цветовой модели CMYK и возможностей для управления цветом.

Среди изменений в GIMP 3.0.8:

  • Из ветки 3.2 бэкпортированы оптимизации для повышения производительности загрузки шрифтов, которые позволили сократить время запуска GIMP при наличии большого числа шрифтов в системе и решить проблемы с отрисовкой шрифтов в изображениях, когда изображение в формате XCF загружено до того как загрузились все шрифты.
  • В дополнение к команде gimp-console-3.0 реализована поддержка флага "--no-interface" для выполнения операций в консольном режиме. Добавлена информация о флаге "--show-debug-menu".
  • Решены проблемы, возникавшие при экспорте WEBP-изображений, загрузке цветовых профилей в Windows, экспорте XCF-файлов в режиме совместимости с GIMP 2.10, импорте формата SVG.
  • Устранено аварийное завершение при использовании фильтра Equalize с некоторыми изображениями.
  • Исправлен ошибочный вывод всплывающей панели поиска.
  • Решены проблемы с отображением текстур в панелях Navigation и Selection Editor при тёмном режиме оформления, выравниванием кнопок в инструменте Transform и показом неприменимых операций заливки слоёв.
  • В режиме недеструктивного редактирования налажено копирование и вставка слоёв и изображений с прикреплёнными фильтрами.
  • Обеспечено корректное масштабирование пиктограмм в заголовках диалогов при изменении размера пиктограмм в настройках.
  • Продолжена работа по задействованию в интерфейсе виджета Spin Scale.
  • Улучшено определение каталога с настройками и плагинами при поставке в формате flatpak.
  • Из ветки 3.2 перенесены изменения API для плагинов, касающиеся функций gimp_cairo_surface_get_buffer(), gimp_config_set_xcf_version() и gimp_config_get_xcf_version().
  • Улучшена поддержка macOS, среди прочего решены проблемы с выставлением фокуса при выводе диалогов и налажено открытие файлов EPS и PS.
  • Обновлена версия цветового движка babl 0.1.120.
  • Устранено 8 уязвимостей. Три уязвиости приводят к переполнению буфера или целочисленному переполнению при разборе изображений в форматах PSP, LBM и PNM. Потенциально данные уязвимости могут быть эксплуатированы для выполнения кода при открытии в GIMP специально оформленных файлов. Информация о 5 уязвимостях (1, 2, 3, 4, 5) пока не раскрыта.

  1. Главная ссылка к новости
  2. OpenNews: Второй кандидат в релизы графического редактора GIMP 3.2
  3. OpenNews: Первый кандидат в релизы графического редактора GIMP 3.2
  4. OpenNews: Обновление графического редактора GIMP 3.0.6
  5. OpenNews: Релиз графического редактора GIMP 3.0.0
Обсуждение (110 +18) | Тип: Программы |


·24.01 Выпуск стандартных Си-библиотек Glibc 2.43 и newlib 4.6.0 (163 +21)
  После шести месяцев разработки опубликован релиз системной библиотеки GNU C Library 2.43 (glibc), которая полностью следует требованиям стандартов ISO C23 и POSIX.1-2024. В создании нового выпуска приняли участие 69 разработчиков.

Из реализованных в Glibc 2.43 улучшений можно отметить:

  • Добавлена экспериментальная возможность сборки компилятором Clang, которая пока доступна только для платформ aarch64-linux-gnu и x86_64-linux-gnu при использовании runtime, совместимого с libgcc. Для сборки Glibc требуется как минимум версия Clang 18.
  • Для систем Linux добавлена функция mseal(), позволяющая процессам выставлять блокировку на изменение определённых частей своего адресного пространства.
  • Для систем Linux добавлена функция openat2(), в отличие от функции openat() поддерживающая набор дополнительных флагов для ограничения разрешения файлового пути (запрет пересечения точек монтирования, символических ссылок, magic-ссылок (/proc/PID/fd), компонентов "../").
  • Добавлены функции free_sized, free_aligned_sized, memset_explicit и memalignment, появившиеся в стандарте C23.
  • В соответствии со стандартом C23 вызов assert определён как макрос с переменным числом аргументов, поддерживающий выражения с запятой внутри инициализатора.
  • В соответствии со стандартом C23 функции bsearch, memchr, strchr, strpbrk, strrchr, strstr, wcschr, wcspbrk, wcsrchr, wcsstr и wmemchr, возвращающие указатели на входные массивы, переопределены как макросы, возвращающие указатель на тип с квалификатором "const", если входной аргумент является указателем на тип с квалификатором "const".
  • В заголовочный файл math.h добавлены определения типов long_double_t, _Float32_t, _Float64_t и _Float128_t, появившихся в стандарте C23.
  • Добавлены опциональные режимы исчисления времени TIME_MONOTONIC (постоянно увеличивающееся время, не зависящее от изменения системных часов), TIME_ACTIVE и TIME_THREAD_ACTIVE (время активного выполнения процесса или потока) для использования в функции timespec_get.
  • Из проекта CORE-MATH перенесены оптимизированные варианты математических функций acosh, asinh, atanh, erf, erfc, lgamma и tgamma.
  • Добавлены оптимизированные реализации функций fma, fmaf, remainder, remaindef, frexpf, frexp, frexpl (binary128) и frexpl (intel96).
  • Повышена производительность математических функций acosf, acoshf, asinhf, atan2f, atanhf, coshf, fmodf, lgammaf/lgammaf_r, log10f, remainderf, sinhf, sqrtf, tgammaf, y0/j0, y1/j1 и yn/jn, благодаря удалению кода обработки ошибок SVID (вызов пользовательской функции matherr при ошибке) для новых сборок (для сохранения совместимости с уже собранными программами они оставлены в режиме compat).
  • На системах x86 добавлена поддержка процессоров Intel Nova Lake и Wildcat Lake.
  • На системах AArch64 в функции malloc по умолчанию включена поддержка больших страниц памяти (transparent huge pages) размером 2MB (параметр ibc.malloc.hugetlb теперь выставлен в 1). В функции clone() реализовано отключение состояния ZA (Z-Array) на CPU с поддержкой расширения SME (Scalable Matrix Extension).
  • Для систем AArch64, поддерживающих расширение BTI (Branch Target Identification), добавлена настройка glibc.cpu.aarch64_bti, позволяющая принудительно активировать BTI для всех исполняемых файлов и библиотек. BTI обеспечивает блокирование переходов на произвольные участки кода для противодействия созданию гаджетов в эксплоитах, использующих приёмы возвратно-ориентированного программирования.
  • На системах AArch64, поддерживающих одно из расширений для защиты ветвления (Branch Target Identification или Guarded Control Stack), разрешено использование переменной окружения "LD_DEBUG=security" для вывода компоновщиком предупреждений при загрузке исполняемых файлов и библиотек, не поддерживающих данные расширения.
  • Для систем AArch64 добавлены векторные варианты функций exp2m1, exp10m1, log10p1, log2p1 и rsqrt.
  • Для архитектуры RISC-V добавлена оптимизированная реализация функции memset, использующая расширение RVV (RISC-V Vector).
  • В тестовом наборе значительно расширена проверка многопоточности и функций scanf, strerror и strsignal.
  • Данные кодировок, информация о типах символов и таблицы транслитерации обновлены для поддержки спецификации Unicode 17.0.0.
  • В реализации функциональности LD_PROFILE прекращено использование каталога по умолчанию (/var/tmp) для записи данных профилирования. Для сохранения подобных данных теперь требуется явное определение для них каталога через переменную окружения LD_PROFILE_OUTPUT.
  • Устранены уязвимости:



Кроме того, после года разработки проект Cygwin опубликовал выпуск стандартной Си-библиотеки newlib 4.6.0, развиваемой инженерами из компании Red Hat. Библиотека нацелена на предоставление компактной реализации стандартной Си-библиотеки (libc), пригодной для использования на встраиваемых системах c небольшим объёмом постоянного хранилища и оперативной памяти. Код проекта написан на языке Си и распространяется под лицензией LGPLv2.

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

  • Расширена поддержка спецификации POSIX.1-2024.
  • Повышена производительность функций memcpy, mempcpy и memmove.
  • Добавлена опция "--enable-newlib-hw-misaligned-access".
  • Проведена оптимизация архитектуры RISC-V функций серии mem* и str*.
  • Переработан код обработки локалей, который избавлен от глобальной переменной global_locale_string в пользу отдельных переменных locale_string для каждого объекта локали с типом locale_t.
  • Добавлена поддержка новой платформы m68k-atari-elf.
  • Из FreeBSD-библиотеки gdtoa перенесён код strtorQ.c, который задействован для реализации поддержки 128-разрядного типа "long double" в функции strtold.
  • Данные кодировок обновлены до Unicode 17.0.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск системной библиотеки Glibc 2.42 и набора утилит GNU Binutils 2.45
  3. OpenNews: Уязвимость в Glibc, затрагивающая статически собранные suid-файлы с dlopen
  4. OpenNews: Выпуск стандартной Си-библиотеки PicoLibc 1.8.9
  5. OpenNews: Выпуск стандартной Си-библиотеки Musl 1.2.5
  6. OpenNews: Опубликована стандартная Си-библиотека newlib 4.5.0
Обсуждение (163 +21) | Тип: Программы |


·24.01 В инфраструктуре OSS Fuzz реализована поддержка проектов на языке Lua (9 +15)
  В инфраструктуру для непрерывного фаззинг-тестирования OSS-Fuzz добавлена возможность тестирования проектов, написанных на языке Lua, в дополнение к ранее поддерживаемым языкам C/C++, Go, Swift, Rust, Python, JavaScript и Java. Интеграция реализована с помощью проекта luzer, развивающего специализированный инструментарий для фаззинг-тестирования кода на языке Lua и расширений для Lua, написанных на C/C++.

Проект использует библиотеку libFuzzer и может применяться совместно с инструментами AddressSanitizer, MemorySanitizer, LeakSanitizer, ThreadSanitizer и Undefined Behavior Sanitizer, позволяющих на основе выявленных в процессе фаззинг-тестирования проблем, определять наличие типовых уязвимостей, вызванных переполнениями буфера, целочисленными переполнениями, обращением к неинициализированным и освобождённым областям, утечками памяти, разыменованием указателей и проблемами с установкой блокировок. Код проекта доступен под лицензией ISC.

В процессе работы luzer перебирает возможные комбинации входных данных и генерирует отчёт о всех выявленных сбоях и неперехваченных исключениях. Например, при проверке в luzer библиотеки разбора формата MsgPack antirez/lua-cmsgpack было выявлено, что данные с большим количеством массивов могут привести к переполнению стека.

В рамках проекта lunapark инструментарий luzer применяется для тестирования PUC Rio Lua, трассирующего компилятора LuaJIT, высокопроизводительной СУБД и сервера приложений Tarantool, а также для тестирования сторонних Lua-модулей.

Разработчики открытых проектов могут добавить свои репозитории для тестирования, подготовив шаблон фаззинг-тестирования и отправив специальную заявку через pull-запрос. При обнаружении ошибок, разработчикам автоматически отправляется уведомление и создаётся приватная заявка на исправление (чтобы исключить преждевременной утечки сведений об уязвимостях, тикет создаётся в системе отслеживания ошибок с ограниченным доступом). OSS Fuzz отслеживает состояние исправления ошибки и сам закрывает тикет, если он перестал воспроизводиться. Информация о проблеме становится публично доступной спустя 7 дней после исправления или спустя 90 дней с момента выявления ошибки, если проблема остаётся не исправленной.

  1. Главная ссылка к новости
  2. OpenNews: Google представил OSS-Fuzz, сервис для анализа безопасности открытого ПО
  3. OpenNews: Google открыл код ClusterFuzz, платформы для выявления ошибок и уязвимостей
  4. OpenNews: Представлен инструментарий Cascade, позволивший выявить 29 уязвимостей в процессорах RISC-V
  5. OpenNews: Оценка эффективности применения MiraclePtr для предотвращения уязвимостей в Chrome
  6. OpenNews: Методы безопасной работы с памятью позволили существенно снизить число уязвимостей в Android
Обсуждение (9 +15) | Автор: sergeyb | Тип: К сведению |


·24.01 Доступен пакетный менеджер GNU Guix 1.5 и дистрибутив на его основе (137 +17)
  После более трёх лет разработки состоялся релиз пакетного менеджера GNU Guix 1.5 и построенного на его основе дистрибутива GNU/Linux - Guix System. В дальнейшем новые релизы GNU Guix решено выпускать раз в год. Для загрузки сформированы образы для установки на USB Flash (972 МБ) и использования в системах виртуализации (1.4 ГБ). Поддерживается работа на архитектурах i686, x86_64, Power9, armv7, riscv64 и aarch64.

Дистрибутив допускает установку как в качестве обособленной ОС в системах виртуализации, в контейнерах и на обычном оборудовании, так и запуск в уже установленных дистрибутивах GNU/Linux, выступая в роли платформы для развёртывания приложений. Пользователю предоставляются такие функции, как учёт зависимостей, воспроизводимая сборка, работа без root, откат на прошлые версии в случае проблем, управление конфигурацией и клонирование окружений (создание точной копии программного окружения на других компьютерах).

Основные новшества:

  • Добавлена экспериментальная поддержка ядра GNU Hurd (x86_64-gnu). В инсталлятор добавлена опция для использования Hurd вместо ядра Linux.
  • Добавлена поддержка архитектуры RISC-V (riscv64-linux).
  • Сеанс GNOME обновлён до выпуска GNOME 46 (в прошлом релизе поставлялся GNOME 42) и переведён на использование по умолчанию Wayland. Расширена модульность сервиса gnome-desktop-service-type, в котором теперь можно настраивать список устанавливаемых по умолчанию приложений GNOME.
  • Добавлен новый тип сервисов plasma-desktop-service-type для формирования окружения со средой рабочего стола KDE Plasma 6.5.
  • Предоставлена возможность запуска фонового процесса Guix без привилегий root. При установке в дистрибутивах, отличных Guix System, по умолчанию задействован режим работы без прав root (rootless). В существующих установках данный режим можно активировать выставлением "(privileged? #f)" в guix-configuration. Режим реализован с использованием пространства имён идентификаторов пользователей (user namespace) и профилей AppArmor.
  • В команду "guix graph" добавлены бэкенды для GraphML и CycloneDX JSON, что позволяет использовать её для генерации полноценных SBOM (Software Bill of Material).
  • В команду "guix shell" добавлены опции "--nesting" для использования Guix в контейнере и "--emulate-fhs" для запуска приложений с использованием структуры файловой системы, соответствующей спецификации FHS (Filesystem Hierarchy Standard).
  • В команду "guix pack" добавлены бэкенды для создания пакетов в форматах RPM и AppImages, которые можно использовать в других дистрибутивах без Guix.
  • Реализована команда "guix locate" для поиска пакетов, в которых присутствует указанный файл.
  • Задействован новый выпуск системы инициализации GNU Shepherd 1.0, в котором появилась поддержка сервисов, периодически запускающих команды или код на языке Scheme по указанному расписанию. Добавлена возможность перезапуска ядра Linux с использованием механизма kexec. Реализованы новые сервисы log-rotation (ротация и удаление устаревших логов), system-log (замена syslogd), timer (запуск команд в указанное время) и transient (запуска команд в фоне). В Guix сервисы system-log и log-rotation задействованы вместо syslogd и Rottlog.
  • Реализована полная поддержка раскрутки (bootstrap) компиляторов Zig и Mono из исходного кода.
  • Набор "setuid-programs" заменён на "privileged-programs" в спецификации "operating-system" (вместо suid-флага для получения привилегий задействованы Linux capabilities).
  • Добавлено около 40 новых системных сервисов, среди которых Forgejo Runner, RabbitMQ, iwd и dhcpcd.
  • Обновлены версии программ в 8911 пакетах, добавлено 12525 новых пакетов. Среди прочего обновлены версии GNOME 46.10, KDE Plasma 6.5, linux-libre 6.17.12, MATE 1.28.2, Xfce 4.20.0, lxde 0.99.3, xorg-server 21.1.21, GCC 15.2.0, LLVM 21.1.8, GIMP 3.0.4, glibc 2.41, go 1.25.3, Librewolf 140, icecat 140.6.0-gnu1 (firefox), icedtea 3.19.0, inkscape 1.3.2, julia 1.8.5, libreoffice 25.2.5.2, openjdk 25, perl 5.36.0, python 3.11.14, racket 8.18, rust 1.85.1, r 4.5.2, sbcl 2.5.8.

Напомним, что пакетный менеджер GNU Guix основан на наработках проекта Nix и кроме типичных функций управления пакетами поддерживает такие возможности, как выполнение транзакционных обновлений, возможность отката обновлений, работа без получения привилегий суперпользователя, поддержка привязанных к отдельным пользователям профилей, возможность одновременной установки нескольких версий одной программы, средства уборки мусора (выявление и удаление неиспользуемых версий пакетов). Для определения сценариев сборки приложений и правил формирования пакетов предлагается использовать специализированный высокоуровневый предметно-ориентированный язык и компоненты Guile Scheme API, позволяющие выполнять все операции по управлению пакетами на функциональном языке программирования Scheme.

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

Сборочное окружение для пакетов формируется в виде контейнера, содержащего все необходимые для работы приложений компоненты, что позволяет сформировать набор пакетов, способный работать без оглядки на состав базового системного окружения дистрибутива, в котором Guix используется в качестве надстройки. Между пакетами Guix возможно определение зависимостей, при этом для поиска наличия уже установленных зависимостей используется сканирование хэшей-идентификаторов в директории установленных пакетов. Пакеты устанавливаются в отдельное дерево директорий или поддиректорию в каталоге пользователя, что позволяет обеспечить его параллельное сосуществование с другими пакетными менеджерами и обеспечить поддержку различных дистрибутивов. Например, пакет устанавливается как /nix/store/452a4978f3b1b428064a2b64a0c6f41-firefox-147.0.1/, где "452a49..." является уникальным идентификатором пакета, используемым для контроля зависимостей.

Дистрибутив включает только свободные компоненты и поставляется с ядром GNU Linux-Libre, очищенным от несвободных элементов бинарных прошивок. Для сборки применяется GCC 15.2. В качестве системы инициализации используется сервисный менеджер GNU Shepherd (бывший dmd), развиваемый как альтернатива SysV-init с поддержкой зависимостей. Управляющий демон и утилиты Shepherd написаны на языке Guile (одна из реализаций языка Scheme), который также используется и для определения параметров запуска сервисов. Базовый образ поддерживает работу в консольном режиме, но для установки подготовлено 29932 готовых пакетов, среди которых и компоненты графического стека, оконные и композитные менеджеры, рабочие столы GNOME, KDE и Xfce, а также подборка графических приложений.

  1. Главная ссылка к новости
  2. OpenNews: Доступен дистрибутив NixOS 25.11, использующий пакетный менеджер Nix
  3. OpenNews: Уязвимости в пакетных менеджерах Nix, Lix и Guix
  4. OpenNews: Проект Guix переходит на Git-хостинг Codeberg
  5. OpenNews: Опубликован системный менеджер GNU Shepherd 1.0.0
  6. OpenNews: Доступен пакетный менеджер GNU Guix 1.4 и дистрибутив на его основе
Обсуждение (137 +17) | Тип: Программы |


Следующая страница (раньше) >>



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

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