Компания Cloudflare опубликовала разбор одного из крупнейших инцидентов в своей инфраструктуре, из-за которого вчера большая часть сети доставки контента оказалась неработоспособной на протяжении более 3 часов. Сбой произошёл после изменения в структуре БД, размещённой в хранилище ClickHouse, после которого файл с параметрами для системы противодействия ботам в два раза увеличился в размере. В БД были образованы дублирующиеся таблицы, при том, что SQL-запрос для формирования файла просто выводил все данные из всех таблиц по ключу, без отсеивания дубликатов.
SELECT
name,
type
FROM system.columns
WHERE
table = 'http_requests_features'
order by name;
Созданный файл распространился по всем узлам кластера, обрабатывающего входные запросы. В обработчике, использующем данный файл для проверки на обращение от ботов, указанные в файле параметры сохранялись в оперативной памяти и для защиты от излишнего расхода памяти в коде был предусмотрен лимит на максимально допустимый размер файла. В обычных условиях фактический размер файла был значительно меньше выставленного органичения, но после дублирования таблиц превысил лимит.
Проблема оказалась в том, что вместо корректной обработки превышения лимита и продолжения использования прошлой версии файла с информированием системы мониторинга о внештатной ситуации, в обработчике срабатывало аварийное завершение, которое блокировало дальнейший проброс трафика. Ошибка была вызвана использованием в коде на языке Rust метода unwrap() с типом Result.
Когда значение Result имеет состояние "Ok", метод unwrap() возвращает связанный с этим состоянием объект, но если результат не является успешным - вызов приводит к аварийному завершению (вызывается макрос "panic!"), . Обычно unwrap() применяется в процессе отладки или при написании тестового кода и не рекомендован для использования в рабочих проектах.
Сформирован первый кандидат в релизы графического редактора GIMP 3.2. В ветке GIMP 3.2 добавлена поддержка слоёв-ссылок (Link layer) и векторных слоёв (Vector layer), а также возможностей, связанных с поддержкой цветовой модели CMYK и управлением цветом. С выпуском первого кандидата в релизы совершена заморозка строк и остановлен приём новой функциональности в рамках цикла разработки GIMP 3.2. Готовые сборки GIMP 3.2-RC1 опубликованы для Linux (AppImage, Flatpak, Snap), Windows и macOS.
Среди изменений по сравнению с прошлой тестовой версией:
Множество внутренних и интерфейсных исправлений для слоёв-ссылок и векторных слоёв, в частности, операции растеризации и отмены растеризации переработаны для повышения удобства работы при их использовании.
Исправлена проблема, вызванная ошибкой в библиотеке GLib и приводящая к невозможности отслеживания состояния слоёв-ссылок в Windows. На данный момент исправление применено на стороне GIMP, а исправление в состав GLib пока не принято.
Продолжена работа по улучшению редактора текста, начатая в рамках проекта GSoC. Реализована возможность перемещения всплывающего окна редактора текста над холстом в любое место, не меняя расположение самой редактируемой области. Произведён рефакторинг кода, решивший проблемы с рендерингом текста при очень больших разрешениях. Добавлено сочетание клавиш для вставки неотформатированного текста из буфера обмена (по-умолчанию назначено на Shift + Ctrl + V) по аналогии с ранее добавленными сочетаниями клавиш для форматирования жирным шрифтом, курсивом и подчёркиванием.
Добавлена возможность быстрого возврата к прошлому инструменту по сочетанию клавиш (по умолчанию назначено на Shift + X). Несмотря на то, что с технической точки зрения GIMP рассматривает применение фильтров (например, яркость-контаст) как применение инструментов (таких как вращение и кисть), в угоду интуитивности данное сочетание клавиш будет переключаться исключительно между состояниями, отображаемыми в интерфейсе в форме инструментов.
Появилась возможность открывать множество изображений с помощью перетаскивания файлов на строку вкладок изображений.
Продолжена дальнейшая работа по отказу от устаревших виджетов в пользу более современных.
Добавлена возможность перетаскивания образцов цветов из истории применённых цветов. Ранее это не было возможным из-за смещения фокуса на кнопки соответствующего окна.
Возвращена интеграция с меню приложения macOS. В частности, закрытие с помощью этого меню программы теперь будет приводить к корректному завершению работы редактора.
Переработан виджет переключателя, назначение которого стало более очевидным и в нём теперь может быть активен только один элемент из представленных.
При вводе шестнадцатеричного представления цветов в диалоге выбора цвета отныне будет происходить автоматический выбор этого цвета, как только введённое значение окажется валидным, что исключает надобность в нажатии клавиши "Ввод".
Реализована поддержка подлинного экспорта в формат SVG. Новый плагин экспорта позволяет включать растровые слои в формате PNG или JPEG. Однако, до сих пор плагин импорта SVG продолжает растеризировать SVG-файл, для исправления чего потребуется время и пересмотр зависимостей для работы с SVG - данное исправление запланировано на ближайшее будущее.
По аналогии с форматом SVG, формат PDF также получил возможность экспорта настоящих векторных изображений. Кроме того, опция "Заполнить задний фон цветом" теперь применяется ко всем слоям многослойного PDF-файла, а не только к первому слою.
Добавлена поддержки формата изображений PowerVR (PVR), который применялся для хранения текстур в играх для платформы SEGA Dreamcast.
Обеспечено открытие любых форматов изображений, упакованных в архивы, сжатые алгоритмами, поддерживаемыми в GIMP (ранее такая поддержка была исключительно для сжатых файлов формата .XCF, являющегося для GIMP родным форматом сохранения проектов). Изменение внесено в ответ на запрос поддержки архивов изображений hgt.zip, полученных с помощью развиваемого агентством NASA инструмента SRTM (Shuttle Radar Topography Mission - Радиолокационная топографическая миссия шаттла).
Для упрощения создания диалогов в плагинах c автогенерируемым графическим интерфейсом в класс GimpProcedureDialog добавлены виджеты GimpImage и GimpItem, позволяющие автоматически создавать диалоги на основе переменных.
Исправлена ошибка, при которой полноцветные кисти не зеркалировались при выставлении настроек симметрии.
Переработано поведение консольного вывода для Windows. Отныне пользователи Windows по аналогии с пользователями Linux и macOS, могут запустить GIMP через командную строку (CMD.EXE или PowerShell) и получать сообщения о работе программы.
Переработан код, относящийся к обработке цветов при перетаскивании. Отныне реализация отвязана от специфического кода, применимого только для цветового пространства RGB.
Установщик GIMP для Windows теперь автоматически переключается на тёмную тему оформления при соответствующей системной настройке.
Устранены уязвимости:
CVE-2025-10920, CVE-2025-10922, CVE-2025-10934 - переполнения буфера, которые могут привести к выполнению кода при разборе специально оформленных изображений в форматах ICNS, DCM и XWD.
CVE-2025-10923, CVE-2025-10924 - целочисленные переполнения, из-за которых выделялись буферы меньшего размера. Уязвимости могут привести к выполнению кода при разборе специально оформленных изображений в форматах WBMP и FF.
Также можно отметить переработку веб-сайта GIMP для разработчиков, в ходе которой была произведена вычитка материалов и их актуализация, а также обновлены внутренности сайта и внешнее оформление (для большого соответствия стилю основного сайта проекта).
После трёх месяцев разработки представлен релиз распределенной системы управления исходными текстами Git 2.52. Git отличается высокой производительностью и предоставляет средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории и устойчивости к изменениям "задним числом" используются неявное хеширование всей предыдущей истории в каждом коммите, а также удостоверение цифровыми подписями разработчиков отдельных тегов и коммитов. Код Git распространяется под лицензией GPLv2+.
По сравнению с прошлым выпуском в новую версию принято 637 изменений, подготовленных при участии 94 разработчиков (33 впервые приняли участие в разработке Git). Основные новшества (1, 2, 3):
Добавлена команда "git last-modified" для отображения списка файлов в указанной ревизии и коммитов, через которые вносились последние изменения в каждый из этих файлов.
$ git last-modified HEAD
b56f6dcd7b4c90192018e848d0810f091d092913 test.h
29330ae4b820147c98e723399e9438c8bee60a8a test1.c
573ad8917beb99dc643b6e7f5c117a294384a575 test2.c
Добавлена команда "git repo" для выполнения действий, связанных с извлечением информации из репозитория. Предложены две подкоманды - "git repo info" и "git repo structure", выводящие информацию о настройках репозитория и сведения о структуре репозитория (например, можно узнать число ссылок и объектов в репозитории).
В команду "git refs" добавлены три подкоманды, унифицирующие разрозненные и пересекающиеся низкоуровневые операции над ссылками (git for-each-ref, git show-ref, git update-ref и git pack-refs):
"git refs optimize" - оптимизация бэкенда хранения ссылок (по аналогии с "git pack-refs").
"git refs list" - вывод списка всех ссылок (по аналогии с "git for-each-ref" или "git show-ref").
Формат для экспорта или импорта истории коммитов расширен возможностью работы с криптографическими подписями, использующими как идентификаторы объектов на базе алгоритма SHA-1, так и на основе SHA-256. В команде "git fast-import" реализована поддержка обработки подписанных тегов по аналогии с подписанными коммитами. Добавлены опции "--signed-commits=<режим>" и "--signed-tags=<режим>" для управления обработкой подписанных коммитов и тегов на этапе импорта (режим может принимать значения verbatim, warn-verbatim, warn-stri, strip или abort).
В команду "git maintenance" добавлена поддержка новой стратегии "geometric" ("git config set maintenance.strategy geometric"), позволяющей сократить время обслуживания крупных монорепозиториев. По сравнению с ранее доступной стратегией, использующей логику как в команде "git gc", новая стратегия избегает переупаковки всех объектов и исключает излишне ресурсоёмкие операции, такие как слияние всех pack-файлов (по возможности объединение производится частями и без чистки удалённых объектов).
Добавлена команда "git sparse-checkout clean" для упрощения восстановления состояния рабочего каталога, путём удаления файлов, не соответствующих новому определению sparse-checkout, которые не должны присутствовать в локальной копии в соответствии с текущими параметрами sparse-checkout.
Для избавления кодовой базы от усложнений и упрощения сопровождения проведён рефакторинг для уменьшения использования глобальной переменной the_repository.
Расширено применение фильтров Блума, вероятностной структуры для проверки вхождения во множество, допускающей ложное определение отсутствующего элемента, но исключающая пропуск существующего элемента. Фильтры Блума теперь применяются для ускорения поиска в истории изменений при указании маскок в файловых путях, например, "foo/bar/*/baz".
Производительность команды "git describe" повышена до 30%, благодаря использовании очереди приоритетов. В "git remote rename" ускорены операции переименования ссылок. В "git ls-files" расширено применение индексов. Заметно ускорена работа команды "git log -L", благодаря исключению излишних трёхуровневых сравнений при обработке слияния коммитов. Внесены оптимизации в библиотеку xdiff.
Предоставлена опциональная возможность использования реализаций на языке Rust некоторых внутренних функций, таких как кодирование и декодирование целочисленных значений переменной длины. По умолчанию код на Rust не используется и для включения требует указания сборочного флага WITH_RUST. В будущем ожидается переработка на Rust более значительны внутренних компонентов Git и добавление Rust в число обязательных сборочных зависимостей в Git 3.0.
Обновлён список нарушающих совместимость изменений, которые будут применены в ветке Git 3.0. В Git 3.0 решено изменить настройку init.defaultBranch по умолчанию в значение "main", т.е. в репозиториях, созданных командой "git init", ветка по умолчанию будет именоваться "main", а не "master". Также отмечается переход по умолчанию на идентификаторы объектов на основе алгоритма хэширования SHA-256 при инициализации новых репозиториев. Для упрощения переносимости между репозиториями с идентификаторами объектов на базе хэшей SHA-1 и SHA-256 предоставлена возможность в репозитории с одним алгоритмом хеширования, выполнять операции push и pull из репозитория, использующего другой алгоритм хеширования.
Опубликован предварительный выпуск среды рабочего стола Budgie 10.10-preview.1, в котором полностью отказались от поддержки X11 и оставили только возможность работы в окружениях на базе протокола Wayland. Одновременно сформированы аналогичные тестовые выпуски для сопутствующих компонентов, таких как менеджер сеансов Budgie Session (форк gnome-session), набор пиктограмм Budgie Desktop View, интерфейс для настройки системы Budgie Control Center (форк GNOME Control Center), конфигуратор экрана Budgie Display Configurator и набор сервисов Budgie Desktop Services. Код проекта распространяется под лицензией GPLv2.
Выпуск примечателен достижением паритета функциональности апплетов при использовании Wayland со старым окружением на базе X11, доработкой MenuManager и стабилизацией нового интерфейса для настройки параметров экрана. В качестве композитного сервера рекомендовано использовать labwc на базе библиотеки wlroots, но в ветке Budgie 11 обещают добавить поддержку Kwin и композитных серверов на базе библиотек Mir.
Среди необходимых для сборки зависимостей заявлена библиотека libxfce4windowing, реализующая не зависящий от графической системы слой с элементами управления окнами (экраны, корневые окна, виртуальные рабочие столы и т.п.). Для создания панели и компонентов рабочего стола задействована библиотека gtk-layer-shell, использующая GTK3 и Wayland-протокол Layer Shell.
После релиза Budgie 10.10 ветка 10.x будет переведена в режим сопровождения, в котором допускается только исправление ошибок. В дальнейшем все ресурсы будут брошены на развитие ветки Budgie 11, примечательной отделением функциональности рабочего стола от слоя, обеспечивающего визуализацию и вывод информации. Разделение позволит абстрагировать код от конкретных графических тулкитов и библиотек.
Основу Budgie составляет панель, близкая по организации работы к классическим панелям рабочего стола. Все элементы панели являются апплетами, что позволяет гибко настраивать состав, менять размещение и заменять реализации основных элементов панели на свой вкус. Среди доступных апплетов можно отметить классическое меню приложений, систему переключения задач, область со списком открытых окон, просмотр виртуальных рабочих столов, индикатор управления питанием, апплет управления уровнем громкости, индикатор состояния системы и часы.
Опубликован 66-й выпуск рейтинга 500 самых высокопроизводительных компьютеров мира. Наиболее заметным изменением в рейтинге стало смещение Китая со второго на четвёртое место по числу суперкомпьютеров (на 2 и 3 места выбились Япония и Германия, три года назад Китай занимал первое место).
Десятка самых высокопроизводительных суперкомпьютеров в 66 редакции рейтинга не изменилась:
Кластер El Capitan, запущенный в Ливерморской национальной лаборатории Министерства энергетики США. Кластер насчитывает 11.3 миллионов процессорных ядер (CPU AMD EPYC 24C 1.8GH с ускорителем AMD Instinct MI300X) и обеспечивает производительность 1.809 экзафлопсов.
В качестве операционной системы применяется HPE Cray OS (редакция SUSE Linux Enterprise Server 15). За прошедшие 6 месяцев кластер был модернизирован - добавлено более 300 тысяч процессорных ядер, что повысило производительность с 1.742 до 1.809 экзафлопсов.
Кластер Frontier, размещённый в Ок-Риджской национальной лаборатории Министерства энергетики США. 9 млн процессорных ядер (CPU AMD EPYC 64C 2GHz, ускоритель AMD Instinct MI250X). Производительность 1.353 экзафлопсов. Операционная система HPE Cray OS.
Кластер Aurora, развёрнутый в Аргоннской национальной лаборатории Министерства энергетики США. 9.2 млн процессорных ядер (CPU Xeon CPU Max 9470 52C 2.4GHz, ускоритель Intel Data Center GPU Max). Производительность 1.012 экзафлопса. Операционная система SUSE Linux Enterprise Server 15 SP4.
Кластер JUPITER Booster, запущенный в суперкомпьютерном центре Юлих (Германия). Кластер насчитывает 4.8 млн процессорных ядер (NVIDIA GH200 Grace Hopper Superchip 72C 3GHz) и демонстрирует производительность 1 экзафлопс. Операционная система - RedHat Enterprise Linux. За шесть месяцев производительность кластера выросла с 793 петафлопсов до 1 экзафлопса.
Кластер HPC6 (итальянская нефтегазовая компании "Эни", 3 млн процессорных ядер (AMD EPYC 64C 2GHz), производительность в 477 петафлопс, ОС RHEL 8.9.
Кластер Fugaku (институте физико-химических исследований RIKEN (Япония), 158976 узлов на базе SoC Fujitsu A64FX (48-ядерные CPU Armv8.2-A SVE 2.2GHz), производительность 442 петафлопса, ОС Red Hat Enterprise Linux.
Кластер Alps (Швейцарский национальный суперкомпьютерный центр, 2.1 млн процессорных ядер (NVIDIA Grace 72C 3.1GHz), производительность 434 петафлопс, ОС HPE Cray OS.
Кластер LUMI (Европейский суперкомпьютерный центр (EuroHPC) в Финляндии, 2.2 млн процессорных ядер (AMD EPYC 64C 2GHz, ускоритель AMD Instinct MI250X, сеть Slingshot-11), производительность 379 петафлопс, ОС HPE Cray OS.
Кластер Leonardo (итальянский центр научных исследований CINECA, 1.8 миллиона процессорных ядер (CPU Xeon Platinum 8358 32C 2.6GHz), производительность 241 петафлопс.
Что касается отечественных суперкомпьютеров, то созданные компанией Яндекс кластеры Червоненкис, Галушкин и Ляпунов опустились с 75, 102 и 120 мест на 83, 115 и 140 места. Данные кластеры созданы для решения задач машинного обучения и обеспечивают производительность 21.5, 16 и 12.8 петафлопса соответственно. Кластеры работают под управлением Ubuntu 16.04 и оснащены процессорами AMD EPYC 7xxx и GPU NVIDIA A100: кластер Chervonenkis насчитывает 199 узлов (193 тысячи ядер AMD EPYC 7702 64C 2GH и 1592 GPU NVIDIA A100 80G), Galushkin - 136 узлов (134 тысячи ядер AMD EPYC 7702 64C 2GH и 1088 GPU NVIDIA A100 80G), Lyapunov - 137 узлов (130 тысяч ядер AMD EPYC 7662 64C 2GHz и 1096 GPU NVIDIA A100 40G).
Развёрнутый Сбербанком кластер Christofari Neo опустился сo 125 на 147 место. Christofari Neo работает под управлением NVIDIA DGX OS 5 (редакция Ubuntu) и демонстрирует производительность 11.95 петафлопса. Кластер насчитывает более 98 тысяч вычислительных ядер на базе CPU AMD EPYC 7742 64C 2.25GHz и поставляется с GPU NVIDIA A100 80GB. Второй кластер Сбербанка (Christofari) за полгода сместился с 201 на 233 место в рейтинге.
Из рейтинга выбыл отечественный кластер: Lomonosov 2, который полгода назад занимал 495 место (в 2015 году кластер Lomonosov 2 занимал 31 место, а его предшественник Lomonosov в 2011 году - 13 место). Всего в рейтинг вошло 5 российских кластеров (для сравнения с ноября 2024 по июнь 2025 года в рейтинге было 6 отечественных систем, c 2021 по 2024 год - 7, в 2020 году - 2, в 2017 году - 5, а в 2012 году - 12).
Наиболее интересные тенденции:
Распределение по количеству суперкомпьютеров в разных странах:
США: 172 (175 - полгода назад). Суммарная производительность оценивается в 46.5% от всей производительности рейтинга (полгода назад - 48.4%, год назад - 55.2%, полтора года назад - 34.2%);
В рейтинге операционных систем, используемых в суперкомпьютерах, c ноября 2017 года остаётся только Linux;
Распределение по дистрибутивам Linux (в скобках - 6 месяцев назад):
40.8% (38.2%) используют системы на базе Linux, но не детализируют дистрибутив;
20.8% (20%) - RHEL;
13.6% (11%) - Ubuntu;
9% (9.8%) - Cray Linux;
7.6% (8.2%) CentOS;
7.2% (5.8%) - Rocky Linux;
3.8% (4.2%) - SUSE;
1.8% (1.6%) - Alma Linux;
0.2% (0.2%) - Amazon Linux
Минимальный порог производительности для вхождения в Top500 за 6 месяцев составил 2.58 петафлопса (полгода назад - 2.44 петафлопса). Десять лет назад лишь 82 кластера показывали производительность более петафлопса. Для Top100 порог вхождения вырос с 16.59 до 18.2 петафлопсов, а для Top10 сохранился на отметке в 241 петафлопс.
Суммарная производительность всех систем в рейтинге за 6 месяцев возросла с 13.8 до 15 экзафлопсов (пять лет назад было 2.4 экзафлопса, десять лет назад - 0.42 экзафлопса). Система, замыкающая нынешний рейтинг, в прошлом выпуске находилась на 471 месте.
Общее распределение по количеству суперкомпьютеров в разных частях света выглядит следующим образом:
191 суперкомпьютер находится в Северной Америке (188 - полгода назад),
154 в Европе (161),
139 в Азии (136),
11 в Южной Америке (10),
4 в Океании (4),
1 в Африке (1).
В качестве процессорной основы лидируют CPU Intel - 57.2% (полгода назад было 58.8%), на втором месте AMD 33.6% (34.6%), на третьем NVIDIA Grace - 3.6% (2.6%), на четвёртом Fujitsu A64FX - 1.8% (1.8%) и на пятом IBM Power - 0.8% (0.8%).
20.2% (полгода назад 21.2%) всех используемых процессоров имеют 64 ядра, 15.2% (15.8%) - 24 ядра, 13% (11.8%) - 32 ядра, 10.8% (8.8%) - 56 ядер, 10.2% (9.6%) - 48 ядер, 6.2% (6.6%) - 20 ядер, 3.8% - 72 ядра, 3.6% (2.8%) - 96 ядер, 2.8% (4.6%) - 18 ядер, 2.4% (2.8%) - 28 ядер, 1.6% (2.6%) - 16 ядер. Суммарное число процессорных ядер во всех кластерах рейтинга за полгода сократилось с 137.7 млн до 135.7 млн.
252 из 500 систем (полгода назад - 234) дополнительно используют ускорители или сопроцессоры, при этом в 218 (201) системах задействованы чипы NVIDIA, в 29 (26) - AMD, в 4 (4) - Intel DataCenter GPU, в 1 (1) - Deep Computing Processor.
Среди производителей кластеров на первом месте закрепилась компания Lenovo - 28% (полгода назад 27.2%), на втором месте компания Hewlett-Packard Enterprise - 25.2% (26.4%), на третьем месте компания EVIDEN - 11.4% (11%), далее следуют Dell EMC 9.2% (8.2%), NVIDIA 6.6% (5.4%), Fujitsu 3% (3.4%), NEC 2.8% (2.8%),
Microsoft Azure - 1.6% (1.6%), MEGWARE 1.4% (1.4%), Supermicro 1.2% (0.8%), Penguin Computing - 1.4% (1.4%), ASUS 1.2%, IBM 0.8% (0.6%),
Inspur - 0.6% (1%).
InfiniBand применяется для связи узлов в 55.4% кластеров (полгода назад 54.2%), Ethernet используется в 33.8% (32.8%) кластеров, Omnipath - 6% (6.6%). Если рассматривать суммарную производительность, то системы на базе InfiniBand охватывают 42.6% (40.3%) всей производительности Top500, а Ethernet - 51.2% (52.2%).
Одновременно опубликован новый выпуск альтернативного рейтинга кластерных систем Graph 500, ориентированного на оценку производительности суперкомпьютерных платформ, связанных с симулированием физических процессов и задач по обработке больших массивов данных, свойственных для таких систем. Рейтинги Green500, HPCG (High-Performance Conjugate Gradient) и HPL-AI объединены с Top500 и отражаются в основном рейтинге Top500.
Эмма Смит (Emma Smith) и Кирилл Подопригора (Kirill Podoprigora), входящие в число ключевых разработчиков Python (core team), опубликовали предварительное предложение (Pre-PEP) о постепенном добавлении возможности использования языка Rust в кодовой базе CPython, эталонной реализации языка программирования Python. Изначально Rust предлагают использовать для необязательных модулей стандартной библиотеки, размещаемых в директории Modules/. В перспективе, к версии Python 3.17, Rust может стать обязательной зависимостью при сборке CPython.
Основные причины внедрения Rust — обеспечение безопасной работы с памятью, предотвращение ошибок категории use-after-free и выходов за границы буфера, а также упрощение разработки потокобезопасного кода, что особенно актуально в свете официальной поддержки сборки CPython без глобальной блокировки интерпретатора (GIL, Global Interpreter Lock) для распараллеливания операций на многоядерных системах (проект free-threaded Python).
Rust также предоставляет высокоуровневые, но производительные структуры данных и развитую систему метапрограммирования, включая гигиеничные макросы.
План внедрения:
Python 3.15 (2026 год): предупреждение при отсутствии Rust в окружении сборки.
Python 3.16 (2027 год): сборка возможна без Rust только с флагом "--with-rust=no".
Python 3.17 (2028 год): Rust может стать обязательным на этапе сборки.
Для взаимодействия с C API CPython предполагается использовать автоматически генерируемые привязки через bindgen, а не сторонние абстракции, такие как PyO3, чтобы избежать задержек при обновлении API. Вопросы управления зависимостями, кросс-компиляции и поддержки редких платформ находятся в стадии обсуждения.
В опубликованном предложении подчёркивается, что все платформы из документа PEP 11 поддерживаются Rust как минимум на уровне Tier 2. Некоторые устаревшие или нишевые системы (например, HPPA и RISC OS) не поддерживаются, однако их доля в экосистеме Python считается незначительной.
Представлен проект Marathon OS, развивающий дистрибутив Linux для мобильных устройств, сочетающий наработки из дистрибутива PostmarketOS с графической оболочкой Marathon Shell. Пользовательское окружение написано с использованием Qt и QML, и базируется на собственном композитном сервере, использующем протокол Wayland и воссоздающем модель управления жестами в стиле операционной системы BlackBerry 10. Код проекта написан на языках C++ и QML, и распространяется под лицензией MIT.
Возможна установка на устройства, поддерживаемые в PostmarketOS, но в качестве полностью протестированной эталонной платформы заявлен смартофон OnePlus 6 (Snapdragon 845).
Системное окружение основано на пакетной базе PostmarketOS и Alpine Linux. Ядро Linux собрано с опцией PREEMPT_RT, обеспечивающей работу в режиме реального времени. Корневой раздел монтируется в режиме только для чтения. Для работы на устройствах, поддерживаемых в платформе Android, применяется прослойка libhybris, позволяющая использовать драйверы Android, работающие в пространстве пользователя.
Для защиты данных применяется полнодисковое шифрование, а для изоляции приложений - механизм Landlock. В системе также применяется механизм разделения полномочий (Permission portal), позволяющий ограничивать возможности каждого приложения, например, можно запрещать или выборочно разрешать доступ к сети, сервису определения местоположения, камере, микрофону, адресной книге, хранилищу, bluetooth и телефонному стеку.
Marathon OS поддерживает как запуск программ, написанных с использованием собственного инструментария на базе Qt/QML, так и выполнение любых Linux-приложений, способных работать в окружении на базе Wayland. В ближайшее время также обещают задействовать пакет Waydroid для запуска Android-приложений. Для распространения и организации установки программ развивается каталог приложений Marathon Store.
В базовый набор программ включены менеджер приложений, web-браузер, календарь, калькулятор, программа для работы с камерой, галерея фотографий, карты, мессенджер, заметки, мультимедийный проигрыватель, конфигуратор и эмулятор терминала. Также для установки доступны типовые программы, такие как Firefox, GIMP и LibreOffice. Для поставки программ применяется свой формат пакетов (zip-архив + метаданные + цифровая подпись), но также поддерживается и установка пакетов в форматах Flatpak и Snap. Имеется прослойка для обеспечения совместимости с программами на базе GTK и технологий GNOME.
Для навигации в Marathon Shell применяется система экранных жестов в стиле BlackBerry 10 без использования навигационной панели. Например, для вывода списка приложений применяется сдвиг снизу вверх, для показа панели с быстрыми настройками - сдвиг сверху вниз, для показа списка уведомлений и сообщений - скольжение вправо от края. Заявлена сенсорная отзывчивость интерфейса на уровне 10-15 мс.
Предлагается унифицированный интерфейс для просмотра уведомлений и сообщений, позволяющий просматривать содержимое в хронологическом порядке, выполнять полнотекстовый поиск по всем сообщениям и быстро запускать типовые действия. В интерфейсе переключения между приложениями эскизы отображаются в live-режиме и отражают текущее состояние каждой запущенной программы. Отрисовка осуществляется с задействованием GPU для ускорения.
Управление и настройка сетевых и аппаратных возможностей осуществляется при помощи cистемных сервисов:
NetworkManager (WiFi и сетевой доступ), ModemManager (телефония и SMS), UPower (управление питанием и аккумуляторами, профили энергопотребления) и BlueZ (Bluetooth, сопряжение устройств). Также имеются сервисы для управления выводом, звуком и уведомлениями.
На текущем этапе развития уже работают базовые возможности, в процессе доведения до финальной готовности средства для работы с камерой и мультимедиа. Обеспечен вывод видео с частотой 60 кадров в секунду на смартфоне OnePlus 6. В планах отмечено начало производства собственного смартфона Marathon EV 1, оформленного в форм-факторе, близком к устройству BlackBerry Passport с выдвижной клавиатурой и размером, близким к размеру паспорта. Также из планов отмечается поддержка тем оформления GTK и KDE, обеспечение 10-летнего цикла сопровождения и формирование сборок для устройств OnePlus 6T и Poco F1.
Опубликован релиз Phosh 0.51, экранной оболочки для мобильных устройств, основанной на технологиях GNOME и библиотеке GTK. Окружение изначально развивалось компанией Purism в качестве аналога GNOME Shell для смартфона Librem 5, но затем вошло в число неофициальных проектов GNOME и используется в postmarketOS, Mobian, Droidian, некоторых прошивках для устройств Pine64 и редакции Fedora для смартфонов. Phosh использует композитный сервер Phoc, работающий поверх Wayland, а также собственную экранную клавиатуру. Наработки проекта распространяются под лицензией GPLv3+.
В быстрые настройки добавлена кнопка для включения/отключения определения местоположения.
В быстрых настройках функция "caffeine" расширена возможностью отключения перехода в спящий режим на выбранный промежуток времени.
Улучшено управление яркостью экрана. Автоматически выбираемый уровень яркости теперь рассчитывается по среднему диапазону значений освещённости.
Ползунок яркости переведён с изменения абсолютного значения к выставлению смещения относительно автоматически выбранного уровня яркости. Рядом с ползунком изменения яркости размещён индикатор включения автоматической установки яркости. Реализован визуальный эффект для плавного перехода к новому автоматически выбранному значению яркости. На блок состояния добавлена кнопка для включения/выключения автовыставления яркости.
Добавлена возможность настройки минимального уровня яркости фонарика через hwdb/udev.
Композитный сервер Phoc переведён на использование выпуска wlroots 0.19.2.
В конфигуратор phosh-mobile-settings добавлена поддержка выбора звука будильника. В верхнюю панель добавлена пиктограмма плагинов к блоку быстрых настроек. Расширены настройки громкости.
В xdg-desktop-portal-phosh добавлен сервис для генерации миниатюр (thumbnailer). При навигации по каталогам в интерфейсе выбора файла, отсутствующие миниатюры, информирующие о типах контента в файлах, теперь генерируются на лету.
В gmobile, набор обработчиков для работы GNOME на мобильных устройствах, добавлена информация об экране смартфона Fairphone 6.
Ранее проект развивал собственный рабочий стол NX Desktop, реализованный в форме надстройки над KDE Plasma, но теперь дистрибутив перешёл на поставку нового пользовательского окружения, построенного на базе композитного сервера Hyprland, панелей Waybar и Crystal Dock, меню приложений Wofi и меню завершения работы в системе Wlogout. Для запуска игр предложен композитный сервер Gamescope, развиваемый компанией Valve. Для вывода уведомлений задействован Sway Notification Center, а для показа экранных индикаторов - SwayOSD.
Композитный сервер Hyprland использует Wayland и предоставляет возможности для создания визуально привлекательных интерфейсов: градиенты в обрамлении окон, размытие фона, анимационные эффекты и тени. Для расширения функциональности могут подключаться плагины, а для внешнего управления работой предоставляется IPC на базе сокетов. Настройка осуществляется через файл конфигурации, изменения в котором подхватываются на лету без перезапуска. Из функций также выделяются: динамически создаваемые виртуальные рабочие столы; режимы компоновки элементов на экране; глобальная обработка горячих клавиш; управление жестами на тачпаде/сенсорном экране.
Другие изменения в выпуске Nitrux 5.0:
Для установки дополнительных программ задействованы инструментарий NX AppHub и формат AppBox, которые преподносятся как более предпочтительные, по сравнению с ранее используемым форматом AppImage. В дополнение к AppBox для установки программ поддерживаются
Flatpak и Distrobox.
Корневой раздел в дистрибутиве теперь монтируется в режиме только для чтения, а изменения накладываются при помощи инструментария NX Overlayroot (форк Overlayroot).
Вместо дисплейного менеджера SDDM для запуска сеанса задействован менеджер входа greetd и экран входа QtGreet.
Помимо пакета с ядром Linux 6.17.7, поставляемого с патчами Liquorix, предложен вариант ядра от проекта CachyOS. Добавлена поддержка механизма "sched_ext" (SCX), позволяющего использовать eBPF для создания планировщиков CPU.
Для редактирования настроек GTK3 задействован интерфейс nwg-look, а для конфигурирования вывода - nwg-displays.
Добавлены развиваемые компанией NVIDIA открытые модули ядра для GPU NVIDIA.
Для адаптивного изменения частоты экрана задействован фоновый процесс Hyprscreend.
В поставку включены программа для создания скриншотов Grimshot и архиватор Ark.
Из поставки удалены утилиты cmus, devmem2, ftp, kdotool и irqbalance. Прекращена поставка Waydroid, Kvantum Manager, KDEConnect.
Fcitx, AMD ROCm, dbab, DNScrypt-proxy, 0Install, Touchegg, PPPD, AIDE, Tor, torsocks, xpadneo, а также компонентов для поддержки протокола SPICE и гепервизора Hyper-V.
Обновлены версии пакетов, включая OpenRC 0.63, MauiKit/Maui Apps 4.0.2, NetworkManager 1.52.1, Pipewire 1.4.8, Flatpak 1.16.1, Podman 5.6.1, Docker 26.1.5, AppArmor 4.1.0, Python 3.13.7, Mesa 25.2.3,
XWayland 24.1.8, KDE Frameworks 6.13.0, Qt 6.8.2, Bluez 5.84.
Инсталлятор Calamares обновлён до версии 3.3.14.
Опубликован выпуск браузерного движка Servo 0.0.2 и развиваемого вместе с ним демонстрационного браузера ServoShell, написанных на языке Rust. По функциональности выпуск аналогичен ночной сборке от 14 ноября, для которой проведено дополнительное ручное тестирование. Готовые сборки предоставлены для Linux, Android, macOS и Windows.
Движок изначально развивался компанией Mozilla, но затем перешёл под покровительство организации Linux Foundation. Servo отличается поддержкой многопоточного рендеринга web-страниц, распараллеливанием операций с DOM (Document Object Model) и задействованием предоставляемых языком Rust механизмов безопасного программирования. Servo изначально создан с поддержкой разбиения кода DOM и рендеринга на более мелкие подзадачи, которые могут выполняться параллельно и более эффективно использовать ресурсы многоядерных CPU. В Firefox уже интегрированы некоторые части Servo, такие как многопоточный CSS-движок и система отрисовки WebRender.
В движке отрисовки реализовано синтезированное жирное начертание символов (synthetic bold), при котором символы утолщаются программно без использования отдельного начертания шрифта.
Добавлена поддержка vsync для синхронизации начала отрисовки с кадровым гасящим импульсом.
Началось формирование родных arm64-сборок браузера ServoShell для macOS.
В прототипе браузера ServoShell для Android реализован экспериментальный режим, при котором активируются отключённые по умолчанию экспериментальные возможности, ещё до конца не стабилизированные и находящиеся в разработке. Обеспечена доставка событий касания к сенсорному экрану и вывод экранной клавиатуры при активации форм ввода событиями сенсорного экрана. Добавлена поддержка масштабирования щипком. Разрешена прокрутка экранной клавиатуры при её масштабировании.
Разработчики репозитория Python-пакетов PyPI (Python Package Index) внедрили дополнительный этап проверки во время входа, требующий подтверждения операции по email в случае подключения с устройства или браузера, с которого раннее не производился вход. Подтверждение требуется в дополнение к имеющейся двухфакторной аутентификации, требующей ввод одноразового кода (TOTP - Time-based One-Time Password) помимо обычных учётных данных. При использовании в качестве второго фактора аутентификации ключей на базе технологий WebAuthn или Passkeys, дополнительное подтверждение по email не требуется.
В качестве причины добавления новой проверки называется усиление защиты от фишинга. С недавних пор для обхода защиты при помощи двухфакторной аутентификации атакующие перешли к применению прозрачного проксирования трафика с фишинговых сайтов на реальный сайт pypi.org, из-за чего у пользователя создаётся ощущение работы с реальным каталогом PyPI. Страница входа также проксируется и атакующие контролируют не только изначально введённый пароль входа, но и ответ на проверочный запрос второго фактора аутентификации.
Дополнительный запрос подтверждения полномочий с предупреждением о попытке входа с нового устройства предотвратит компрометацию в случае перехвата TOTP-кода и пароля, а также насторожит разработчиков, не менявших оборудование. В ходе проксирования атакующие могут перехватить параметры учётной записи и введённый одноразовый код TOTP, но не могут повлиять на подтверждение по еmail, требующее клика на указанной внутри письма ссылке.
Если пользователь получил проверочное письмо, но не пытался войти в каталог PyPI, то не следует переходить по ссылке. Если попытка входа была, но устройство не менялось, следует проверить не была ли попытка входа через фишинговый сайт и в случае выявления атаки срочно поменять пароль и проверить активность в учётной записи.
В ноябрьском бюллетене безопасности Android опубликована информация об уязвимости CVE-2025-48593 в подсистеме Bluetooth, которая затрагивает версии Android с 13 по 16. Уязвимости присвоен критический уровень опасности (9.8 из 10) так как она может привести к удалённому выполнению кода при обработке специально оформленных Bluetooth-пакетов.
Компания Google пока не раскрывает детального описания уязвимости, но независимые исследователи утверждают, что проблема не затрагивает обычные смартфоны и касается только Bluetooth-устройств, способных выступать в роли громкоговорителя, таких как умные колонки, умные часы и автомобильные информационно-развлекательные системы. Для эксплуатации требуется, чтобы пользователь выполнил сопряжение своего устройства с устройством атакующего, т.е. для блокирования проблемы обходным путём достаточно не принимать сомнительные запросы на сопряжение (в бюллетене Google упомянуто, что для эксплуатации не требуется совершение действий пользователем).
Исправление сводится к добавлению вызова для проверки существования Discovery Database при работе с Bluetooth-профилем Handsfree и остановки поиска пиров с использованием протокола SDP (Service Discovery Protocol), а также сбросу и очистке структуры p_disc_db ("discovery database). Определённые манипуляции по возвращению ошибок и возобновлению соединений в процессе определения Bluetooth-сервиса и согласования взаимодействия сервера с клиентом приводят к обращению к уже освобождённой области памяти (use-after-free).
Исправление уже перенесено в кодовую базу LineageOS. Доступен ранний прототип эксплоита, вызывающий аварийное завершение при запуске Android в специальном эмуляторе. В сети также замечены попытки продажи рабочего эксплоита, но, судя по всему, это попытки распространения вредоносного ПО или продажи пустышки мошенниками.
Кроме этой уязвимости, в ноябрьском обновлении Android присутствует исправление уязвимости CVE-2025-48581, приводящей к повышению привилегий. Проблема затрагивает только Android 16 и помечена как опасная.
Причиной уязвимости является логическая ошибка в функции VerifyNoOverlapInSessions из файла apexd.cpp, позволяющая блокировать установку обновлений с исправлением проблем безопасности. Отмечается, что уязвимость можно использовать для локального повышения привилегий. Для совершения атаки не требуется выполнение действий пользователем.
Компания Red Hat представила релиз дистрибутива Red Hat Enterprise Linux 10.1, а также обновление прошлой ветки - Red Hat Enterprise Linux 9.7. Готовые установочные образы доступны для зарегистрированных пользователей Red Hat Customer Portal (для оценки функциональности можно использовать общедоступные iso-образы CentOS Stream 10, а также бесплатные сборки RHEL для разработчиков). Выпуск сформирован для архитектур x86_64, s390x (IBM System z), ppc64le (POWER9), Aarch64 (ARM64) и RISC-V (preview). В соответствии с 14-летним циклом поддержки дистрибутива RHEL 10 будет сопровождаться до 2035 года + 4 года расширенной платной поддержки. Обновления для RHEL 9 продолжат выпускаться до конца мая 2032 года, а RHEL 8 - 2029 года.
Пакеты RHEL не размещены в публичном репозитории git.centos.org и предоставляются клиентам компании только через закрытый раздел сайта, на котором действует пользовательское соглашение (EULA), запрещающее редистрибуцию данных, загруженных через клиентский портал, что создаёт юридические риски при использовании этих пакетов для создания производных дистрибутивов. Исходные тексты RHEL остаются доступны в репозитории CentOS Stream, но он не полностью синхронизирован с RHEL и версии пакетов в нём не всегда совпадают с пакетами из RHEL. Rocky Linux, Oracle и SUSE воспроизводят исходные тексты rpm-пакетов релизов RHEL в рамках проекта OpenELA.
Основные изменения в RHEL 10.1 (большинство из отмеченных изменений присутствует и в RHEL 9.7):
Во всех системных криптографических политиках (crypto-policies) по умолчанию включены постквантовые алгоритмы шифрования. Библиотека OpenSSL обновлена до версии 3.5 с поддержкой постквантовых криптоалгоритмов ML-KEM, ML-DSA и SLH-DSA, поддержкой протокола QUIC и добавлением гибридного варианта ML-KEM в группу алгоритмов, применяемых по умолчанию в TLS. В пакет rpm-sequoia добавлена поддержка OpenPGP v6.
Добавлена поддержка eDNS (Encrypted DNS), позволяющая использовать протокол DoT (DNS over TLS) для шифрования DNS-трафика.
Добавлена поддержка цифровых подписей пакетов, реализованных в формате RPM6. Предоставлена экспериментальная поддержка заверения цифровой подписью RPM-пакетов, используя инструментарий Sequoia PGP.
В пакетном менеджере RPM реализовано сохранение контрольных сумм SHA256 и SHA512 каждого устанавливаемого rpm-пакета, для того чтобы в последующем убедиться, что установленный пакет соответствует заданному rpm-файлу.
В systemd реализована поддержка мягкой перезагрузки (команда "systemctl soft-reboot"), приводящей к перезапуску только компонентов пространства пользователя, не трогая ядро Linux. В данном режиме при перезагрузке не применяются стадии инициализации оборудования, вызова загрузчика, запуска и загрузки ядра, инициализации драйверов, загрузки прошивок и обработки initrd, что позволяет заметно ускорить перезапуск и уменьшить время простоя во время обновления окружений, использующих готовые системные образы. В режиме soft-reboot осуществляется завершение работы всех процессов в пространстве пользователя, замена образа корневой ФС на новую версию и запуск процесса инициализации системы, не перезагружая ядро.
Предоставлена возможность установки стеков высокопроизводительных вычислений, таких как CUDA от NVIDIA и ROCm от AMD, из репозиториев, поддерживаемых Red Hat в сотрудничестве с NVIDIA и AMD.
Добавлен новый AppStream-компонент и утилита rhel-drivers для упрощения установки и обновления сторонних драйверов к GPU и AI-ускорителям. Поддерживается установка сложных наборов драйверов из репозиториев RHEL, например, охватывающих модуль ядра NVIDIA и библиотеки CUDA. Для установки необходимых драйверов в большинстве случаев теперь достаточно выполнить "dnf install rhel-drivers; rhel-drivers install --auto-detect".
В ядро Linux добавлена подсистема fwctl (Firmware Control), предоставляющая API для безопасного управления прошивками и выполнения обработчиков на стороне прошивок из пространства пользователя.
Улучшены возможности ядра, связанные с отслеживанием состояния системы и энергопотребления. Добавлена поддержка аппаратных счётчиков производительности CPU Intel Panther Lake. Добавлена возможность отслеживания энергопотребления при помощи событий интерфейса Intel RAPL (Running Average Power Limit) на системах с CPU Intel Arrow Lake U. Добавлена поддержка идентификаторов устройств Intel Trace Hub (NPK) на системах с CPU Intel Panther Lake, а также core- и uncore-событий на системах с CPU Intel Clearwater Forest. Предоставлена поддержка сбора данных об энергопотреблении каждого ядра CPU на системах с CPU AMD Milan. Расширены возможности отладки в отладчике python-drgn.
Подсистема eBPF синхронизирована с ядром 6.14. Инструментарий perf синхронизирован с ядром 6.15.
Расширены возможность инструментария для создания собственных загрузочных образов (Image Builder). Добавлен экспериментальный вариант Image Builder, работающий из командной строки без GUI. Реализована возможность формирования образов для Windows-подсистемы WSL2 (Windows Subsystem for Linux). Реализован новый тип образов vagrant-libvirt и добавлена поддержка libvirt для упрощения запуска виртуальных машин с RHEL при помощи инструментария Vagrant.
Под защиту SELinux переведены systemd-сервисы switcheroo-control
и tuned-ppd. Модули с политиками для SELinux, связанные с пакетами из репозитория EPEL, перемещены в репозиторий CRB в пакеты с окончанием "-extra".
Добавлена поддержка идентификации типов устройств virtio, используемых в гостевых системах, при помощи команды lszdev (ранее все подобные устройства имели тип generic-ccw).
В пакет с realtime-вариантом ядра добавлены модули для гипервизора KVM (ранее для них собиралось отдельное ядро kernel-rt-kvm).
В системное окружение инсталлятора добавлена команда "rpm". В загрузочное меню установочных образов добавлена опция
"fips=1" для включения на этапе инсталляции режима выполнения требований FIPS 140 (Federal Information Processing Standards) при генерации ключей.
В сетевом конфигураторе NetworkManager реализована возможность прикреплять отдельные настройки перенаправления пакетов IPv4 к сетевым интерфейсам, используя опцию "ipv4.forwarding". Добавлена настройка "prefix-delegation", позволяющая использовать свойство "subnet-id" для выбора подсети на нижестоящем сетевом интерфейсе при использовании делегирования префиксов IPv6. В утилиту nmtui добавлена возможность настройки loopback-интерфейса.
Для СУБД PostgreSQL добавлено дополнение PostGIS.
В Glibc перенесены функции sched_setattr и sched_getattr, через которые можно выставить/прочитать параметры планировщика задач. На практике функции позволяют настраивать политики планирования запросов, такие как SCHED_DEADLINE, в которых используются дополнительные параметры, помимо приоритета.
В IdM добавлена полная поддержка HSM (Hardware Security Modules). Объявлена стабильной возможность использования команды ipa-migrate для переноса всех IdM-данных, таких как правила sudo, HBAC, диапазоны DNA, списки хостов и сервисов, с одного IdM-сервера на другой.
В SSSD улучшена аутентификация при помощи смарткарт в окружениях с несколькими одновременно подключёнными токенами PKCS#11. Добавлена опция ldap_read_rootdse для управления тем, как SSSD читает содержимое RootDSE (Root Directory Service Entry).
В контейнерах Toolbx, созданных на базе образов UBI, обеспечена работа из коробки OpenGL и Vulkan без необходимости ручной установки связанных с данными API компонентов Mesa.
Для виртуальных машин, запускаемых на хост-системах с архитектурой ARM64, реализована поддержка live-снапшотов, режимов миграции "Pre-copy", "Post-copy" и "Multi-FD", live-миграции с virtiofs.
Добавлена поддержка прямой загрузки ядра в виртуальных машинах, настроенных для работы в режиме SecureBoot.
Улучшена поддержка воспроизводимой сборки контейнеров. Добавлен новые образы контейнеров rhel10/valkey-8, rhel10/nodejs-24 и rhel10/nodejs-24-minimal с преднастроенными СУБД Valkey и платформой Node.js.
Для систем ARM64 предоставлена экспериментальная поддержка инструментария ReaR (Relax-and-Recover) и архитектуры CCA (Confidential Compute Architecture) в виртуальных машинах.
Добавлен экспериментальный вариант устройства vDPA (virtio Data Path Acceleration), реализованный в пространстве пользователя при помощи фреймворка VDUSE. VDUSE позволяет создавать виртуальные блочные устройства в пространстве пользователя и применять Virtio в качестве транспорта для доступа из гостевых систем.
Реализована экспериментальная возможность использования механизма Virtual Socket (vsock) для бриджинга TCP, позволяющего организовать в виртуальных машинах работу сетевых сервисов, таких как SSH, без настройки сети (осуществляется прямой проброс соединений из хост-окружения в сервис через vsock).
Объявлены устаревшими FTP клиенты и серверы: ftp,
lftp и vsftpd. Переведена в разряд неподдерживаемых и запланированных к удалению утилита ipset.
Добавлены новые драйверы:
intel_vpu для Intel NPU (Neural Processing Unit),
tuner для разных моделей TV-тюнеров,
btmtk для Bluetooth-чипов MediaTek,
tpm_svsm для SNP SVSM vTPM (virtual Trusted Platform Module),
ae4dma для AMD AE4DMA,
ptdma для AMD PassThru DMA,
ch7006 для TV-кодировщика Chrontel ch7006,
cirrus-qemu для эмуляции видеокарт Cirrus Logic,
drm_gpusvm для DRM GPUSVM,
hid-corsair-void для ганитур Corsair Void,
intel-thc для Intel Touch Host Controller,
intel-quicki2c для Intel QuickI2C,
intel-quickspi для Intel QuickSPI,
cx231xx для USB-видеокарты Conexant cx231xx,
cx25840 для аудио/видео декодера Conexant CX25840,
as21xxx для сетевых карт Aeonsemi AS21xxx,
iwlmld для беспроводных устройств Intel MLD,
mxl-86110 для сетевых карт MaxLinear MXL86110,
microchip_rds_ptp для Microchip PHY RDS PTP,
realtek для сетевых карт Realtek,
gs_usb для USB интерфейсов для шины CAN от Geschwister Schneider и candleLight,
amd_3d_vcache - AMD 3D V-Cache Performance Optimizer.
Компания Google подвела итоги использования компонентов на языке Rust в платформе Android. Стратегия по внедрению в Android методов безопасной разработки для нового кода оказалась успешной. В 2025 году впервые доля уязвимостей, вызванных ошибками при работе с памятью, оказалось меньше 20% от общего числа уязвимостей. Для сравнения в 2024 году этот показатель в Android составлял 24%, а в 2019 году - 76%. При этом средний показатель по индустрии продолжает оставаться на уровне 70%.
Использование кода на Rust при разработке системных компонентов Android началось в 2020 году. В 2025 году объём нового кода на Rust в Android превысил объём добавляемого за год кода на C и C++.
Накопленная статистика подтверждает ранее высказанное предположение, что основным источником проблем с безопасностью является новый код, а для старого кода наблюдается экспоненциальная зависимость безопасности от времени - со временем в старом коде ошибки выявляются всё реже и реже. В конечном счёте в Google решили не пытаться переписать старый код на языках безопасно работающих с памятью, а сосредоточиться на использовании подобных языков для нового кода.
Помимо безопасности внедрение Rust положительно повлияло на скорость, продуктивность и качество разработки. Для кода на Rust зафиксировано в 4 раза меньше откатов изменений в результате выявления непредвиденных ошибок, а также снижение времени рецензирования на 25%.
При включении в состав Android изменений сопоставимого размера, изменения на Rust требуют примерно на 20% меньше ревизий, чем их эквиваленты на C++.
Данные показатели объясняются упрощением тестирования и смещением выявления ошибок на ранние стадии разработки, на которых ошибки становятся заметны ещё до того, как разработчик приступает к проверке кода. Кроме того, за счёт исключения накладных расходов на sandbox-изоляцию в коде на Rust удалось добиться повышения производительности.
Из недавних проектов, связанных с использованием Rust в Android, отмечено задействование в ядре Linux 6.12 первого широко применяемого драйвера на языке Rust, а также использование Rust при разработке прошивок и прикладных приложений. Помимо уже применяемого в ядре драйвера на Rust, совместно с компаниями ARM и Collabora на данном языке развивается новый драйвер GPU. Реализован на языке Rust и задействован в Google Play Services протокол Nearby Presence для обнаружения локальных устройств по Bluetooth. Для включения в следующий релиз приложения Google Messages запланировано включение новой реализации протокола MLS, написанной на Rust. В браузерном движке Chromium задействованы написанные на Rust парсеры для web-шрифтов, изображений PNG и формата JSON.
В настоящее время в Android на Rust написано около 5 млн строк кода, в которых выявлена лишь одна потенциальная уязвимость, вызванная проблемами при работе с памятью. Таким образом плотность подобных уязвимостей в коде на Rust составила 0.2 уязвимости на миллион строк кода. Для сравнения в коде на языках C и C++ данный показатель составляет около 1000 уязвимостей на миллион строк кода. Ключевым источником проблем в Rust является код, находящийся в unsafe-блоках. Доля подобного кода оценивается в 4% от всего кода, написанного на Rust.
Отмеченная выше уязвимость CVE-2025-48530 найдена в библиотеке Crabby Avif, включающей парсер и декодировщик для формата Avif. Проблема была выявлена сотрудниками Google до публикации релиза и не затронула пользователей. Уязвимость вызвана ошибкой в unsafe-блоке, приведшей к переполнению буфера. Отмечается, что даже если бы ошибка не была замечена её эксплуатация была бы блокирована поставляемой в Android системой распределения памяти Scudo, по умолчанию задействованной в прошивках для Google Pixel и некоторых других устройств.
В LightDM KDE Greeter, развиваемой проектом KDE реализации экрана входа в систему, построенной на фреймворке LightDM, выявлена уязвимость (CVE-2025-62876), позволяющая поднять привилегии с непривилегированного пользователя lightdm, под которым запускается LightDM, до пользователя root. Уязвимость устранена в версии lightdm-kde-greeter 6.0.4.
Уязвимость выявлена командой проекта SUSE после рецензирования заявки на добавление пакета lightdm-kde-greeter в репозиторий openSUSE Tumbleweed. Проблема присутствует в DBus-сервисе, позволяющем пользователям настраивать собственные темы оформления экрана входа в систему. Сервис реализован в форме обработчика KAuth, запускаемого с правами root. Уязвимость вызвана наличием в коде отдельной логики для обработки настроек, начинающихся со строки "copy_". Для подобных настроек с правами root вызывалась функция, копирующая заданный файл в каталог /var/lib/lightdm, принадлежащий пользователю lightdm. Данная операция применялась для загрузки изображений из каталога пользователя, которые LightDM не мог прочитать напрямую во время отображения экрана входа в систему из-за прав доступа.
Операция копирования выполняется с правами root и после копирования меняется владелец результирующего файла, поэтому данную возможность можно использовать для копирования в публично доступный каталог /var/lib/lightdm файлов, к которым обычные пользователи не имеют доступа, таких как /etc/shadow. Более того, через создание в каталоге /var/lib/lightdm символической ссылки с именем переносимого файла можно организовать перезапись любых файлов в системе.
Если выполнение обработчика смены темы оформления LightDM разрешено в настройках Polkit для непривилегированных пользователей, то рассмотренная уязвимость позволяет поднять привилегии любого пользователя до root. Тем не менее, на практике в Polkit для выполнения данного действия обычно требуется право "auth_admin_keep", подразумевающее необходимость ввода пароля администратора. В этих условиях атака может быть совершена при наличии доступа с правами пользователя lightdm.
Так как для совершения атаки требуются манипуляции с правами пользователя lightdm проблеме присвоен низкий уровень опасности. Предполагается, что уязвимость может применяться в качестве второго звена для повышения привилегий после успешной эксплуатации иной уязвимости в LightDM, позволившей получить доступ к выполнению кода с правами пользователя lightdm.