| · | 27.10 | Релиз Firefox 159 (36 +6) |
|
Состоялся релиз web-браузера Firefox 159 и сформированы обновления прошлых веток с длительным сроком поддержки - 153.6.0 и 115.44.0. В рамках нового двухнедельного цикла формирования релизов на стадию бета-тестирования переведена ветка Firefox 160, релиз которой намечен на 10 ноября.
Основные новшества в Firefox 159 (1, 2, 3):
Кроме новшеств и исправления ошибок, в Firefox 159 устранено 167 уязвимостей, у 108 из которых выставлен высокий уровень опасности. Большинство уязвимостей вызваны проблемами при работе с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц.
| ||
|
Обсуждение (36 +6) |
Тип: Программы |
| ||
| · | 27.10 | Выпуск DinoX 2.3.2 кроссплатформенного клиента для XMPP/Jabber (26 +9) |
|
Доступен выпуск проекта DinoX 2.3.2, развивающего кроссплатформенный форк открытого коммуникационного клиента Dino, использующего протокол XMPP. В отличие от приложений Psi, Gajim, Pidgin и MirandaNG в DinoX все актуальные для современного пользователя XEP-спецификации доступны из коробки, без необходимости изменения настроек и установки внешних плагинов. В DinoX также предложен более привычный массовому пользователю интерфейс, напоминающий большинство мессенджеров последнего десятилетия. Код написан на языке Vala (интерфейс на GTK) и распространяется под лицензий GPLv3.
Основные возможности:
Следует отметить, что для наиболее комфортного общения в текущих условиях, рекомендуется поднимать свой собственный сервер на основе, например, snikket. Он обеспечит не только приватность, но и более стабильную работу звонков за счёт собственного TURN-сервера. ![]() ![]()
| ||
| · | 27.10 | Уязвимости в Rust-библиотеках zip-rs и librsvg (161 +23) |
|
В библиотеке zip-rs, написанной на языке Rust и насчитывающей около 10 млн загрузок в неделю, выявлена уязвимость (CVE-2026-115905), позволяющая создавать архивы, которые выглядят безобидными, но при распаковке из них извлекаются другие, изначально не показанные в списке, файлы. Файлы могут быть размещены в архиве вне структуры "Central Directory", из-за чего при просмотре списка файлов показывается одно содержимое, но при распаковке через API ZipStreamReader извлекаются другие файлы. Проблеме присвоен уровень опасности 10 из 10. Уязвимость исправлена в версии zip-rs 9.0.5.
Уязвимость вызвана использованием разных заголовков при произвольном доступе к архиву при помощи API ZipArchive и при извлечении данных в потоковом режиме при помощи API ZipStreamReader. Обработчик ZipArchive полагается на заголовок CDFH (Central Directory File Header), а ZipStreamReader при извлечении файлов считает более приоритетным заголовок LFH (Local File Header) без синхронизации дублирующихся метаданных. Уязвимость может использоваться для обхода почтовых фильтров, антивирусных сканеров и прочих систем проверки безопасности. Атакующий может разместить в видимой части архива документ или изображение, а в скрытую поместить исполняемый файл с вредоносным кодом, который не будет замечен антивирусом, но будет сохранён на диск при распаковке пользователем. В качестве примеров приводятся атаки на микросервисы, SaaS-платформы и системы контейнерной изоляции, в ходе которых при распаковке в каталогах с рабочими проектами не представляющих опасности архивов, например, с наборами стилей, текстовых файлов или изображений, могут быть перезаписаны скрипты и исполняемые файлы.
Дополнительно можно отметить уязвимость (CVE-2026-96889) в библиотеке librsvg, развиваемой проектом GNOME на языке Rust. Библиотека применяется в GTK и приложениях GNOME для отрисовки SVG, а также задействована в популярном NPM-пакете sharp, насчитывающем 80 млн загрузок в неделю и используемом в качестве зависимости у почти 11 тысяч проектов. Уязвимость позволяет организовать выполнение своего кода при обработке специально оформленных SVG-изображений. Проблема устранена в версиях librsvg 2.56.6, 2.60.3, 2.62.4 и 2.63.1, а также в NPM-пакете sharp 0.35.5. Среди пострадавших проектов оказалась платформа PeerTube (зависимость обновлена в сегодняшнем выпуске PeerTube 8.3.2). Для разбора XML-разметки, используемой в SVG-файлах, в librsvg задействованы функции из Си-библиотеки libxml2. Уязвимость вызвана тем, что при наличии в SVG вложенных XML-конструкций Xincludes, включающих дублирующиеся элементы с повторяющимися именами, происходит обращение к памяти после её освобождения. Сбой возникает так как библиотека librsvg освобождает память под XML-элементы, которые ещё продолжают использоваться в парсере libxml2.
| ||
|
Обсуждение (161 +23) |
Тип: Проблемы безопасности |
| ||
| · | 26.10 | Автор WinBtrfs опубликовал открытую ОС Moxnox 1.0 с ядром в стиле Windows NT (87 +22) |
|
Марк Хармстоун (Mark Harmstone), автор проекта WinBtrfs, опубликовал выпуск операционной системы Moxnox 1.0, разрабатываемой с 2022 года в качестве хобби. Moxnox преподносится как созданная с оглядкой на Windows NT операционная система, обеспечивающая совместимость с POSIX-стандартами, использующая файловую систему Btrfs и достигшая уровня самосборки (self-hosting). Проект насчитывает около 130 тысяч строк кода на языке С++ и распространяется под лицензиями GPL (ядро и базовые программы), LGPL (библиотеки) и MIT (модули). Поддерживается сборка для архитектур x86-64-v3 и ARMv8.1 (может работать на плате Raspberry Pi 5).
Системные вызовы и низкоуровневые интерфейсы в ядре реализованы по образу Windows NT, но структура ядра и сопутствующие компоненты отличаются от Windows NT. Предоставляется возможность для запуска компонентов окружения GNU и программ, написанных для Unix-подобных систем. В качестве формата исполняемых файлов применяется PE, библиотеки имеют расширение dll, а программы - exe. Поддерживаемые аппаратные устройства:
В настоящее время в Moxnox реализовано 642 функции из примерно 1200, описанных в стандарте POSIX 2024, но этого достаточно для работы таких проектов, как gcc, bash, mesa, openssh, openssl, perl, python и rust. Системная библиотека сформирована из функций gnulib, математических и криптографических функций из musl, функций для работы с регулярными выражениями из tre и функций типа printf из mingw. Поддерживается самосборка, позволяющая скомпилировать Moxnox из окружения на базе Moxnox. Запуск Windows-программ пока не поддерживается, но в будущем для их запуска намерены задействовать реализацию API Win32 из Wine. ![]() Среди портированных для Moxnox программ:
На данном этапе разработки поддерживается только работа в консольном режиме, но в будущем планируют реализовать и графический интерфейс. Также пока отсутствует поддержка многопользовательского окружения, механизмов обеспечения безопасности, часовых поясов, раскладок клавиатуры, локалей и кодировок, отличных от UTF-8. Утверждается, что проект не содержит значимого кода, сгенерированного через AI-инструменты, которые использовались только для выполнения рутинной работы, такой как перевод правил autotools в CMake, замена ioctl-вызовов на функцию tcgetwinsize при портировании программ, написание тестов и поиск ошибок в коде.
| ||
|
Обсуждение (87 +22) |
Тип: Программы |
| ||
| · | 26.10 | Атака на AI-агенты через размещение файла AGENTS.md в каталоге с загрузками (104 +28) |
|
Исследователи из компании Forever Security, разбирая причины появления вредоносного ПО в системе одного из клиентов, выявили новый способ атаки на AI-агентов, основанный на том, что многие AI-агенты по умолчанию обрабатывают инструкции из файла AGENTS.md, размещённого в корне проекта, к работе над которым они привлечены. Атака проводится через размещение в каталоге ~/Downloads файла AGENTS.md или CLAUDE.md с инструкцией по установке вредоносного ПО (в рассмотренном случае устанавливался вредоносный npm-пакет "function-color").
Выявленная активность является вариацией известного метода атаки на разработчиков ПО, при котором злоумышленник создаёт репозиторий с легитимным кодом и размещает в нём файл AGENTS.md или передаёт данный файл в составе pull-запросов или сообщений об ошибках в существующие проекты. В случае если кто-то решит использовать AI-агента для проверки предложенного репозитория или изменения, агент обработает инструкции из файла AGENTS.md, в котором может быть предписано совершение вредоносных действий. Новый вариант атаки основан на том, что Chrome, Firefox и Edge по умолчанию не запрашивают подтверждение при загрузке файла, а лишь выводят уведомление. Загружаемые по ссылке файлы автоматически сохраняются в каталоге ~/Downloads - для загрузки достаточно, чтобы пользователь открыл определённую страницу или перешёл по ссылке (ссылка может выглядеть невинно, а проброс на загрузку может быть сделан через редирект). Подобным образом атакующие добиваются сохранения файла AGENTS.md в каталоге с загрузками на системах пользователей, после чего ждут, когда пользователь запустит AI-агента в контексте каталога ~/Downloads, например, для разбора каких-то загруженных документов. Помимо использования AGENTS.md для информирования AI-агентов об используемых инструментах, требуемых зависимостях и проводимых тестах, через подобные файлы можно добиться выполнения произвольных программ, установки сторонних пакетов и изменения конфигурации. Возможность совершения атаки продемонстрирована для AI-агентов Codex и Claude Code. Исследователи провели два эксперимента, в результате которых удалось добиться получения контроля над учётной записью пользователя и перехватить его OAuth-токены. В ходе первого эксперимента AI-агент Codex выполнил инструкции по загрузке и запуску на системе пользователя тестового вредоносного кода, ограничивающегося открытием калькулятора. Во втором эксперименте через подстановку файла CLAUDE.md исследователи при помощи Claude Code изменили содержимое переменной окружения ANTHROPIC_BASE_URL, организовали перенаправление запросов к API на свой сервер и перехватили токен OAuth. Первый эксперимент оказался успешен в 90% попыток, а второй - в 50%.
| ||
|
Обсуждение (104 +28) |
Тип: Проблемы безопасности |
| ||
| · | 26.10 | Уязвимость в Ruby, эксплуатируемая для удалённого выполнения кода в GitLab (138 +12) |
|
Опубликованы корректирующие выпуски языка программирования Ruby 3.3.13, 3.4.12 и 4.0.9, в которых устранена критическая уязвимость (CVE-2026-110264), приводящая к целочисленному переполнению при компиляции специально оформленных регулярных выражений. Уязвимость может использоваться для атаки на проекты, написанные на языке Ruby и использующие внешние данные в регулярных выражениях. Среди прочего, подтверждена возможность эксплуатации уязвимости для удалённого выполнения кода в платформе совместной разработки GitLab. Проблема дополнительно блокирована в обновлениях GitLab 19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10 и 18.11.13. Уязвимости присвоен уровень опасности 10 из 10.
Уязвимость присутствует в движке регулярных выражений Onigmo и приводит к переполнению внутренних идентификаторов при компиляции шаблона с большим числом повторов. Проблема проявляется только в приложениях, использующих внешние данные в регулярных выражениях, обрабатываемых через методы Regexp.new, Regexp.union и Regexp.compile или литералы вида "/#{input}/". Ограничение размера регулярного выражения или времени его обработки через метод Regexp.timeout не блокирует уязвимость, так как для атаки могут использоваться короткие шаблоны. В GitLab уязвимость может быть эксплуатирована неаутентифицированным пользователем из-за подстановки в регулярное выражение внешних данных. Детали метода эксплуатации пока не раскрываются (по правилам GitLab информация становится доступна спустя 30 дней после публикации исправления), при этом в сети уже фиксируются попытки осуществления атак на пользователей GitLab. Косвенными признаками осуществления атаки может служить увеличение числа аварийных завершений интерпретатора Ruby и рост ошибок в логах, связанных с истечением таймаута на отрисовку страницы при обработке org-файлов. Помимо CVE-2026-110264 в движке регулярных выражений устранены ещё три уязвимости: CVE-2026-89078 (двойное освобождение памяти при невозможности парсинга шаблона после его изменения), CVE-2026-93577 и CVE-2026-97229 (целочисленные переполнения при расчёте размера компилируемого шаблона).
| ||
|
Обсуждение (138 +12) |
Тип: Проблемы безопасности |
| ||
| · | 26.10 | Выпуск CoW 0.4, адаптации оконного менеджера FVWM для Wayland (37 +9) |
|
Томас Адам (Thomas Adam), создатель оконного менеджера FVWM3, один из ключевых разработчиков FVWM и сопровождающий переносимую версию мультиплексора терминалов tmux, опубликовал проект CoW (Compositor on Wayland), нацеленный на создание стекового оконного менеджера в стиле FVWM и MWM, использующего протокол Wayland вместо X11. Из отличий отмечается более простой механизм настройки, в котором вместо усложнённого синтаксиса конфигурации задействован набор команд, похожих на команды tmux, применяемый как в файле конфигурации, так и в IPC-интерфейсе удалённого управления. Код написан на языке Си и распространяется под лицензией ISC. Сборки формируются для Arch Linux, Fedora и OpenBSD.
CoW реализован поверх модульного композитного сервера River, который отвечает за реализацию протокола Wayland, отрисовку и управление доступом для ввода и вывода. В CoW реализованы абстракции для управления окнами, IPC, команды и возможности для стекового размещения, декодирования и компоновки окон. Подобное разделение позволило сосредоточить внимание на функциях управления окнами, не отвлекаясь на тонкости работы с протоколом Wayland. Поверх оконного менеджера запускаются панель cowbar, меню приложений cow-appmenu, навигатор по виртуальным рабочим столам cowpager, лаунчер cowbuttons и интерфейс для просмотра списка окон cowiconman. Вместо встроенной панели возможно использование панели Waybar. Версия CoW 0.4 примечательна добавлением возможности использования оконных контейнеров верхнего уровня для создания произвольных раскладок окон на экране (окно верхнего уровня может разделяться на столбцы и строки, размер которых меняется независимо друг от друга). ![]()
| ||
|
Обсуждение (37 +9) |
Тип: Программы |
| ||
| · | 26.10 | Опубликована мобильная платформа Ubuntu Touch 24.04-2.2 (13 +10) |
|
Представлена прошивка Ubuntu Touch 24.04-2.2, продолжающая развитие ветки на пакетной базе Ubuntu 24.04. Прошивка развивается проектом UBports, взявшим в свои руки разработку мобильной платформы Ubuntu Touch, после того как от неё отстранилась компания Canonical. Проектом также развивается экспериментальный порт рабочего стола Unity 8, который переименован в Lomiri.
Среди изменений в Ubuntu Touch 24.04-2.2:
![]()
| ||
|
Обсуждение (13 +10) |
Тип: Программы |
| ||
| · | 25.10 | Альфа-версия CusDeb OS, Windows-подобной ОС на базе Linux и пользовательского окружения ReactOS (160 –2) |
Через полгода после публикации прототипа Windows-подобной операционной системы C:\\Deb сформирована первая альфа-версия проекта, получившего новое название - CusDeb OS. В отличие от прототипа, который представлял собой обычное Linux-окружение, стилизованное под Windows 95/98 с использованием PCManFM, LXPanel и других компонентов, CusDeb OS Alpha 1 предлагает полноценное классическое Win32-окружение, основанное на пользовательских компонентах ReactOS, работающих через Wine. Пользовательское окружение развивается как часть CusDeb OS под именем CDEX (CusDeb Desktop Environment X) и представляет собой редакцию оболочки ReactOS, адаптированную для работы без ядра данной операционной системы.
![]() На текущем этапе CDEX содержит лишь минимальные изменения, направленные на устранение различных шероховатостей в работе Win32-окружения под Linux. В дальнейшем разработчики планируют развивать его дальше, добавляя возможности, которые пока не реализованы в ReactOS. Как и в случае с прототипом, основой системы остаётся Debian 13. Для загрузки предлагается (894 MB) live-система, которую можно запустить в виртуальной машине или на реальном компьютере. Разработчики CusDeb OS поставили перед собой цель - за год довести систему до состояния, в котором она могла бы стать полноценной альтернативой Windows 10. Автором проекта является Евгений Голышев, сопровождающий пакет Elixir в Debian. Среди основных целей для второй альфа-версии:
| ||
| · | 25.10 | Выпуск qBittorrent 5.3.0 (97 +35) |
|
Опубликован выпуск торрент-клиента qBittorrent 5.3.0, написанного с использованием тулкита Qt и развиваемого в качестве открытой альтернативы µTorrent, приближенной к нему по интерфейсу и функциональности. Среди возможностей qBittorrent: интегрированный поисковый движок, возможность подписки на RSS, поддержка многих BEP-расширений, удалённое управление через web-интерфейс, режим последовательной загрузки в заданном порядке, расширенные настройки для торрентов, пиров и трекеров, планировщик пропускной способности и IP-фильтр, интерфейс для создания торрентов, поддержка UPnP и NAT-PMP. Код проекта написан на языке С++ и распространяется под лицензией GPLv2+. Сборки формируются для Linux, Windows и macOS.
Среди изменений:
![]()
| ||
|
Обсуждение (97 +35) |
Тип: Программы |
| ||
| · | 25.10 | Релиз языка программирования Mojo 1.2 и публикация кода движка MAX Framework (57 +2) |
|
Представлен релиз языка программирования Mojo 1.2. Язык Mojo развивается под руководством Криса Латнера (Chris Lattner), основателя и главного архитектора проекта LLVM и создателя языка программирования Swift. Код компилятора и сопутствующего инструментария, необходимого для сборки проектов на языке Mojo, распространяется под лицензией Apache 2.0 c исключениями от проекта LLVM, допускающими смешивание с кодом под лицензией GPLv2.
Синтаксис Mojo основан на языке Python, а система типов близка к C/C++. Проект преподносится как язык общего назначения, расширяющий возможности языка Python средствами системного программирования, подходящий для широкого круга задач и сочетающий простоту применения для исследовательских разработок и быстрого создания прототипов с пригодностью для формирования высокопроизводительных конечных продуктов. Простота достигается благодаря использованию привычного синтаксиса языка Python, а разработке конечных продуктов способствуют возможность компиляции в машинный код, механизмы безопасной работы с памятью и задействование средств для аппаратного ускорения вычислений. Для достижения высокой производительности поддерживается распараллеливание вычислений с задействованием всех имеющихся в системе аппаратных ресурсов гетерогенных систем, таких как GPU, специализированные ускорители для машинного обучения и векторные процессорные инструкции (SIMD). При интенсивных вычислениях распараллеливание и задействование всех вычислительных ресурсов даёт возможность добиться производительности, превосходящей приложения на C/C++. Язык поддерживает статическую типизацию и средства для безопасной низкоуровневой работы с памятью, напоминающие возможности языка Rust, такие как отслеживание времени жизни ссылок и проверка заимствования переменных (borrow checker). При этом в языке доступны и возможности для низкоуровневой работы, например, возможно прямое обращение к памяти в режиме unsafe с использованием типа Pointer, вызов отдельных SIMD-инструкций или доступ к аппаратным расширениям, таким как TensorCores и AMX. Mojo может использоваться как в режиме интерпретации с использованием JIT, так и для компиляции в исполняемые файлы (AOT, ahead-of-time). В компилятор встроены современные технологии автоматической оптимизации, кэширования и распределённой компиляции. Исходный код на языке Mojo преобразуются в низкоуровневый промежуточный код MLIR (Multi-Level Intermediate Representation), развиваемый проектом LLVM. Компилятор позволяет применять для генерации машинного кода различные бэкенды, поддерживающие MLIR.
Одновременно сформирован выпуск движка MAX Framework 26.7, предлагающего платформу для разработок в области машинного обучения. MAX Framework дополняет инструментарий Mojo средствами для разработки и отладки приложений, использующих модели машинного обучения в различных форматах (TensorFlow, PyTorch, ONNX и т.п.). Новая версия примечательна публикацией исходного кода MAX Framework, включая бэкенды, runtime и графовый компилятор. Код опубликован под собственной лицензией "MAX License", которая допускает использование, модификацию, расширение и создание производных коммерческих продуктов, но вносит ограничения для защиты от фрагментации платформы, не допускающие создание специфичных для отдельных аппаратных платформ версий, нарушающих совместимость. Из функциональных изменений в MAX Framework 26.7 отмечается добавление поддержки AI-моделей Muse Glimmer и MiMo-V2.6-Flash, возможность передачи видео в модели Qwen3.5 и Qwen3-VL, новый API Decisions для оценки вероятностей при классификации и принятии решений, значительное ускорение выполнения моделей на GPU NVIDIA B200 и AMD MI355. Реализован режим "eager" для ускорения тестирования и отладки кода, позволяющий выполнять операции мгновенно по мере их вызова, без предварительной полной обработки графовым компилятором.
| ||
|
Обсуждение (57 +2) |
Тип: Программы |
| ||
| · | 25.10 | Компания Valve опубликовала дистрибутив для игровых консолей SteamOS 3.9 (46 +21) |
|
Компания Valve представила выпуск операционной системы SteamOS 3.9.5, который отмечен как первый стабильный выпуск в ветке 3.9. Операционная система SteamOS поставляется в устройствах Steam Deck и с недавних пор используется в игровых консолях некоторых других производителей, таких как Lenovo Legion Go S и ASUS ROG Ally. В прошлом энтузиастами развивались неофициальные сборки HoloISO и SteamFork, но они находятся в заброшенном состоянии.
Платформа основана на Arch Linux, использует для ускорения запуска игр композитный сервер Gamescope на базе протокола Wayland, поставляется с доступной только на чтение корневой ФС, применяет атомарный механизм установки обновлений, использует мультимедийный сервер PipeWire и предоставляет два режима работы интерфейса (оболочка Steam и рабочий стол KDE Plasma). SteamOS поддерживает пакеты Flatpak, но также допускает установку в формате Appimage или через инструментарий Distrobox, который входит в состав начиная с версии 3.5. Среди изменений:
| ||
|
Обсуждение (46 +21) |
Тип: Программы |
| ||
| · | 25.10 | YouTube добавит поддержку AV2 в начале 2027 года, Intel готовит SVT-AV2 (109 +19) |
|
Альянс Open Media (AOMedia) объявил об успехах продвижения видеокодека AV2, не требующего патентных и лицензионных отчислений, обеспечивающего примерно на 30% большую эффективность сжатия по сравнению с AV1 и поддерживающего расширенные возможности для потокового вещания, отдачи видео по запросу (VOD), применения в видеоконференциях и интерактивных системах. YouTube планирует начать вещание в AV2 в начале 2027 года, первое время только при просмотре через Web. Также отмечается, что по состоянию на март этого года 90% контента в YouTube доступно в формате AV1. Google проводит внутреннее тестирование экспериментальных сборок Chrome с поддержкой AV2, но пока не перенёс изменения в официальные нестабильные сборки. Появление поддержки AV2 в Chrome ожидается до начала вещания в данном формате в YouTube.
Компания Intel ведёт разработку библиотеки SVT-AV2 (Scalable Video Technology AV2) c реализациями кодировщика и декодировщика AV2, ускоренными при помощи процессорных расширений для аппаратного распараллеливания вычислений. Компания Meta намерена задействовать AV2 для распространения видео на Facebook и Instagram, как когда-то было сделано с кодеком AV1, а также проявляет интерес к открытым звуковым кодекам OAC (Open Audio Codec) и OAR (Open Audio Renderer).
| ||
|
Обсуждение (109 +19) |
Тип: К сведению |
| ||
| · | 24.10 | Выпуск системы шифрования дисковых разделов VeraCrypt 1.26.30 (33 +13) |
|
Опубликован выпуск проекта VeraCrypt 1.26.30, развивающего форк системы шифрования дисковых разделов TrueCrypt, прекратившей своё существование. VeraCrypt примечателен заменой используемого в TrueCrypt алгоритма RIPEMD-160 на SHA-512 и SHA-256, увеличением числа итераций хэширования, упрощением процесса сборки для Linux и macOS, устранением проблем, выявленных в процессе аудита исходных текстов TrueCrypt. Разработанный проектом VeraCrypt код распространяется под лицензией Apache 2.0, а заимствования из TrueCrypt продолжают поставляться под лицензией TrueCrypt License 3.0. Готовые сборки формируются для Linux, FreeBSD, Windows и macOS.
Среди изменений в новой версии:
| ||
|
Обсуждение (33 +13) |
Тип: Программы |
| ||
| · | 24.10 | В systemd добавлена возможность разработки компонентов на языке Rust (66 +11) |
|
В кодовую базу системного менеджера systemd принято изменение, добавляющее возможность создания компонентов на языке Rust. Rust намерены использовать только для разработки новых компонентов, а существующий код на языке Си переписывать на Rust не планируют. Пакетный менеджер cargo в процессе сборки не применяется, остаётся задействована только сборочная система Meson. Rust-код используется в режиме "no_std" (без стандартной библиотеки), разрешено использовать только библиотеки core, alloc и libc.
Компоненты systemd на Rust динамически связываются с Си-библиотекой libsystemd-shared. Rust-обвязки над libsystemd-shared генерируются автоматически на этапе сборки из заголовочных файлов при помощи утилиты bindgen, и становятся доступны для rust-программ в форме пакета systemd_shared. Для работы требуется как минимум версии rustc 1.85 и bindgen 0.71.1, соответствующие версиям из Debian 13. Тестовый исполняемый файл на Rust при сборке с LTO-оптимизациями занимает 32 КБ, при том что аналог на Си занимает 20 КБ. По умолчанию поддержка Rust включается только при наличии в системе соответствующего Rust-инструментария (-Drust=auto). В качестве первого компонента, написанного на Rust, развивается systemd-keyring-setup, который пока не принят в основную кодовую базу systemd. Systemd-keyring-setup предназначен для настройки и управления X.509-сертификатами для механизмов ядра Linux dm-verity, fs-verity и bpf.
| ||
|
Обсуждение (66 +11) |
Тип: К сведению |
| ||
| Следующая страница (раньше) >> | ||