Команда CLE (Community Linux Engineering Team), учреждённая в компании Red Hat для решения технических задач проектов Fedora и CentOS, таких как предоставление инфраструктуры, подготовка релизов и обеспечение качества, объявила о готовности к использованию платформы совместной разработки Fedora Forge, построенной на базе проекта Forgejo. Проект Fedora Forge создан для замены собственной платформы Pagure, применяемой в Fedora для совместной работы c кодом и метаданными пакетов. От Pagure решено отказаться, так как данная платформа требует больших ресурсов для сопровождения, находится в состоянии стагнации и не получила широкого распространения вне Fedora.
Командам, участвующим в разработке Fedora Linux, дано время на переход с pagure.io на Fedora Forge до июня 2026 года. После конференции Flock 2026, которая состоится 14-16 июня, содержимое pagure.io будет переведено в архивный режим, допускающий только чтение. После этого до релиза Fedora 46 в 2027 году планируют вывести из обихода и все остальные сервисы, использующие Pagure, включая репозитории с исходным кодом пакетов на src.fedoraproject.org.
В Fedora Forge будет выполняться работа, связанная с:
поддержанием инфраструктуры проекта (управление конфигурацией, разработка инструментов и скриптов развёртывания);
подготовкой релизов и поддержанием пакетов (инструменты, утилиты и шаблоны для сборки, формирования и распространения релизов Fedora);
организацией работы проекта (подготовка документации и спецификаций, совместная работа команд);
Разработка специфичных для Fedora приложений, таких как Fedora Badges, Bodhi и fedmsg.
В Fedora Forge запрещено развивать личные проекты, напрямую не связанные с Fedora. Fedora Forge также не должен применяться в качестве основной площадки для разработки сторонних проектов, даже если пакеты с ними распространяются в репозиториях Fedora.
Отмечается, что в Forgejo пока реализована не вся функциональность
Pagure. Например, отсутствуют необходимые средства для ведения конфиденциальных обсуждений в публичных репозиториях (приватные issue для обсуждения исправления уязвимостей до раскрытия информации). В настоящее время представители Fedora работают с разработчиками Forgejo над реализацией недостающих функций.
Платформа Forgejo является форком проекта Gitea, который в свою очередь ответвился от платформы Gogs. Ключевыми особенностями Forgejo является низкое потребление ресурсов (может использоваться в дешёвых VPS) и простой процесс установки. Предоставляются типовые возможности работы с проектами, такие как управление задачами, отслеживание проблем (issues), pull-запросы, wiki, средства для координации групп разработчиков, подготовка релизов, автоматизация размещения пакетов в репозиториях, управление правами доступа, сопряжение с платформами непрерывной интеграции, поиск кода, аутентификация через LDAP и OAuth, доступ к репозиторию по протоколам SSH и HTTP/HTTPS, подключение web-хуков для интеграции со Slack, Discord и другими сервисами, поддержка Git-хуков и Git LFS, инструменты для миграции и зеркалирования репозиториев.
На конференции KubeCon Europe издание The Register взяло интервью у Грега Кроа-Хартмана (Greg Kroah-Hartman), отвечающего за поддержку стабильной и "staging" веток ядра Linux, занимающего пост мэйнтейнера в 16 подсистемах ядра. В интервью обсуждается отношение Грега к отчётам об ошибках, которые находит AI. AI в ядре уже используется при рецензировании изменений в сетевой подсистеме, eBPF и DRM, плюс для проверки отправляемых изменений недавно интегрировали инструмент Sashiko от Google.
Некоторые из высказываний Грега:
"Несколько месяцев назад мы получали то, что мы называли AI-мусор - сгенерированные через AI отчёты о проблемах с безопасностью, которые были явно неверными или низкого качества. Это было даже забавно. Мы не особо об этом беспокоились... Месяц назад произошло нечто, и ситуация кардинально изменилась. Теперь у нас появляются корректные отчёты."
"Подобная ситуация наблюдается не только в Linux, - все открытые проекты получают подобные отчёты, составленные с помощью AI, но теперь они качественные и валидные. Команды, отвечающие за безопасность в крупнейших открытых проектах, в ходе неформального общения между собой фиксируют одну и ту же тенденцию."
На вопрос, чем это вызвано, Грег ответил: "Мы не знаем. Похоже, никто не знает. Либо многие инструменты стали намного лучше, либо люди начали говорить: 'Эй, давайте разберёмся с этим'. Похоже, это касается множества разных групп и компаний. Что касается ядра, мы с этим справимся. Наша команда стала намного больше, она очень разбросана по миру, и наш рост - это реальность, и он не замедляется. Это мелочи, ничего серьёзного, но помощь в этом вопросе может потребоваться для всех открытых проектов. У небольших проектов гораздо меньше возможностей справиться с внезапно возросшим потоком отчётов об ошибках и уязвимостях, сгенерированных AI, в которых упоминаются настоящие ошибки, а не мусор".
Грег рассказал, что когда он попросил AI найти ошибки из предложенного набора изменений - тот нашёл 60 и предоставил патчи для их исправления. Только треть найденных ошибок являлись таковыми, а из патчей лишь 2/3 оказались верными решениями, не требующими доработки, но всё это было далеко не бесполезно. По словам Грега, мэйнтенеры не могут это игнорировать, тем более, что результаты работы AI становятся всё лучше. Для пометки патчей, созданных с использованием AI, добавили тег "Co-developed:". При этом, несмотря на отдельные попытки применения AI для создания новой функциональности, в основном AI в ядре пока используется при рецензировании изменений.
Одним из самых заметных преимуществ AI называется сокращение времени обработки патчей. Когда AI-ассистент выявляет очевидные проблемы, авторы патчей получают отзыв задолго до того, как реальный мэйнтейнер успел бы прочитать патч: "Если я вижу, что система реагирует на что-то, она даёт отзыв автору быстрее, чем это смог бы сделать мэйнтейнер, и это здорово. У нас и так есть ряд ботов, которые проверяют патчи. Если я замечаю, что они выдают ошибку, я сразу понимаю, что мне как мэйнтейнеру даже не нужно на это смотреть. А разработчик думает 'О, я могу завтра сделать другую версию', что помогает немного улучшить обратную связь".
Опубликован выпуск растрового графического редактора Brushshe 2.5.0 (кодовое имя "Xalapa"). Редактор поддерживает работу с наклейками, рамками и эффектами, сохранение в разные форматы, использование собственных палитр, подключение дополнений, смену тем оформления и навигацию по галерее рисунков. Код проекта написан на Python с использованием графического тулкита CustomTkinter и распространяется под лицензией MPL 2.0. Ресурсы, документация и некоторые файлы поставляются под лицензией CC0 1.0. Готовые сборки сформированы для Windows и Linux (.deb и .rpm). Программа доступна на украинском, русском и английском языках, чуть меньше поддержка немецкого, хинди и итальянского.
В новой версии:
Реализована поддержка отображения имён файлов в галерее и их переименования.
Энтузиасты написали генераторы на C++, которые базируются на do-нотации, которая тоже сделана на макросах. Реализация открыта под лицензией MIT.
// Без do-нотации
auto result = ::bind(mx, [&](auto&& x) {
return ::bind(my, [&](auto&& y) {
return make_value(x + y);
});
});
// С do-нотацией
auto result = DO(
LET x IS(mx);
LET y IS(my);
return make_value(x + y);
);
Пример кода с генераторами:
// Allocation free generators
constexpr auto my_generator() {
return GENERATOR((int i), (.i = 0), // или GENERATOR_LOOPHOLES
YIELD(42);
WHILE(i != 10) (
YIELD(i);
++i;
)
return end<int, 16>();
);
}
static_assert(std::ranges::equal(my_generator(),
std::array{42, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9}));
int main() {
auto gen = my_generator();
gen.i = 3;
std::println("{}", gen); // prints [42, 3, 4, 5, 6, 7, 8, 9]
/*
for (auto i : gen) {
std::println("{}", i);
}
*/
}
С генераторами определяется функция bind и база в виде generator_continuation. Каждый bind теперь работает лениво, а не вычисляет всё сразу. В коде предоставлены 2 версии кода - на базе виртуальных функций и на базе аналога std::variant через технику Type Loopholes для большей производительности.
После года разработки опубликован релиз открытой системы параметрического 3D-моделирования FreeCAD 1.1, которая отличается гибкими возможностями кастомизации и наращивания функциональности через подключение дополнений. Интерфейс построен с использованием библиотеки Qt. Дополнения могут создаваться на языке Python. Поддерживается сохранение и загрузка моделей в различных форматах, в том числе в STEP, IGES и STL. Код FreeCAD распространяется под лицензией LGPLv2, в качестве моделирующего ядра используется Open CASCADE. Готовые сборки подготовлены для Linux (AppImage), macOS и Windows.
FreeCAD позволяет, меняя параметры модели, обыгрывать различные варианты проектирования и оценивать работу в различные моменты разработки модели. Проект может выступать свободной заменой коммерческим САПР, таким как CATIA, Solid Edge и SolidWorks. Несмотря на то, что основным назначением FreeCAD является машиностроение и разработка дизайна новых продуктов, система может использоваться и в других областях, таких как архитектурное проектирование.
В интерфейсе пользователя реализована поддержка трёхточечного освещения для повышения качества отрисовки 3D-моделей.
В систему настройки добавлена панель поиска.
Добавлен новый редактор тем оформления и расширены возможности для изменения таблицы стилей.
Расширены возможности диалога для добавления свойств, в котором появилась поддержка вычисляемых выражений, перечислений и единиц измерения. В редакторе свойств улучшено автодополнение табуляцией, работа с наборами переменных (VarSet) и масштабирование окна.
В окружении для создания заготовок (Part Design) реализованы опции для использования прозрачности и подсветки эскиза при предпросмотре для оценки скрытых поверхностей и структуры детали в объёме. Добавлены интерактивные элементы управления, позволяющие манипулировать параметрами в окне 3D-виде, перетаскивая элементы мышью. Переработана панель задач в инструменте проектирования отверстий (Hole Tool), в которой обеспечено скрытые нерелевантных и показ только актуальных элементов для текущей конфигурации.
Добавлен инструмент "Уточнить выбор" Clarify Selection, позволяющий уточнить выделение скрытых или внутренних элементов. Активация инструмента производится горячей клавишей, через контекстное меню или при удержании левой кнопки мыши, после чего геометрия модели становится прозрачной и показывается меню выбора перекрывающихся объектов.
В окружении CAM, применяемом для создания машинных инструкций к станкам с ЧПУ из 3D-моделей, предложена новая система управления инструментами. Компонент
CAM Tool Management заменён на пакет Better Tool Library, ранее развиваемый в форме внешнего плагина.
В CAM также добавлены новые интерфейсы для редактирования и выбора тулбитов (ToolBits), появилась возможность импорта из симулятора G-Code Camotics, предоставлены утилиты командной строки для импорта и экспорта, реализован режим Drag & Drop и возможность использования буфера обмена, добавлен браузер форм (shape browser), встроена функция поиска инструментов, для хранения библиотек инструментов задействован формат JSON.
Добавлены инструменты для создания опорных элементов (Core Datum), применяемых при проектировании моделей, таких как системы координат, опорные точки, вспомогательные плоскости и линии.
Полностью переработан инструмент трансформации (Transform). Добавлена возможность выравнивания перетаскивателя (Dragger) по центру масс объекта, а также учёта локальной (U, V, W) или глобальной системы координат. Добавлена функция перемещения объекта на целевую позицию в документе.
Расширены возможности окружений для проектирования работы сборных многокомпонентных конструкций (Assembly), моделирования строительных объектов (BIM, Building Information Modelling), двумерного рисования (Draft), анализа воздействий (FEM, Finite Element Module), работы с материалами (Material), создания деталей (Part), эскизов 2D-фигур (Sketcher), ведения электронных таблиц с параметрами моделей (Spreadsheet), 2D-моделирования и создания 2D-проекций 3D-моделей (TechDraw).
Улучшена работа в системах на базе Wayland.
Одновременно опубликован выпуск параметрической системы 2D- и 3D-моделирования SolveSpace 3.2. Система поддерживает различные методы моделирования 3D-деталей (выдавливанием, вращением и т.п.), может имитировать плоские и пространственные связи, использовать плоскую и объёмную геометрию при создании чертежей, экспортировать модели в двумерных и объёмных форматах, таких как PDF, SVG, HPGL, STEP, DXF и STL. Код проекта написан на языке С++ и распространяется под лицензией GPLv3.
В SolveSpace 3.2 в дополнение к интерфейсу на GTK предложен опциональный фронтэнд для Linux на базе Qt6. Добавлена экспериментальная версия, способная работать через Web, реализованная при помощи инструментария Emscripten. Предоставлена возможность применения ограничений к граням, а также расширен спектр объектов, к которым могут применяться ограничения. Изменено поведение при работе с эскизами. Добавлена поддержка кернинга в шрифтах TrueType.
Дополнительно можно отметить развитие параметрической системы 3D-проектирования Dune 3D, оптимизированной для создания корпусов электронных устройств, изготавливаемых при помощи 3D-печати. Система поддерживает создание и ограничение эскизов в двумерном и трёхмерном пространстве, добавление скосов и скруглений на рёбра 3D-модели, импорт эталонных моделей в формате STEP, экспорт в форматах STEP, STL и DXF. Код проекта написан на языках С/C++ с интерфейсом на GTK и распространяется под лицензией GPLv3.
После двух лет разработки доступен выпуск платформы LibreQoS 2.0, предназначенной для организации справедливого распределения имеющейся полосы пропускания между пользователями и снижения негативных эффектов, возникающих из-за промежуточной буферизации пакетов (Bufferbloat) сетевым оборудованием. Платформа может использоваться провайдерами или администраторами частных сетей для оптимизации потоков трафика, поддержания задержек на минимальном уровне и распределения полосы пропускания с учётом приоритетов. Код проекта написан на языках Си, JavaScript, Python и Rust, и распространяется под лицензией GPLv2. Платформа устанавливается на сервер, размещаемый между граничным маршрутизатором провайдера и базовым маршрутизатором локальной сети.
LibreQoS позволяет снизить задержки и повысить надёжность работы интерактивных сеансов, игр, платформ online-обучения, VoIP-трафика и видеовызовов в условиях большой нагрузки на сеть, например, из-за загрузки некоторыми пользователями фильмов в несколько потоков или активности любителей torrent-ов (LibreQoS решает проблему с заиканием видеовызовов, когда кто-то в той же сети начинает загружать 4K-видео). Применение LibreQoS снижает доступную одному пользователю пиковую пропускную способность, но зато даёт возможность значительно уменьшить задержки и справедливо распределить ресурсы между всеми участниками обмена данных.
LibreQoS базируется на применении системы управления сетевыми очередями CAKE (Common Applications Kept Enhanced) и планировщика пакетов fq_codel (Fair Queuing Controlled Delay), а также использует eBPF и XDP (Express Data Path) для выполнения обработчиков на уровне сетевого драйвера с возможностью прямого доступа к DMA-буферу пакетов. Алгоритм CAKE спроектирован для замены и упрощения сложной иерархии дисциплин обработки очередей пакетов, способен выжать максимально возможную пропускную способность и предоставить минимальный уровень задержек даже на самых медленных каналах связи с провайдером и при работе на маломощных устройствах.
Проект также предоставляет средства для отслеживания задержек между отправкой запроса и получением ответа (RTT, round-trip time), в привязке к отдельным пользователям, точкам доступа и сайтам. Для анализа состояния разработан web-интерфейс, дающий возможность наглядно оценить трафик в сети, проследить изменение нагрузки и задержек, выявить наиболее активных пользователей. Возможно создание гибких иерархических схем ограничения трафика и интеграция с
UISP и Splynx для маппинга топологий и клиентов.
Выпуск LibreQoS 2.0 посвящён Дэйву Тахту (Dave Taht), скоропостижно скончавшемуся год назад в возрасте 59 лет. Дэйв руководил разработкой LibreQoS и был сооснователем проекта Bufferbloat, создателем дистрибутива CeroWrt и автором многочисленных RFC, связанных с обработкой сетевых очередей.
Модернизирован web-интерфейс оператора, в котором расширены возможности диагностики сетевых проблем и добавлены новые отчёты и графики.
В режиме древовидного просмотра (Tree view) обеспечено отображение иерархической структуры сети, улучшена обработка топологии и детализировано поведение узлов.
Добавлены новые инструменты диагностики проблем, позволяющие анализировать состояние сетевых очередей, отслеживать потоки трафика, наглядно представлять трафик в виде диаграмм Санки, выполнять мониторинг повторных передач пакетов (retransmit) и визуализировать циклы приёма-передачи TCP (RTT).
Добавлены новые режимы визуализации карт и потоков трафика, добавлен анализатор автономных систем (ASN Analysis).
Улучшена интеграции с системами организации взаимодействия с клиентами (CRM) и системами управления сетью (NMS). Добавлена поддержка интеграции с UISP,
Splynx,
Netzur,
VISP,
WISPGate,
Powercode и
Sonar.
Улучшены возможности для ограничения пропускной способности (shaping), связанные с управлениям очередями и использованием TreeGuard и StormGuard для предотвращения перегрузок.
Улучшены мониторинг состояния планировщика и информирование о критических проблемах.
После двух с половиной лет разработки опубликованы релизы растрового графического редактора Krita 5.3.0 и 6.0.0, предназначенного для художников и иллюстраторов. Редактор поддерживает многослойную обработку изображений, предоставляет средства для работы с различными цветовыми моделями и предлагает инструменты для цифровой живописи, создания скетчей и формирования текстур. Для установки подготовлены самодостаточные образы в формате AppImage для Linux, APK-пакеты для Android, а также бинарные сборки для macOS и Windows. Проект написан на языке С++ с использованием библиотеки Qt и распространяется под лицензией GPLv3.
Ветки Krita 5.3 и 6.0 развивались параллельно, построены на одной кодовой базе и выпущены одновременно. Базовая функциональность у веток 5.3 и 6.0 совпадает, различия сводятся к переводу ветки 6.0 на использование библиотеки Qt6, в то время как в Krita 5.3 продолжает применяться Qt5. Помимо портирования на Qt6 ветка Krita 6.0 примечательна предоставлением поддержки Wayland, дробного масштабирования, 10-разрядного представления цвета и отображения содержимого с расширенным динамическим диапазоном (HDR), реализованного при помощи Wayland-протокола color-management-v1.
Полностью переработана и значительно расширена функциональность для работы с текстом. Появилась возможность редактирования текста прямо на холсте, используя привычную навигацию по тексту при помощи мыши и клавиатуры. Реализован отдельный режим типографики для редактирования на холсте свойств текста, таких как размер шрифта, методы выравнивания, высота строки и позиция каждого глифа, без вызова отдельного диалога с настройками.
Добавлена возможность автоматического обтекания текстом одной или нескольких векторных фигур, а также заполнения текстом определённой области и выравнивания текста по заданному контуру.
Реализована отдельная панель для настройки стиля текста, предоставляющая более 50 редактируемых свойств. Имеется возможность одновременного редактирования нескольких текстовых объектов, настройки видимости свойств и автоскрытия неиспользуемых свойств. Расширена панель выбора шрифтов, в которой обеспечено индексирование имеющихся шрифтов в системе, добавлена пометка шрифтов тегами, расширен поиск и обеспечен вывод примеров и названий с учётом выбранного языка. Добавлена возможность сохранения преднастроек стилей для быстрого применения сохранённых наборов свойств к текущему тексту.
Реализована полная поддержка формата OpenType и добавлена палитра грифов, позволяющая выбирать альтернативные глифы, доступные для текущего шрифта.
Добавлен инструмент редактирования комиксов, позволяющий быстро разделять и объединять векторные объекты для упрощения создания раскладки картинок в стиле комиксов.
В инструменте трансформации реализована возможность поворота рамки вокруг выделенной области независимо от ориентации пикселей для упрощения трансформации объектов, расположенных под углом. Заметно ускорена работа режима пластической деформации (liquify).
Реализовано адаптивное изменение степени сглаживания в зависимости от скорости рисования (при медленном движении для компенсации дрожания руки сглаживание усиливается, а при быстром - уменьшается). Добавлен отдельный режим стабилизации пиксельной графики, позволяющий повысить чёткость при рисовании однопиксельными линиями.
Реализована плавающая панель с инструментами для работы с выделенной областью, появляющаяся при наличии выделения.
Добавлена возможность рисования одновременно несколькими кистями с фиксированным интервалом между ними.
В инструмент заливки добавлена опция "Размыть выделение" ("Close Gaps"), позволяющая автоматически перекрывать небольшие разрывы в линиях при определении области заливки.
Добавлен фильтр "Выбрать цвет" ("Propagate Colors"), который расширяет цвета в прозрачные области, т.е. заполняет окружающие объект прозрачные пиксели соседними цветами, расширяя непрозрачную область на указанное расстояние. В дополнение добавлен фильтр "Сбросить прозрачность" ("Reset Transparent"), который принудительно обнуляет остаточные цветовые каналы для всех полностью прозрачных пикселей.
Добавлен фильтр "Наложение цвета" ("Fast Color Overlay Mask") для быстрой тонировки эскизов заданным цветом.
В командах трансформации зеркало, поворот, масштабирование, сдвиг и смещение реализована возможность работы одновременно с несколькими выделенными слоями.
В панели записи (Recorder Docker) реализован многопоточный захват кадров, позволяющий выполнять запись видео в реальном времени.
Реализована возможность добавлять панели (Docker) во всплывающую палитру и вплывающие окна с инструментами.
Для кистей реализован режим мягкого текстурирования, при котором сила нажатия контролирует интенсивность прорисовки текстуры кисти.
Обеспечено автоматическое инвертирование текстуры кисти в режиме ластика.
В редакторе кистей появился режим углов для кривых, позволяющий использовать заострённые переходы между кривыми.
Добавлен режим наложения "Marker", предотвращающий накопление непрозрачности при нанесении нескольких штрихов.
Добавлена поддержка форматов файлов Radiance RGBE (.hdr), многослойных и многостраничных изображений JPEG-XL, PSD-изображений с фигурами, текстом, направляющими и векторными масками.
Сообщество Pine64, занимающееся созданием открытых устройств, анонсировало модель умных часов PineTime Pro, поставляемую с развиваемой проектом открытой прошивкой InfiniTime. В отличие от старой модели PineTime, новый вариант построен на базе собственного чипа и оснащён AMOLED-экраном, GPS, кнопкой-крутилкой (Digital Crown) на боковой грани и новыми датчиками, включая датчик для оценки уровня кислорода в крови. Для продления времени автономной работы реализована возможность отключения питания отдельных компонентов.
Компания NVIDIA опубликовала выпуск проприетарного драйвера NVIDIA 595.58.03 (первый стабильный выпуск новой ветки 595). Драйвер доступен для Linux (ARM64, x86_64), FreeBSD (x86_64) и Solaris (x86_64). NVIDIA 595.x стала тринадцатой стабильной веткой после открытия компанией NVIDIA компонентов, работающих на уровне ядра. Исходные тексты модулей ядра nvidia.ko, nvidia-drm.ko (Direct Rendering Manager), nvidia-modeset.ko и nvidia-uvm.ko (Unified Video Memory) из новой ветки NVIDIA, а также используемые в них общие компоненты, не привязанные к операционной системе, размещены на GitHub. Прошивки и используемые в пространстве пользователя библиотеки, такие как стеки CUDA, OpenGL и Vulkan, остаются проприетарными.
Добавлена поддержка интерфейса DRI3 1.2 (Direct Rendering Infrastructure).
В модуле nvidia.ko реализована поддержка самостоятельного управления сохранением содержимого видеопамяти при переходе системы в спящий режим, активируемая при использовании настройки "NVreg_UseKernelSuspendNotifiers=1".
В модуле nvidia-drm.ko по умолчанию активирован параметр "modeset=1", включающий технологию DRM Kernel Mode-Setting (KMS) для переключения режимов экрана на уровне ядра.
Внесены изменения, позволяющие nvidia-smi сбрасывать (reset) состояние GPU при модуле nvidia-drm, загруженном с параметром modeset=1 и отсутствии других процессов, использующих GPU.
Добавлен новый профиль приложений CudaNoStablePerfLimit, позволяющий программам, использующим CUDA, переходить в режим энергосбережения P0 PState.
Добавлена поддержка отката на использование системной памяти в случае недостаточного размера свободной видеопамяти для исключения подвисаний композитных серверов на базе Wayland.
Состоялся первый публичный релиз проекта VitruvianOS, c 2019 года развивающего операционную систему на базе Debian/Linux, которая переносит простоту, отзывчивость и гибкость BeOS на современное оборудование и реализует API-совместимость с приложениями, созданными для Haiku и BeOS. Код проекта написан на языке С++ и распространяется под лицензией GPLv2.
VitruvianOS использует компоненты пользовательского пространства из ОС Haiku. Вместо привычных оконных менеджеров X11 и композитных серверов Wayland для вывода графики в VitruvianOS применяется app_server - графический сервер из Haiku, адаптированный для работы поверх Linux KMS/DRM. В качестве графического тулкита используется реализация Interface Kit из Haiku. Вместо systemd в будущем планируется использовать систему инициализации janus_daemon, который будет работать как launch_daemon в Haiku.
Для реализации большей части BeAPI используется своя версия библиотеки libroot, которая оборачивает многие нестандартные функции Haiku/BeOS поверх Linux, что даёт возможность запускать приложения и использовать более высокоуровневые компоненты Haiku OS на стандартном ядре Linux. Для реализации специфичных функций Kernel Kit из BeAPI разработана подсистема ядра Nexus, реализующая API node_monitor, отслеживание устройств и обмен сообщениями в стиле BeOS, что позволяет реализовать все специфические технологии Haiku/BeOS поверх ядра Linux.
На данный момент реализовано:
Загрузка с файловых систем XFS и SquashFS с полной поддержкой расширенных атрибутов (xattr).
Модифицированное ядро Linux-rt для повышения отзывчивости при выполнении десктоп-задач.
Слой совместимости с API BeOS/Haiku c поддержкой нативных приложений.
Deskbar, Tracker и основные компоненты рабочего стола Vitruvian.
Система ввода с поддержкой мыши, жестов, планшетов и многого другого.
Специально разработанный графический слой (без использования X11 и Wayland).
Планируется:
В версии 0.3.1 будут включены многие недостающие компоненты и исправлены ошибки, основанные на первых отзывах пользователей.
В версии 0.3.2 ожидается создание самодостаточной системы, в которой VitruvianOS сможет собираться самостоятельно.
В версии 0.4 будет проведена стабилизация и расширена поддержка аппаратного обеспечения, включая продолжающуюся разработку ARM-версии (arm32 и aarch64).
Сформирован выпуск основной ветки nginx 1.29.7, в рамках которой продолжается развитие новых возможностей, а также выпуск параллельно поддерживаемой стабильной ветки nginx 1.28.3, в которую вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей. В обновлениях устранено 6 уязвимостей, три из которых приводят к переполнению буфера. Четырём уязвимостям присвоен высокий уровень опасности (8.8 или 8.5 из 10).
CVE-2026-27654 - переполнение буфера в модуле ngx_http_dav_module, возникающее при обработке WebDAV-запросов COPY и MOVE при использовании в блоках "location" директивы "alias". Уязвимость позволяет изменить пути к файлам для обращения за пределы базового каталога. Проблема выявлена с использованием AI-модели Claude.
CVE-2026-27784, CVE-2026-32647 - переполнениябуферов в модуле ngx_http_mp4_module, возникающие при обработке специально оформленных файлов mp4. Не исключается, что эксплуатация уязвимости не ограничивается аварийным завершением рабочего процесса.
CVE-2026-27651 - разыменование нулевого указателя при некорректном использовании методов аутентификации CRAM-MD5 или APOP.
CVE-2026-28753 - возможность манипуляции с PTR-записями в DNS для подстановки данных атакующего в запросы auth_http и команду XCLIENT в SMTP-соединении к бэкенду.
CVE-2026-28755 - обход результата OCSP-проверки сертификата в модуле stream.
Среди не связанных с безопасностью изменений в nginx 1.29.7
Добавлена поддержка протокола Multipath TCP (MPTCP), позволяющего доставлять пакеты одновременно по нескольким маршрутам через разные сетевые интерфейсы. Для включения в директиву "listen" добавлен параметр "multipath".
В директиву "keepalive", используемую в блоке "upstream", добавлен параметр "local". При указании данного параметра, вместо совместного использования одного соединения к общему upstream-серверу, упоминаемому в разных
блоках location и server, для каждого блока поддерживается отдельное соединение к upstream.
В блоке "upstream" активирована по умолчанию директива "keepalive".
При использовании в режиме прокси по умолчанию выставлена версия протокола HTTP/1.1 с включением режима keep-alive (в модуле ngx_http_proxy_module включена по умолчанию поддержка keep-alive и выставлено значение "1.1" в директиве "proxy_http_version" и прекращена отправка по умолчанию заголовка "Connection"). Для возвращения старого поведения, позволяющего обращаться к бэкендам, поддерживающим только HTTP/1.0, следует выставить настройки:
Компания Oracle представила выпуск Unbreakable Enterprise Kernel 8.2 (UEK 8.2), варианта ядра Linux, развиваемого для использования в дистрибутиве Oracle Linux в качестве альтернативы штатному пакету с ядром из Red Hat Enterprise Linux. Ядро доступно для архитектур x86_64 и ARM64 (aarch64). Исходный код ядра, включая разбивку на отдельные патчи, опубликован в публичном Git-репозитории Oracle.
Ветка Unbreakable Enterprise Kernel 8 основана на ядре Linux 6.12, которое дополнено новыми возможностями, оптимизациями и исправлениями, а также проверено на совместимость с большинством приложений, работающих в RHEL, и оптимизировано для работы с промышленным программным обеспечением и оборудованием Oracle. Установочные и src-пакеты с ядром UEK 8.2 подготовлены для веток дистрибутива Oracle Linux 9 и Oracle Linux 10(нет никаких препятствий по использованию данного ядра в аналогичных версиях RHEL, CentOS, Alma Linux и Rocky Linux).
Для гипервизора и гостевых систем реализованавозможность использования механизмов Intel TDX (Trusted Domain Extensions) и AMD SEV-SNP (Secure Encrypted Virtualization-Secure Nested Paging) для защиты гостевых систем от вмешательства и анализа со стороны администратора хост-системы и физических атак на оборудование. Защита обеспечивается за счёт шифрования памяти виртуальных машин.
Добавлена возможность восстановления ФС XFS в online-режиме при помощи утилиты xfs_scrub, без отмонтирования раздела и без остановки работы с ФС.
Добавлена поддержка легковесных сторожевых страниц памяти (guard page), обращение к которым вызывает исключение и аварийное завершение процесса (SIGSEGV). По сравнению с маппингом в режиме PROT_NONE сторожевые страницы позволяют более эффективно блокировать выполнение кода за пределами выделенной области памяти, так как их создание не требует выделения новой области виртуальной памяти.
Реализована возможность профилирования операций выделения и освобождения памяти в системе, накопления статистики о выделении памяти и размере используемой памяти, выявления утечек памяти. Для включения профилирования предложен sysctl-параметр
"sysctl.vm.mem_profiling=1", доступ к информации осуществляется через
/proc/allocinfo.
Дополнительно можно отметить обновление ветки UEK-next (Next Unbreakable Enterprise Kernel), которая переведена на использование выпуска ядра Linux 6.19. Ядро UEK-next преподносится как непрерывно обновляемая опция для разработчиков, позволяющая получить доступ к наиболее свежим улучшениям из основной ветки ядра, сохранив при этом доступ к специфичным для ядра UEK расширенным возможностям.
Ядро UEK-next формируется путём наложения на mainline-ядро Linux исправлений и улучшений, подготовленных для ядра UEK. Через какое-то время для одного из ядер UEK-next будет обеспечен длительный цикл поддержки (LTS) и это ядро будет использовано в качестве основы для формирования ветки UEK 9.
Разработчики Python-библиотеки LiteLLM, насчитывающей 95 млн загрузок в месяц и 3.5 млн за последние сутки, сообщили о компрометации проекта. Атакующие смогли перехватить учётные данные сопровождающего и опубликовать в PyPI два вредоносных выпуска - 1.82.7 и 1.82.8, содержащих код для кражи ключей и паролей с систем пользователей. В настоящее время вредоносные версии удалены из PyPI, а проект временно заморожен до окончания разбирательства.
Токен доступа к учётной записи LiteLLM в PyPI попал в руки атакующих из-за использования в системе непрерывной интеграции сканера безопасности зависимостей trivvy. До этого в конце февраля атакующие смогли получить доступ к инфраструктуре проекта Trivy, воспользовавшись уязвимостью в обработчике pull_request_target, запускаемом в системе непрерывной интеграции Trivy. После компрометации атакующие опубликовали вредоносные выпуски Trivy 0.69-0.69, подменили GitHub Action обработчик trivy-action и разместили модифицированный Docker-образ с Trivy.
24 марта в 11:30 (MSK) перехваченные учётные данные сопровождающего LiteLLM (krrishdholakia) были использованы для прямой публикации вредоносных релизов LiteLLM 1.82.7 и 1.82.8 в PyPI в обход официального GitHub CI/CD. Репозиторий проекта на GitHub не пострадал - вредоносная активность наблюдалась только в PyPI. В выпуске LiteLLM 1.82.7 вредоносный код был встроен в файл litellm/proxy/proxy_server.py и активировался при импорте litellm.proxy. В выпуске 1.82.8 в состав был включён файл site-packages/litellm_init.pth, а в файл proxy_server.py был добавлен обработчик, упакованный в формате base64 и активируемый при любом запуске.
Добавленный вредоносный код осуществлял сканирование и отправку конфиденциальных данных. Отправлялись найденные в системе ключи SSH и SSL/TLS, содержимое переменных окружения, учётные данные к AWS, GCP, Azure и K8s, ключи от криптокошельков, пароли к СУБД, история операций в командном интерпретаторе, файлы конфигурации от Git, CI/CD, пакетных менеджеров и Docker. Обнаруженные данные шифровались с использованием алгоритмов AES-256-CBC + RSA-4096 и отправлялись HTTP POST-запросом на сайт "https://models.litellm.cloud/" (домен litellm.cloud был зарегистрирован за несколько часов до публикации вредоносных релизов).
Пользователям LiteLLM рекомендовано убедиться в отсутствии в каталоге site-packages файла litellm_init.pth, обновить все ключи и учётные данные в случае установки версии 1.82.7 или 1.82.8, закрепить конкретные версии LiteLLM в параметрах загрузки зависимостей и сверить используемые выпуски LiteLLM с кодом релизов на GitHub.
Опубликовано исследование, в котором утверждается, что Telega, альтернативный клиент Telegram, содержит изменения, позволяющие реализовать MITM-атаку и отключающие ключевые элементы криптозащиты Telegram. Клиент Telega использует код оригинального Android-клиента Telegram, распространяемый под лицензией GPLv2, но не раскрывает вносимые изменения, вопреки требованиям лицензии.
Вывод о возможности перехвата трафика пользователей делается на основе нескольких технических находок, выявленных после декомпиляции APK-пакета, анализа библиотек и изучения сетевых вызовов:
Клиент Telegа перенаправляет трафик через собственную инфраструктуру: при старте он обращается к адресу api.telega.info/v1/dc‑proxy и получает JSON‑список "дата‑центров", которые подставляются вместо официальных адресов Telegram. Фактически это заставляет клиент устанавливать соединения не с оригинальными серверами, а через собственный прокси. Подобное поведение можно объяснить попыткой обхода блокировок, мешающих напрямую обращаться к серверам Telegram. При использовании официальных открытых ключей Telegram, прокси могут лишь перенаправлять зашифрованный трафик на серверы Telegram, но не могут получить доступ к содержимому, не имея закрытых ключей, применяемых на официальных серверах Telegram.
В сборке Telega обнаружен дополнительный открытый RSA‑ключ, которого нет в официальных клиентах Telegram. При установке шифрованных сеансов со своими серверами Telega может использовать собственный открытый ключ, для которого известен парный закрытый ключ.
Подмена адресов в сочетании с использованием собственного открытого ключа дают возможность совершить MITM-атаку, позволяющую читать все входящие и исходящие сообщения в чате и просматривать историю переписки, подменять содержимое сообщений и выполнять любые действия с учётной записью пользователя без его участия.
Механизмы PFS (Perfect Forward Secrecy) и поддержка секретных E2E‑чатов в клиенте либо отключены по умолчанию, либо управляются удалённой конфигурацией, доступной через тот же dc‑proxy (клиент игнорирует секретные чаты и скрывает UI‑элементы для их создания).
В коде выявлены фильтры/чёрные списки (запросы к api.telega.info/v1/api/blacklist/filter), позволяющие скрывать каналы, профили и чаты на стороне клиента по решению сервера.
Telega позиционируется как "Telegram‑клиент, созданный на базе открытого кода мессенджера", который можно использовать без VPN, а на странице проекта присутствует формулировка, что "вся информация надежно защищена сквозным шифрованием Telegram". Ранее Telegram-канал Telega с более 5 миллионов подписчиков был верифицирован, однако на момент написания статьи отметка отсутствует. У бота авторизации Telega более 6 миллионов пользователей ежемесячно.
Включена поддержка режима Split View, позволяющего бок о бок в одном окне просмотреть содержимое двух вкладок. Режим активируется через кнопку "Add Split View" в контекстном меню, показываемом при клике правой кнопкой мыши на вкладках. При нажатии данной кнопки содержимое окна разделяется на две части и в правой части открывается содержимое страницы новой вкладки. Если выбрать опцию для группы из двух вкладок, указанные вкладки сразу будут раскрыты рядом с друг другом. Допускается произвольное изменение размера правой и левой области просмотра через перетаскивание мышью полосы-разделителя. Активная вкладка при одновременном просмотре выделяется красной рамкой.
В состав интегрирован бесплатный VPN-сервис Firefox VPN (не путать с Mozilla VPN), позволяющий обращаться к сайтам не напрямую, а через промежуточные прокси-серверы в разных странах, скрывающие IP-адрес пользователя. Имеется возможность включать VPN только для выбранных сайтов. Для активации VPN необходима регистрация учётной записи в Mozilla. На первом этапе VPN-сервис доступен пользователям из США, Франции, Германии и Великобритании. В VPN-сервисе действует ограничение в 50 гигабайт трафика в месяц.
Добавлена функция Tab Notes для прикрепления произвольных примечаний к вкладкам. Кнопка для добавления заметок помещена в контекстное меню и также показывается на эскизе, появляющемся при наведении курсора на вкладке. Для включения можно использовать настройку "browser.tabs.notes.enabled" на странице about:config или опцию в секции Firefox Labs на странице с настройками (about:preferences#experimental).
Предложена панель TrustPanel, вызываемая при нажатии на пиктограмму с изображением щита перед адресной строкой и комбинирующая ранее выводимые раздельно панели c параметрами приватности и безопасности.
Добавлена защита от отправки нечистыми на руку сайтами фоновых уведомлений для рекламы, спама и фишинга. Уведомления теперь автоматически блокируются, а предоставленные полномочия отзываются для любых сайтов, помеченных вредоносными сервисом SafeBrowsing.
Для ускорения вывода PDF-файлов задействовано аппаратное ускорение.
В конфигуратор панели (Customize Toolbar) добавлена возможность добавления на панель кнопки Share для отправки текущей вкладки другим пользователями и на другие устройства при помощи предоставляемых платформами Windows и macOS системных сервисов обмена информацией.
Для уменьшения поверхности атаки ужесточены требования к JavaScript-файлам, которые могут запускаться в родительском процессе, отвечающим за запуск дочерних процессов и базовую функциональность браузера, такую как интерфейс, профили, управление процессами и навигация.
Переделано оформление страниц, показываемых при возникновении ошибок при попытке открытия сайтов.
На платформе Linux вместо диалога GTK3 по умолчанию теперь используется XDG-портал org.freedesktop.portal.FileChooser, предоставляющий более функциональный интерфейс для выбора файлов.
Повышена надёжность загрузки с использованием протокола HTTP/3 при нестабильном сетевом соединении.
На платформе Windows для доступа к информации о местоположении задействован API Windows.Devices.Geolocation вместо старого API времён Windows 7.
Реализация декодировщика формата изображений JPEG XL переведена на использование библиотеки jxl-rs, написанной на языке Rust. Поддержка JPEG XL пока отключена по умолчанию и требует активации параметра "image.jxl.enabled" на странице about:config.
В инструментах для web-разработчиков в панель инспектирования хранилища добавлена кнопка для удаления всех записей в выбранном хранилище. В панели работы со стилями рядом с каждым CSS-элементом, связанным с показываемым в секции "Computed" вычисляемым значением, добавлена пиктограмма для перехода к этому элементу в секции "Rules".
Добавлена возможность вызова предоставляемой браузером реализации выпадающего меню при помощи метода showPicker() для
показа рекомендаций автозаполнения текстового поля <input type="text"> на основе вариантов, определённых в блоке <datalist>.
В CSS-свойство "shape-outside" добавлена поддержка функций rect() и xywh() для формирования области обтекания текста. Ранее данные функции поддерживались только в CSS-свойствах clip-path и offset-path.
Для выбора шрифта с дополнительными математическими символами в CSS-свойство "font-family" добавлена поддержка значения "math", которое также используется по умолчанию для шрифта при выводе содержимого элемента <math>.
В HTML-элементы добавлена поддержка атрибута 'popover="hint"', позволяющего отображать автоматически скрываемые всплывающие подсказки, не приводящие к скрытию других типов всплывающих popover-блоков.
Для мультимедийных элементов (<audio>, <video>)
включена поддержка псевдо-классов
":playing",
":paused",
":seeking",
":muted",
":buffering",
":stalled" и ":volume-locked".
Включена соответствующая требованиям спецификации реализация API HTMLMediaElement.captureStream(), позволяющего захватывать содержимое, отрисовываемое при помощи HTMLMediaElements (например, контент, выводимый через теги video и audio).
Добавлен API Reporting для получения информации о различных возможностях и проблемах, таких как нарушении правил CSP (Content Security Policy), Permissions-Policy, Integrity-Policy, Cross-Origin-Embedder-Policy, а также использовании устаревшей функциональности.
Реализован API CloseWatcher, позволяющий отслеживать в web-приложениях Close-запросы и реагировать на их поступление (например, можно создать обработчик нажатия кнопки "назад" на Android-смартфоне). Close-запросы формируются при попытке закрытия модальных (<dialog>) и всплывающих диалогов (popover="") через нажатие клавиши Esc, использование кнопки "назад" или экранный жест на смартфонах.
В версии
Firefox для Android проведена работа по улучшению навигации и обновлены панель инструментов, список вкладок и меню. Добавлена возможность закрытия всплывающих popover-элементов и диалогов системной кнопкой "назад". Добавлена настройка "media.peerconnection.ice.obfuscate_host_addresses" для обфускации имён хостов, определяемых через mDNS, что позволяет скрыть информацию о внутренних адресах при использовании WebRTC.
Кроме новшеств и исправления ошибок в Firefox 149 устранено 70 уязвимостей. 55 уязвимостей вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц.