The OpenNET Project / Index page

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

·28.07.2025 Релиз ядра Linux 6.16 (79 +18)
  После двух месяцев разработки Линус Торвальдс представил релиз ядра Linux 6.16. Среди наиболее заметных изменений: драйвер для ускорения OpenVPN, механизм Kexec HandOver, включение по умолчанию пятиуровневых таблиц страниц памяти для x86, удаление протокола DCCP, блочный драйвер zloop, возможность отправки core-дампов через UNIX-сокет, поддержка атомарной записи в XFS, offload-обработка звука для USB-устройств, оптимизации в Ext4, виртуальный драйвер TPM (Trusted Platform Module), полноценная реализация Device Memory TCP, поддержка неименованных каналов в io_uring, подготовка к интеграции DRM-драйвера Asahi, механизм "usermode queue" в драйвере AMDGPU, поддержка Intel TDE (Trusted Domain Extensions) и Intel APE (Advanced Performance Extensions).

В новую версию принято 15924 исправления от 2145 разработчиков, размер патча - 50 МБ (изменения затронули 13793 файла, добавлена 655451 строка кода, удалена 316441 строка). В прошлом выпуске было 15945 исправлений от 2154 разработчиков, размер патча - 59 МБ . Около 45% всех представленных в 6.16 изменений связаны с драйверами устройств, примерно 16% изменений имеют отношение к обновлению кода, специфичного для аппаратных архитектур, 13% связано с сетевым стеком, 4% - с файловыми системами и 3% c внутренними подсистемами ядра.

Основные новшества в ядре 6.16:

  • Дисковая подсистема, ввод/вывод и файловые системы
    • Добавлен драйвер zloop для создания зонированных блочных loopback-устройств, монтируемых в loop-режиме. Драйвер эмулирует работу обычных блочных устройств, используя несколько файлов из существующей файловой системы (по одному файлу для хранения каждой зоны). Данная возможность может быть полезной для тестирования файловых систем, обработчиков device mapper и приложений на предмет поддержки в них зонированных устройств, применяющих разделение на зоны групп блоков или секторов, в которые допускается лишь последовательное добавление данных с обновлением целиком всей группы блоков.
    • В файловой системе XFS реализована поддержка атомарной записи больших порций данных - несколько блоков теперь могут быть записаны в атомарном режиме (либо все блоки будут записаны успешно, либо ни один блок не будет записан).
    • В файловой системе Ext4 повышена производительность механизма "fast commit". Добавлена поддержка больших фолиантов страниц памяти (large folios) для обычных файлов, что в проведённых тестах на 37% повысило производительность при интенсивном последовательном вводе/выводе. Добавлена поддержка атомарных операций записи, охватывающих несколько блоков.
    • В драйвере для файловой системы ext2 объявлена устаревшей поддержка механизма DAX, обеспечивающего прямой доступ к ФС в обход страничного кэша. Удаление DAX из драйвера ext2 намечено на конец года. В качестве причины упоминается рассмотрение драйвера ext2 как стабильной эталонной реализации, в которой недопустимо использование специфичных возможностей, не получивших должного распространения.
    • Файловые системы OrangeFS, UFS, BFS и OMFS переведены на использование нового API монтирования разделов.
    • В sysctl добавлена настройка vfs_cache_pressure_denom, для управления числом записей в кэше "dentry" (внутреннее представление элементов каталогов) в условиях нехватки памяти в системе. Чем больше выставлено значение, тем больше может быть вытеснено записей из кэша (меньше записей останется в кэше) при нехватке памяти.
    • В ФС Bcachefs добавлена опция "rebalance_on_ac_only", запрещающая выполнение операций ребалансировки и фонового сжатия при питании системы от аккумулятора. Ускорены операции удаления снапштов и устройств. Снижено потребление памяти при монтировании в режиме только для чтения. Добавлена возможность запуска некоторых операций восстановления после сбоя в фоновом режиме, не останавливая работу с ФС.
    • Подсистеме управления питанием разрешено самостоятельно выполнять заморозку файловых систем и переменных EFI для ждущего и спящего режимов (если ФС уже заморожены обработчиком в пространстве пользователя повторная заморозка не производится).
    • Добавлена возможность ускорения работы EROFS при помощи встроенного в процессоры Intel ускорителя QAT (QuickAssist Technology), предлагающего средства для ускорения вычислений, связанных со сжатием и шифрованием.
    • В NFS с 1 до 4 МБ увеличен максимальный размер порции данных для операций чтения и записи (по умолчанию выставлено значение 1 МБ, так как не все клиенты поддерживают больший размер).
    • Непривилегированным пользователям, имеющим права CAP_SYS_ADMIN в отдельном пространстве имён идентификаторов пользователя (user namespace), но не имеющим расширенных прав в корневом пространстве имён, предоставлена возможность использования механизма fanotify для отслеживания изменений в файловых системах.
    • Для файловых систем, использующих подсистему FUSE, предоставлена функциональность для очистки разом всех прокэшированных записей о каталогах (dentries). В подсистему FUSE добавлена поддержка больших фолиантов страниц памяти.
    • В ФС ОverlayFS реализована поддержка создания в непривилегированных пространствах имён слоёв с данными, для которых используется контроль целостности на базе модуля dm-verity. Указанная возможность позволяет комбинировать заслуживающие доверия слои с метаданными с не заслуживающими доверия слоями с данными, обрабатываемыми в непривилегированных пространствах имён.
  • Память и системные сервисы
    • Добавлен механизм KHO (Kexec HandOver) для запуска нового ядра из старого без потери состояния системы. До передачи управления новой версии ядра, состояние ключевых подсистем ядра при помощи KHO может быть сериализировано в область памяти, которая не будет затронута дальнейшими операциями. Новое ядро, получив управление, восстанавливает сериализированное состояние обратно. На базе KHO развивается подсистема Live Update Orchestrator (LUO), позволяющая перезагружать ядро без остановки работы устройств.
    • Добавлен параметр сборки ядра CONFIG_X86_NATIVE, позволяющая использовать при компиляции опцию "-march=native" для оптимизации с учётом возможностей процессора на текущей системе.
    • Добавлена поддержка расширения архитектуры набора команд Intel APX (Advanced Performance Extension), предоставляющего 16 дополнительных регистров общего назначения (в дополнение к 16 имеющимся), что позволяет использовать в коде меньше операций чтения и записи в память для повышения производительности и снижения потребления энергии.
    • Добавлен режим автоматической настройки политики распределения памяти в NUMA-системах, при котором все веса узлов пересчитываются при появлении новой информации о пропускной способности во время загрузки или при горячем подключении памяти.
    • В реализации futex-ов появилась поддержка локальной хэш-таблицы процессов (local futex_hash_bucket), которая в отличие от ранее поддерживаемой общей хэш-таблицы для всех процессов, является локальной для отдельного процесса и совместно используется всеми потоками этого процесса. Локальные хэш-таблицы применяются только для futex-операции PROCESS_PRIVATE. Кроме того, в новом выпуске добавлена поддержка опций FUTEX2_NUMA и FUTEX2_MPOL, позволяющих влиять на размещение futex-ов в памяти, для их помещения ближе к процессам, которые их используют.
    • Для систем x86_64 включена постоянная поддержка пятиуровневых таблиц страниц памяти (параметр CONFIG_X86_5LEVEL, управлявший включением пятиуровневых таблиц, удалён).
    • В драйвер intel_pstate, управляющий параметрами энергопотребления (P-state) на системах с процессорами Intel, добавлена поддержка работы планировщика задач с учётом потребления энергии (EAS - Energy Aware Scheduling) на гибридных процессорах, сочетающих высокопроизводительные и энергоэффективные ядра CPU, таких как Intel Lunar Lake.
    • В sysfs добавлены интерфейсы: "/sys/devices/system/cpu/cpuN/cpu_capacity" для получения сведений о возможностях различных CPU в гибридных процессорах и "/sys/devices/system/cpu/cpuidle/intel_c1_demotion" для управления возможностью оставления CPU в более производительном состоянии, даже если ядро пытается перевести CPU в более низкое состояние энергопотребления (например, ядро может запросить переход в состояние энергопотребления C6, но прошивка при большой интенсивности пробуждения CPU может оставить его в состоянии C1).
    • Для архитектуры ARM64 включена поддержка режима ленивого вытеснения задач (PREEMPT_LAZY, lazy preemption), который соответствует режиму полного вытеснения ("full preemption") для realtime-задач (RR/FIFO/DEADLINE), но задерживает вытеснение обычных задач (SCHED_NORMAL) до границы тика.
    • Для архитектуры ARM64 добавлена поддержка использования расширений SME (Scalable Matrix Extension), включаемая через параметр CONFIG_ARM64_SME.
    • Продолжен перенос изменений из ветки Rust-for-Linux, связанных с использованием языка Rust в качестве второго языка для разработки драйверов и модулей ядра (поддержка Rust не активна по умолчанию, и не приводит ко включению Rust в число обязательных сборочных зависимостей к ядру). Для модулей, написанных на языке Rust, предоставлена возможность использования configfs. Добавлены абстракции, необходимые для разработки графических драйверов. Расширены возможностей модулей alloc, time, str, list, workqueue и page. Добавлена поддержка макроса "assert!" в тестах на базе KUnit. Добавлен набор абстракций для управления частотой CPU и использования API, связанных с управлением энергопотреблением. Добавлена поддержка структуры данных 'xarray'.
    • Для архитектуры RISC-V перенесена реализация системного вызова getrandom(), оптимизированная при помощи механизма vDSO (virtual dynamic shared object), дающего возможность перенести обработчик системного вызова из ядра в пространство пользователя и избежать переключений контекста. В проведённых тестах оптимизация ускорила получение случайных чисел в 17 раз. Для RISC-V также реализована поддержка векторных расширений Zicbop, Zabha и Svinval, применяемых в процессорах SiFive.
    • Для архитектуры LoongArch лимит на число CPU в системе поднят с 256 до 2048. Добавлена поддержка планировщика задач SCHED_MC (Multi-core).
    • Добавлена возможность использования Unix-сокетов для передачи файловых дескрипторов. Для отключения подобной возможности приложения могут использовать в setsockopt() флаг SO_PASSRIGHTS.
    • Предоставлена возможность маппинга кольцевого буфера, применяемого для трассировки работы ядра, в память пространства пользователя.
    • Обработчики crash-dump, применяемые для формирования отчёта о проблеме после аварийного завершения работы ядра, теперь могут задействовать использовавшиеся сбойным ядром LUKS-ключи для сохранения crash-дампов в шифрованные ФС.
    • В систему асинхронного ввода/вывода io_uring добавлена операция IORING_OP_PIPE для создания неименованных каналов, которая аналогична системному вызову pipe2, за исключением поддержки фиксированных файловых дескрипторов.
    • Добавлена опция командной строки ядра "rt_group_sched" для управления включением планировщика выполнения групп realtime-задач (SCHED_RR). Опция аналогична настройке RT_GROUP_SCHED в Kconfig.
    • Для устройств на базе шины CXL (Compute Express Link), применяемой для организации высокоскоростного взаимодействия CPU с устройствами памяти, реализована поддержка расширений RAS (Reliability, Availability, Serviceability), позволяющих реализовывать различные схемы определения и коррекции ошибок. CXL позволяет подключать новые области памяти, предоставляемые внешними устройства памяти, и использовать их как дополнительные ресурсы физического адресного пространства для расширения системной оперативной памяти (DDR) или постоянной памяти (PMEM).
    • Необходимая для сборки ядра минимальная версия GCC для всех архитектур поднята до ветки GCC 8. Для сборки теперь также необходима как минимум версия пакета binutils 2.30.
    • Удалён системный вызов uselib(), который уже давно объявлен устаревшим и вместо него для совместного доступа программ к разделяемым библиотекам используется mmap().
  • Виртуализация и безопасность
    • Добавлена начальная поддержка использования механизма Intel TDX (Trusted Domain Extensions) для защиты гостевых систем, работающих под управлением гипервизора KVM, от вмешательства и анализа со стороны администратора хост-системы и физических атак на оборудование. Защита обеспечивается за счёт шифрования памяти виртуальных машин.
    • Добавлен виртуальный драйвер TPM (Trusted Platform Module), позволяющий виртуальным машинам взаимодействовать с TPM-устройствами (Trusted Platform Module), эмулируемыми модулем SVSM (Secure VM Service Module).
    • Возобновлена возможность использования GCC-плагина randstruct, рандомизирующего раскладку структур данных на этапе компиляции для усложнения эксплуатации уязвимостей.
    • Добавлена возможность использования технологии IMA (Integrity Measurement Architecture) для проверки целости при запуске новых ядер при помощи системного вызова kexec.
    • Проведена работа по сокращению влияния на производительность использования SELinux. Для ускорения работы добавлен кэш с результатами проверок доступа к каталогам. В правила genfscon добавлена возможность использования масок.
    • В коде для взаимодействия с EFI предоставлена возможность встраивания секции SBAT (UEFI Secure Boot Advanced Targeting) с метаданными об отозванных версиях загрузочных компонентов.
    • В загружаемых модулях осуществлён перевод секции ".static_call_sites" в режим только для чтения после завершения инициализации.
    • Для 64-разрядных систем ARM в гипервизоре KVM реализована поддержка вложенной виртуализации (отключена по умолчанию).
    • В гипервизоре KVM объявлена стабильной поддержка архитектуры RISC-V.
  • Сетевая подсистема
    • В состав принят драйвер ovpn, позволяющий существенно ускорить производительность OpenVPN за счёт выноса операций шифрования, обработки пакетов и управления каналом связи на сторону ядра Linux. Драйвер позволяет избавиться от накладных расходов, связанных с переключением контекста, даёт возможность оптимизировать работу за счёт прямого обращения к внутренним API ядра и исключает медленную передачу данных между ядром и пространством пользователя (шифрование, расшифровка и маршрутизация выполняется модулем без отправки трафика в обработчик в пространстве пользователя). на сторону ядра для избавления от лишних переключений контекста.
    • В механизм Device Memory TCP добавлена поддержка отправки данных из памяти устройства (TX path). Ранее для упрощения интеграции Device Memory TCP в ядро функциональность была ограничена только принятием данных (RX path). Device Memory TCP позволяет использовать сетевые сокеты для прямой отправки содержимого памяти периферийного устройства по сети (режим zero-copy), а также прямого размещения содержимого сетевых пакетов в области памяти устройства на стороне получателя. Передаваемые в пакетах данные передаются от сетевой карты в память периферийного устройства (DMABUF), например, в видеопамять GPU, или из памяти устройства в сетевую карту напрямую, минуя CPU, а заголовки пакетов попадают в обычные буферы ядра.
    • Предоставлена возможность отправки содержимого core-дампов через сокет AF_UNIX, что позволяет создавать в пространстве пользователя более безопасные обработчики core-дампов, не завязанные на вызов ядром привилегированных процессов.
    • Удалена поддержка сетевого протокола DCCP (Datagram Congestion Control Protocol), который не получил распространения и пять лет остаётся в ядре без сопровождения. Удаление DCCP из ядра устранит преграды, мешающие переработать структуру данных inet_connection_sock для повышения эффективности работы стека TCP. Поддержка netfilter-модулей для фильтрации пакетов DCCP сохранена.
    • Для упрощения обработки ошибок при использовании сокетов SO_PEERPIDFD ядро теперь может передавать pidfd для уже завершённых процессов (pidfd связывается с конкретными процессами и в отличие от pid повторно не назначается).
    • При помощи BPF теперь можно создавать обработчики управления очередями пакетов в сетевом стеке (qdiscs) для влияния на порядок обработки сетевых пакетов.
    • В сетевой файловой системе AFS задействован GSSAPI (Generic Security Services API) для управления шифрованием соединений с серверами YFS и OpenAFS.
    • Внесена большая порция оптимизаций. Переработана организация блокировок для таблиц маршрутизации IPv6 (некоторые операции с маршрутами теперь выполняются до 3 раз быстрее). Ускорено программное вычисление контрольных сумм crc32c. На 10% ускорен движок GRO для туннелированного UDP трафика. Улучшена автонастройка принимающего буфера для TCP и повышены применяемые по умолчанию лимиты (в проведённых тестах пропускная способность для единичных потоков через 200Gbs канал возросла на 60%).
    • В Netfilter добавлена возможность использования масок в именах сетевых устройств, используемых в netdev и flowtable. В инфраструктуру nft trace интегрирована информация об отслеживании соединений (conntrack). Ускорено извлечение таблиц отслеживания соединений (conntrack) через procfs.
  • Оборудование
    • Добавлена поддержка выноса обработки звуковых потоков на сторону звуковых устройств с интерфейсом USB (USB audio offload). Изменение позволяет значительно снизить энергопотребление портативных устройств за счёт продолжения обработки звукового потока во время нахождения остальной системы в спящем режиме. Ранее в ядрах для платформы Android предоставлялась специфичная реализация offload-обработки звука для USB-устройств, а теперь в основном ядре появилась универсальная реализация, которую могут использовать любые проекты.
    • Продолжена интеграция компонентов драйвера Nova для GPU NVIDIA, оснащённых GSP-прошивками, используемыми начиная с серии NVIDIA GeForce RTX 2000 на базе микроархитектуры Turing. Драйвер написан на языке Rust. В дополнение к добавленному в прошлом выпуске компоненту nova-core, реализующему базовый уровень абстракций над программными интерфейсами прошивок GSP, в версии 6.16 в состав включена начальная реализация DRM-драйвера nova-drm (Direct Rendering Manager) для взаимодействия с GPU из пространства пользователя.
    • Начался процесс продвижения в ядро DRM-драйвера Asahi для GPU Apple AGX, применяемых в чипах Apple Silicon. Драйвер написан на Rust. На данном этапе в ядро включены только заголовочные файлы с UAPI от драйвера Asahi, необходимые для Mesa, а основной код драйвера Asahi будет интегрирован позднее.
    • В драйвер Nouveau добавлена поддержка GPU NVIDIA семейства Hopper и Blackwell.
    • Продолжена работа над drm-драйвером (Direct Rendering Manager) Xe для GPU на базе архитектуры Intel Xe, которая используется в видеокартах Intel семейства Arc и интегрированной графике, начиная с процессоров Tiger Lake. Добавлена возможность использования разных файлов прошивок для разных семейств GPU Intel.
    • В драйвере AMDGPU реализована поддержка механизма "usermode queue", позволяющего создавать собственные очереди работ в пространстве пользователя и отправлять их напрямую в GPU без обращения к планировщику в ядре. Поддержка "usermode queue" включена для GPU Navi 4X и GFX 12.
    • Добавлена поддержка звуковых систем Intel WCL (Whiskey Lake), AMD ACP 7.x (Audio Co-Processor), Cirrus Logic CS35L63 и CS48L32, Everest Semiconductor ES8375 и ES8389, Pioneer DJM-V10, Longsoon-1 AC'97, NVIDIA Tegra264, Richtek ALC203, RT9123 и Rockchip SAI, а также новых платформ Intel AVS.
    • Добавлена поддержка ARM-плат, SoC и устройств: Samsung Exynos7870, Qualcomm Snapdragon X1P42100, Qualcomm MSM8926, RK3562, NXP i.MX94, Renesas RZ/V2N, Amlogic S6/S7/S7D, WonderMedia wm8950, Amlogic s805y, Allwinner A523, Toradex Verdin AM62P, ROCK 5B+, Nitrogen8M Plus, Retronix R-Car V4H Sparrow Hawk, MT8186 Ponyta Chromebook, VIA APC Rock/Paper, Renesas rz/t2h, ASUS Transformer Pad LTE TF300TL, LG Nexus 4, Google Pixel 4a, Raspberry Pi 2.
    • Удалён драйвер для плат захвата видео на чипах STA2X11.

Одновременно латиноамериканский Фонд свободного ПО сформировал вариант полностью свободного ядра 6.16 - Linux-libre 6.16-gnu, очищенного от элементов прошивок и драйверов, содержащих несвободные компоненты или участки кода, область применения которых ограничена производителем. В выпуске 6.16 нейтрализована загрузка блобов в новых драйверах Intel qat 6xxx crypto, ST vd55g1 sensor, ath12k AHB wifi, Aeonsemi AS21xxx и MediaTek 25Gb Ethernet. Выполнена чистка имён блобов в dts-файлах (devicetree) для ARM-чипов Qualcomm и MediaTek. Обновлён код чистки блобов в драйверах Nova Core, Nouveau, Realtek r8169 Ethernet, Qualcomm Iris, Venus, Mediatek mt7996 wifi, Qualcomm ath11k и ath12k wifi, Texas Instruments tas2781 и Renesas R-Car gen4 PCIe.

  1. OpenNews: Релиз ядра Linux 6.15
  2. OpenNews: Релиз ядра Linux 6.14
  3. OpenNews: Релиз ядра Linux 6.13
  4. OpenNews: Релиз ядра Linux 6.12 с поддержкой Realtime-режима
  5. OpenNews: Релиз ядра Linux 6.11
Обсуждение (79 +18) | Тип: Программы | Интересно
·27.07.2025 NPM-пакет Stylus был по ошибке заблокирован из-за подозрений в наличии вредоносного кода (24 +3)
  Администраторы репозитория NPM по ошибке заблокировали пакет Stylus, распознав в нём несуществующее вредоносное ПО. Через 12 часов после отправки жалобы в NPM проблема была отмечена как не соответствующая действительности, объявление о наличии вредоносного ПО было отозвано, а пакет восстановлен в репозитории.

Пакет Stylus в прошлом месяце насчитывал 4.2 млн загрузок в неделю и использовался в качестве зависимости у более двух тысяч проектов. Удаление пакета из репозитория привело к массовыми сбоям в сборочных системах проектов, использующих Stylus или зависимые от него пакеты. Среди прочего, возникли проблемы при сборке CLI-инструментария платформы Angular. Сложилась ситуация, напоминающая произошедший в 2016 году инцидент с удалением модуля left-pad.

Причиной ложной тревоги стало присутствие в числе разработчиков Stylus участника panya (бывший сопровождающий), который до этого был уличён в публикации нескольких вредоносных пакетов (svelte-intl, ufo-rocks2, durilka, eslint-plugin-compat, desktop-title, select-account-icon и т.д.). Мотивы действий разработчика "panya" не ясны, предполагается, что он мог проводить исследования, связанные с безопасностью. При этом имея доступ к формированию релизов Stylus, данный разработчик не использовал имеющуюся возможность для внедрения вредоносного ПО в Stylus.


Дополнительно можно отметить появление новых жертв фишинг-атаки через домен npnjs.com. Помимо ранее отмеченных 5 пакетов, атакующим удалось обмануть сопровождающих пакеты is и got-fetch. Пакет is насчитывает 2.8 млн загрузок в неделю и используется в качестве зависимости у 636 других пакетов. Пакет got-fetch насчитывает 53 тысячи загрузок в неделю.

После получения контроля над пакетами злоумышленники сформировали вредоносные выпуски is 3.3.1 и 5.0.0, got-fetch 5.1.11 и 5.1.12. В пакет is был встроен кросс-платформенный загрузчик вредоносного ПО, реализованный на JavaScript и открывающий WebSocket-соединение для удалённого выполнения кода в системе. Вредоносный код также передавал данные о системе и содержимом переменных окружения.

  1. OpenNews: Нарушение обратной совместимости в популярном NPM-пакете привело к сбоям в различных проектах
  2. OpenNews: Сбой антиспам-системы привёл к коллапсу в репозитории NPM
  3. OpenNews: Инцидент с захватом прав на NPM-модуль привёл к сбою в работе проектов, использующих NPM
  4. OpenNews: Фишинг позволил получить контроль над несколькими популярными NPM-пакетами
  5. OpenNews: Атака на зависимости позволила выполнить код на серверах PayPal, Micrоsoft, Apple, Netflix, Uber и ещё 30 компаний
Обсуждение (24 +3) | Тип: Проблемы безопасности |
·26.07.2025 Представлены правила для AI-ассистентов, применяемых при разработке ядра Linux (154 +4)
  Саша Левин (Sasha Levin) из компании NVIDIA, занимающийся сопровождением LTS-веток ядра Linux и входящий в консультативный совет организации Linux Foundation, выставил на обсуждение разработчиков набор правил и документацию, которые должны учитываться AI-ассистентами при генерации изменений для ядра Linux. Ссылки на инструкции отмечены в файлах конфигурации, подготовленных для AI-платформ Claude, GitHub Copilot, Cursor, Codeium, Continue, Windsurf и Aider.

Определены следующие ключевые принципы для AI:

  • Перед созданием изменений необходимо прочитать документацию и следовать изложенным в ней требованиям.
  • Следует выполнять требования по стилю и оформлению кода для ядра.
  • Перед отправкой изменения его нужно тщательно протестировать.
  • К коду нужно приложить понятное и исчерпывающее сообщение с описанием изменения.
  • Изменения не должны нарушать работу компонентов в пространстве пользователя.
  • В качестве соавтора изменения должен быть отмечен AI, не ограничиваясь только упоминанием разработчика, использовавшего AI-ассистент.

Для выделения изменений, подготовленных с использованием AI, к коммиту предписывается прикреплять тег "Co-developed-by: $AI_NAME $AI_MODEL $AI_VERSION". Например: "Co-developed-by: Claude claude-3-opus-20240229", "Co-developed-by: GitHub-Copilot GPT-4 v1.0.0" и "Co-developed-by: Cursor gpt-4-turbo-2024-04-09". При этом AI-ассистент не должен добавлять себя в тег "Signed-off-by". Данный тег должен добавляться только человеком для юридически значимого подтверждения права на передачу кода под открытой лицензией.

Документация, которую должен учитывать AI-ассистент:

  1. OpenNews: Удалённая уязвимость в модуле ksmbd ядра Linux, выявленная при помощи AI
  2. OpenNews: Компания SUSE открыла AI-модель для анализа лицензионной чистоты кода
  3. OpenNews: Оценка эффективности применения AI-инструментов выявила замедление, а не ускорение разработки
  4. OpenNews: Проект Gentoo запретил принятие изменений, подготовленных при помощи AI-инструментов
  5. OpenNews: В NetBSD введён запрет на использование кода, сгенерированного AI-системами
Обсуждение (154 +4) | Тип: К сведению |
·25.07.2025 Инициатива Maintenance Fee, предлагающая взимать плату за доступ к сборкам релизов открытых проектов (252 –11)
  Автор WiX, открытого инструментария для создания установочных пакетов для Windows, развивает инициативу Maintenance Fee для решения проблемы с финансированием сопровождающих открытые проекты. Инициатива Maintenance Fee позволяет через взимание небольшой ежемесячной платы (как вариант, предлагается $10) обеспечить финансовую устойчивость проектов, не ограничивая при этом их открытость и не прибегая к моделям финансирования, подобным Open Core, подразумевающим поставку расширенной платной версии.

Суть Maintenance Fee в ведении ежемесячного платежа для пользователей и компаний, которые получают коммерческую выгоду и прямо или косвенно зарабатывают на использовании открытого проекта. Стимулирование оплаты производится через добавление сопровождающим пользовательского соглашения (EULA), регламентирующего доступ к инфраструктуре, бинарным сборкам и готовым пакетам. Для перечисления платы предлагается использовать систему GitHub Sponsorship.

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

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

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

  1. OpenNews: Мэйнтейнер Dash to Panel сложил полномочия после критики манеры сбора пожертвований
  2. OpenNews: В NPM добавлены инструменты для финансирования разработчиков
  3. OpenNews: Open WebUI перешёл на ограничивающую лицензию, запрещающую удаление бренда
  4. OpenNews: Проект Linux Foundation по финансированию разработки СПО
  5. OpenNews: Сокращение срока поддержки LTS-ядер Linux и проблема с выгоранием сопровождающих
Обсуждение (252 –11) | Тип: К сведению |
·25.07.2025 В Android встроена возможность запуска графических Linux-приложений (153 +41)
  В ветку Android Canary, пришедшую на смену Android Developer Preview и применяемую для тестирования функциональности для будущих выпусков Android, добавлена возможность запуска графических приложений, собранных для Linux. Запуск осуществляется через приложение Linux Terminal, позволяющее запустить в окружении Android виртуальную машину с Debian GNU/Linux, в которой можно выполнять обычные Linux-приложения.

Для запуска графического окружения в приложение Linux Terminal добавлена кнопка "Display", включающая перенаправление графики через компоненты в основном окружении Android. После активации кнопки "Display" в терминале можно запустить композитный сервер Weston, предоставляющий минималистичный оконный сеанс, а затем использовать его для запуска любых графических приложений, например, продемонстрирован запуск текстового редактора Gedit.

Разработка приложения Linux Terminal ведётся в репозитории AOSP (Android Open Source Project) в основном составе платформы Android. Функциональность виртуальной машины c Linux развивается в рамках проекта Ferrochrome. В гостевом окружении запускается Debian GNU/Linux 12. Для виртуализации используется фреймворк AVF (Android Virtualization Framework), реализованный на базе гипервизора KVM и инструментария crosvm. Графическое окружение использует протокол Wayland и основано на композитном сервере Weston. Запуск приложений, собранных для X11, производится при помощи DDX-компонента XWayland.

В создаваемом окружении реализована возможность задействования аппаратного ускорения графики, что позволяет запускать ресурсоёмкие графические приложения, такие как игры. Для ускорения графики задействован VirGL - виртуальный GPU Virgil3D для QEMU/KVM. По умолчанию аппаратное ускорение отключено и для его активации необходимо в каталоге /sdcard/linux создать пустой файл с именем "virglrenderer", после чего проследить за появлением сообщения "VirGL enabled" при открытии терминала.

  1. OpenNews: В обновлении Android 15 для устройств Google Pixel добавлен Linux-терминал
  2. OpenNews: Google развивает в Android 16 возможность запуска графических Linux-приложений
  3. OpenNews: Google экспериментирует с возможностью запуска Linux-приложений в Android
  4. OpenNews: Google прекратил публикацию кода для поддержки устройств Pixel в репозитории с кодом Android
  5. OpenNews: Подтверждены планы по слиянию Chrome OS и Android в одну платформу
Обсуждение (153 +41) | Тип: К сведению |
·24.07.2025 Первый выпуск Wayback, прослойки для запуска рабочих столов X11, используя компоненты Wayland (155 +17)
  Представлен первый экспериментальный выпуск проекта Wayback 0.1, позволяющего запускать десктоп-окружения, завязанные на протокол X11, используя компоненты на базе Wayland. Wayback представляет собой урезанный композитный сервер Wayland, поддерживающий только возможности, необходимые для запуска полноэкранного сеанса X11 при помощи Xwayland (DDX-компонент (Device-Dependent X) для организации выполнения X11-приложений в окружениях на базе Wayland). Код проекта написан на языке Си и распространяется под лицензией MIT.

Проект создан разработчиками дистрибутива Alpine для упрощения ухода от поставки классического X.org Server и развивается в инфраструктуре freedesktop.org. В дистрибутиве Alpine намерены оставить только компоненты, необходимые для Wayland и Xwayland, и реализовать запуск сред рабочего стола X11 поверх них, что позволит исключить из репозиториев обособленный X-сервер и снизить затраты на сопровождение X11-приложений.

Код Wayback основан на tinywl, эталонном композитном сервере от разработчиков библиотеки wlroots, функциональность которого урезана до минимума, достаточного для обособленного запуска Xwayland. Предполагается, что в будущем Wayback сможет использоваться в качестве полной замены исполняемого файла Xorg (/usr/bin/X).

Первый выпуск Wayback преподносится как альфа-версия, позволяющая ознакомиться с реализуемой проектом концепцией. На данном этапе пока отсутствует поддержка таких возможностей, как многомониторные конфигурации, гашение экрана через DPMS, захват указателя мыши (запрет перемещения за определённую область на экране), многие опции Xorg. Пакеты для тестирования Wayback собраны для Alpine Linux, Nix, T2, Arch Linux, ALT Linux и Fedora.

Из изменений по сравнению с первым анонсом отмечается разделение Wayback на отдельные компоненты: композитный сервер wayback-compositor; интерфейс командной строки Xwayback, совместимый с Xorg и предназначенный для запуска Xwayland и wayback-compositor; менеджер сеансов wayback-session, предоставляющий интерфейс запуска сеанса в стиле startx. Кроме того, в Wayback реализован более централизованный механизм ведения логов и новый парсер опций, напоминающий getopt.

  1. OpenNews: Опубликован Wayback, композитный сервер Wayland для запуска рабочих столов на базе X11
  2. OpenNews: Выпуск miracle-wm 0.6, композитного менеджера на базе Wayland и Mir
  3. OpenNews: Сравнение производительности сеансов KDE Plasma на базе X11 и Wayland
  4. OpenNews: Доступен Wayland 1.24
  5. OpenNews: Выпуск композитного сервера Hyprland 0.50
Обсуждение (155 +17) | Тип: Программы |
·23.07.2025 В Fedora предложено задействовать FlatHub в атомарных редакциях дистрибутива (73 +7)
  Майкл Катандзаро (Michael Catanzaro), один из разработчиков web-браузера Epiphany (GNOME Web), принимающий участие в проектах GNOME и Fedora, предложил пересмотреть использование каталога FlatHub в Fedora Linux. В атомарно обновляемой редакции Fedora Workstation предложено задействовать по умолчанию каталог FlatHub для flatpak-пакетов, устанавливаемых пользователями, а собственный репозиторий flatpak-пакетов ограничить только применением для предустанавливаемых пакетов.

В настоящее время по умолчанию в Fedora предлагается собственный flatpak-репозиторий, содержимое которого формируется на основе пересборки rpm-пакетов. По умолчанию загрузку пакетов из FlatHub можно включить лишь после установки, активировав в менеджере приложений GNOME опцию "Enable Third-Party Repositories", но даже в этом случае пакеты из репозитория Fedora являются более приоритетными.

По мнению Майкла большинство пользователей предпочло бы установку пакетов из каталога FlatHub, собираемых основными разработчиками приложений, а не сопровождающими Fedora (80% участников дискуссии высказались за использование FlatHub). Предполагается, что разработчики приложений лучше знают нюансы своих проектов и собирают более качественно работающие flatpak-пакеты, тщательнее протестированные сообществом. При этом сопровождающие rpm-пакеты в Fedora не проявляют ожидаемого интереса к поддержанию вариантов пакетов в формате flatpak и не уделяют должного внимания сообщениям об ошибках в таких пакетах, что приводит к тому, что качество flatpak-пакетов от Fedora ниже, чем размещённых во FlatHub пакетах от основных проектов.

Многие пользователи не в курсе, что, устанавливая flatpak-пакет через менеджер приложений Fedora, он устанавливается не из FlatHub, как в других дистрибутивах, а из репозитория Fedora, пакеты в котором отличаются от вариантов с FlatHub. Из-за этого проблемы, специфичные для пакетов из репозитория Fedora, воспринимаются как проблемы в официальных пакетах с FlatHub и претензии направляются основным разработчикам, а не сопровождающим Fedora. Например, поставка проблемного flatpak-пакета OBS Studio в Fedora, который являлся более приоритетным, чем пакет из FlatHub, в феврале привела к конфликту с проектом OBS Studio.

Применение собственного Flatpak-репозитория обусловлено необходимостью сборки в заслуживающем доверия окружении. Для пакетов во FlatHub, даже если рассматривать только верифицированные пакеты, за публикацию которых отвечают основные проекты, сборка производится во внешних инфраструктурах, безопасность которых может вызывать сомнение. Из достоинств поддержания собственного репозитория в Fedora упоминаются гарантии, что пакет собран из заявленного исходного кода и содержит только компоненты под открытыми лицензиями, одобренными к использованию Fedora. Пакеты в Fedora-репозитории также могут включать патчи, доступные только для RPM-пакетов в Fedora и пока не принятые в основную кодовую базу проектов.

Предложение Майкла сводится к включению по умолчанию в атомарной редакции Fedora Workstation поддержки установки пакетов из FlatHub, находящихся в категории "свободное ПО". Возможность установки из FlatHub коснётся только пакетов, устанавливаемых пользователями через менеджер приложений GNOME Software. Все предустанавливаемые по умолчанию flatpak-пакеты продолжат загружаться из собственного репозитория Fedora, но для не применяемых по умолчанию пакетов в качестве источника для загрузки предлагается задействовать FlatHub.

Перед переходом на FlatHub предлагается совместно внедрить во FlatHub возможности для сборки пакетов в заслуживающей доверие инфраструктуре и задействовать проверки на базе воспроизводимых сборок. Кроме того, следует решить вопрос с применением в пакетах устаревших версий Flatpak Runtime, в которые уже прекращён перенос исправлений уязвимостей. В настоящее время 994 из 3438 (почти треть) проверенных пакетов из FlatHub используют Runtime, время поддержки которых истекло. Проблемы с безопасностью также возникают из-за устаревших внутренних зависимостей, включаемых в состав пакетов, и применения недостаточных мер sandbox-изоляции (разработчики некоторых пакетов отключают режимы защиты). Проблемы предлагается решить через реализацию автоматизированных проверок устаревших runtime и зависимостей, и форсирование применения полноценной sandbox-изоляции.

Кроме Майкла, с похожим предложением также выступил Тимоти Равье (Timothée Ravier): в Fedora 43 предлагается продолжить поставку предустановленных flatpak-пакетов из репозитория Fedora, но добавить фильтр, допускающий установку из FlatHub избранных проверенных приложений. В качестве достоинств предложенного решения называется снижение путаницы у пользователей и разработчиков основных проектов (разработчикам приходится разбирать сообщения об ошибках, специфичных для Flatpak-пакетов Fedora, отправленных под видом, что они присутствуют в официальном flatpak-пакете). Изменение также снизит нагрузку на сопровождающих и позволит им сфокусироваться на передаче исправлений в основные проекты и тестировании предустанавливаемых по умолчанию Flatpak-пакетов.

  1. OpenNews: Проекту Fedora пригрозили иском из-за поставки сбойного flatpak-пакета с OBS Studio
  2. OpenNews: Релиз системы самодостаточных пакетов Flatpak 1.16.0
  3. OpenNews: Каталог приложений Flathub достиг отметки в 2 миллиарда загрузок
  4. OpenNews: Уязвимость во flatpak, позволяющая обойти sandbox-изоляцию
  5. OpenNews: Fedora 38 предложит неограниченную поддержку Flathub
Обсуждение (73 +7) | Тип: К сведению |
·22.07.2025 Релиз Firefox 141 (272 +30)
  Состоялся релиз web-браузера Firefox 141 и сформированы обновления прошлых веток с длительным сроком поддержки - 140.1.0, 115.26.0 и 128.13.0. На стадию бета-тестирования переведена ветка Firefox 142, релиз которой намечен на 19 августа.

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

  • Добавлена экспериментальная поддержка автоматической группировки вкладок, основанная на использовании локально выполняемой AI-модели, определяющей вкладки, сходные по тематике. После перетаскивания мышью одной вкладки на другую или открытии контекстного меню с параметрами группы, браузер теперь показывает кнопку "Suggest more of my tabs", после нажатия на которую выводится список похожих вкладок для их быстрого включения в группу. AI также предлагает релевантное имя группы. Функция пока по умолчанию включена не для всех и постепенно будет активироваться для всё большего процента пользователей. Для принудительного включения можно активировать параметр "browser.tabs.groups.smart.enabled" на странице about:config.
  • Предоставлена возможность изменения размера области инструментов в нижней части боковой панели вертикальных вкладок. Для разделения места под вкладки и инструменты достаточно переместить мышью горизонтальный разделитель секций. Если все инструменты не вмещаются в выбранную область, то часть из них будет вынесена в дополнительно раскрываемое меню.
  • В адресную строку встроен конвертер единиц измерения, поддерживающий преобразование часовых поясов и величин углов, расстояния, температуры, массы и силы. При клике на результат он будет сохранён в буфер обмена.
  • В сборках для платформы Linux снижено потребление памяти и убрано требование перезапуска после обновления при помощи пакетного менеджера.
  • Для пользователей из Бразилии, Испании и Японии включена функция автозаполнения адресов в web-формах, которая ранее была доступна только для США, Великобритании, Канады, Германии, Франции, Польши, Италии и Австрии.
  • По умолчанию в сборках для платформы Windows активирован API WebGPU и язык шейдеров WGSL (WebGPU Shading Language). Для Linux и macOS поддержка WebGPU будет включена в одном из следующих выпусков, до этого WebGPU можно активировать через параметры "dom.webgpu.enabled" и "gfx.webrender.all" на странице about:config. WebGPU предоставляет схожий с Vulkan, Metal и Direct3D 12 программный интерфейс для выполнения операций на стороне GPU. WebGPU даёт возможность приложениям на языке JavaScript контролировать организацию, обработку и передачу команд к GPU, управлять связанными ресурсами, памятью, буферами, объектами текстур и скомпилированными графическими шейдерами.
  • При возвращении сервером значения "cache" в HTTP-заголовке "Clear-Site-Data" дополнительно реализована очистка кэша перехода (BFCache - Back-forward cache), обеспечивающего мгновенный переход при использовании кнопок "Назад" и "Вперёд" или при навигации по ранее просмотренным страницам текущего сайта.
  • В HTML-элемент <dialog> добавлен атрибут "closedby", позволяющий определить поведение при закрытии диалога. Значение "none" подразумевает, что пользователь не может закрыть диалог; "closerequest" - допускает закрытие нажатием клавиши ESC; "any" приводит к закрытию при клике мышью в области за пределами диалога или при нажатии ESC.
  • Возвращена поддержка технологии CHIPS (Cookies Having Independent Partitioned State), позволяющей изолировать Cookie в привязке к домену первого уровня, используя атрибут "Partitioned". Если в обычных условиях сторонний код с сайта "C", встроенный на сайты "A" и "В", может обрабатывать общие для данных сайтов Cookie, то при указании атрибута "Partitioned", выставленные сайтом "C" Cookie, при загрузке кода с сайтов "A" и "В", будут полностью разделены.
  • В JavaScript-методы HTMLElement.showPopover() и HTMLElement.togglePopover() добавлен аргумент "options.source", ссылающийся на обработчик открытия всплывающего окна (popover). В метод togglePopover() добавлен аргумент "options.force" для принудительного открытия или закрытия всплывающего окна.
  • В интерфейс PointerEvent добавлено свойство persistentDeviceId, а в интерфейс IntersectionObserver свойство scrollMargin.
  • Добавлено CSS-свойство "font-variant-emoji" для настройки стиля отображения Emoji. Например, можно выбрать текстовое или графическое представление.

  • В версии для платформы Android переделано меню; реализована автоматическая блокировка приватных вкладок после переключения на другое приложение; обеспечена подсветка домена в адресной строке; добавлена функция для отправки PDF-файлов в другие приложения.

Кроме новшеств и исправления ошибок в Firefox 141 устранено 27 уязвимостей. 13 уязвимостей вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц.

  1. OpenNews: В Firefox и Safari будет включена поддержка WebGPU
  2. OpenNews: Релиз Firefox 140
  3. OpenNews: Mozilla переходит к поставке Firefox с условиями использования
  4. OpenNews: Разработка Firefox перенесена с Mercurial на Git и GitHub
  5. OpenNews: Изменение правил в каталоге дополнений к Firefox
Обсуждение (272 +30) | Тип: Программы |
·22.07.2025 Google представил проект OSS Rebuild для выявления скрытых изменений в пакетах (46 +16)
  Компания Google представила проект OSS Rebuild, предназначенный для выявления скрытых изменений в готовых пакетах, публикуемых в репозиториях. Работа OSS Rebuild основана на концепции воспроизводимых сборок и сводится к проверке соответствия размещённого в репозитории пакета с пакетом полученным на основе пересборки из эталонного исходного кода, соответствующего заявленной версии пакета. Код инструментария написан на языке Go и распространяется под лицензией Apache 2.0.

В настоящее время в OSS Rebuild реализована поддержка верификации пакетов из репозиториев NPM (JavaScript/TypeScript), PyPI (Python) и Crates.io (Rust). В будущем число поддерживаемых репозиториев планируют расширить. На практике инструментарий позволяет выявлять варианты атаки класса "supply chain", в ходе которых после компрометации учётных записей сопровождающих или диверсии внутри проекта в репозитории публикуется вредоносное обновление. При этом код в исходном репозитории основного проекта остаётся корректным, а вредоносные изменения вносятся только в готовые пакеты.

Система по возможности автоматически формирует сценарий для воспроизводимой сборки выбранного пакета, используя эвристику и подбирая параметры, позволяющие добиться идентичности артефактов, поставляемых в пакете. Если автоматически не удаётся воспроизвести размещённый в репозитории пакет, возможно ручное добавление сборочной спецификации. После того как удалось воспроизвести пакет, инструментарий OSS Rebuild сохраняет описание процесса сборки для последующей проверки новых версий пакета. Дополнительно публикуется информация для верификации с использованием фреймворка SLSA.

После проведения проверки конкретной версии пакета формируются данные аттестации, которые могут использоваться другими для оценки уже верифицированных пакетов. Проверку можно осуществить через запуск утилиты командной строк или сверку хэша, сохранённого в отдельном облачном хранилище. Инфраструктуру для проверки пакетов можно развернуть на собственном сервере. Так же можно воспользоваться информацией о проверках, выполняемых в Google для нескольких тысяч пакетов.

В качестве примеров разных методов атак, от которых мог бы защитить OSS Rebuild, приводится добавление бэкдора в XZ, внедрение вредоносного кода в официальный JavaScript-клиент для криптовалюты Solana и подстановка изменений через Actions-обработчик changed-files:

  • В случае с проектом XZ код в репозитории не содержал подозрительных изменений, а образующие бэкдор вредоносные компоненты поставлялись внутри файлов, используемых в тестовом наборе для проверки корректности работы распаковщика XZ. Бэкдор активировался на уровне системы сборки, а сам исходный код XZ совпадал с кодом из репозитория. Активирующие бэкдор m4-макросы для инструментария Automake были включены только в готовый архив с кодом и отсутствовали в репозитории. Для выявления подобных атак в OSS Rebuild применяется динамический анализ поставляемых в пакете артефактов, путей выполнения и подозрительных операций.
  • Подстановка вредоносных изменений в библиотеку @solana/web3.js произошла из-за компрометации учётной записи сопровождающего, используя методы социального инжиниринга и фишинга. В репозитории NPM был размещён новый выпуск, включающий вредоносные изменения. В Git-репозитории проекта этот выпуск создан не был и вредоносные изменения присутствовали только в результирующем пакете. Защита в этом случае сводится к выявлению в пакете кода, отсутствующего в основном репозитории.
  • Компрометация репозитория обработчика changed-files позволила провести атаку на проекты, использующие changed-files для отслеживания изменения файлов и каталогов в инфраструктуре непрерывной интеграции на базе GitHub Actions. Для защиты от подстановки изменений после компрометации сборочного окружения в OSS Rebuild применяется отслеживание изменений и подозрительной активности в стандартизированных урезанных сборочных окружениях.

  1. OpenNews: В NixOS предложен метод защиты от подстановки бэкдоров, таких как в XZ
  2. OpenNews: Google предложил SLSA для защиты от вредоносных изменений в процессе разработки
  3. OpenNews: Оценка проблем с сопровождением открытых проектов и использованием старых зависимостей
  4. OpenNews: Red Hat и Google представили Sigstore, сервис для криптографической верификации кода
  5. OpenNews: Атака на зависимости позволила выполнить код на серверах PayPal, Micrоsoft, Apple, Netflix, Uber и ещё 30 компаний
Обсуждение (46 +16) | Тип: Программы |
·21.07.2025 Доступна библиотека OpenAPV 0.2 с эталонной реализацией видеокодека APV (43 +23)
  Опубликован выпуск библиотеки OpenAPV, предоставляющей эталонную реализацию видеокодека APV (Advanced Professional Video), предназначенного для профессиональной записи и обработки видео без различимой потери качества. Код библиотеки написан на языке С и распространяется под лицензией BSD. Проект развивает организация Academy Software Foundation, учреждённая Академией кинематографических искусств (США) и организацией Linux Foundation с целью продвижения использования открытого ПО в процессе создания фильмов.

Формат APV обеспечивают высокую пропускную способность и низкую сложность внутрикадрового кодирования, необходимые монтажным кодекам (среди них Apple ProRes и Avid DNxHD), а также отсутствие видимого снижения качества при повторном кодировании. Поддерживаются разрешения 2K, 4K и 8K, стандарт HDR10/10+ для использования расширенного динамического диапазона в видео, разбивка кадров (tiling) для распараллеливания кодирования/декодирования, различные форматы дискретизации цвета, многоракурсное видео (multi-view), добавление метаданных (глубина, прозрачность, данные для предпросмотра). Для ускорения работы в библиотеке OpenAPV поддерживается многопоточное кодирование и декодирование, а также задействованы оптимизации с использованием расширенных наборов команд NEON (ARM) и SSE/AVX (x86).

В новой версии добавлена поддержка семейств APV (APV family), определяющих типовые конфигурации кодека, отвечающие определённым требованиям к размеру и битрейту. Учтены последние доработки спецификации. Добавлена поддержка профилей 422-12, 444-10, 444-12, 4444-10, 4444-12 и 400-10. Внесены оптимизации для сокращения времени кодирования и декодирования. Реализованы защищённые методы доступа к буферу битового потока (bitstream) и управления метаданными. Расширен API.

  1. OpenNews: Pixar передал проект OpenTimelineIO под покровительство Linux Foundation
  2. OpenNews: Инициатива по развитию открытого ПО для киноиндустрии
  3. OpenNews: Разработчики кодека AV1 представили формат IAMF для объёмного звука
  4. OpenNews: Уязвимость в эталонных реализациях кодеков AV1 и VP8/VP9
  5. OpenNews: Опубликован свободный видеокодек Theora 1.2
Обсуждение (43 +23) | Тип: Программы |
·21.07.2025 Фишинг позволил получить контроль над несколькими популярными NPM-пакетами (71 +18)
  Зафиксирована фишинг-атака на сопровождающих JavaScript-библиотеки, в ходе которой от имени сервиса NPM было разослано сообщение, уведомляющее о необходимости подтвердить свой email. Проведённая атака позволила злоумышленникам получить NPM-токены сопровождающего одного из крупных JavaScript-проектов и выпустить обновления с вредоносным кодом для пяти NPM-пакетов, в сумме насчитывающих около 100 млн загрузок в неделю.

Отправленное сопровождающим сообщение было стилизовано под типовые уведомления NPM, отправляемые с адреса "support@npmjs.org", но в качестве ссылки для перехода был указан домен "npnjs.com" вместо "npmjs.com" (третья буква "n" вместо "m"). Атакующие воспользовались психологическим эффектом, из-за которого мозг, предвосхищая ожидаемый результат, не замечает незначительные искажения, такие как замена букв на похожие или изменение порядка следования букв в слове. При переходе по ссылке открывалась полная копия сайта npmjs.com (вероятно, был настроен прокси, перехватывающий токен доступа).

В ходе атаки были сформированы новые версии пакетов:

В сформированные выпуски был добавлен вредоносный код для атаки на пользователей, использующих платформу Windows. Внесённые изменения загружали библиотеку node-gyp.dll, содержащую функциональность для удалённого выполнения команд в системе.

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

Не уточняется сколько пользователей успело загрузить вредоносные версии (например, вредоносная версия пакета eslint-plugin-prettier оставалась в репозитории около двух дней). За прошлую неделю пакет eslint-config-prettier насчитывал 30 млн загрузок и использовался в качестве зависимости у 11762 тысячи пакетов, пакет eslint-plugin-prettier - 21 млн загрузок (8468 зависимых пакетов), synckit - 18 млн, @pkgr/core - 16 млн и napi-postinstall - 10 млн.

Дополнение 1: Выявившие фишинг-атаку исследователи несколько дней назад обратили внимание на 28 NPM-пакетов, авторами которых было включено изменение категории Protestware. Изменение приводило к воспроизведению украинского гимна и отключению обработки событий от мыши на сайтах в доменных зонах "ru", "su", "by" и "рф", если пользователь ранее уже открывал сайт более трёх дней назад и в его браузере была включена поддержка русского языка. Изначально изменение было реализовано около трёх лет назад в пакете Sweetalert2, насчитывающем 700 тысяч загрузок в неделю и используемого в 2403 других пакетах как зависимость. Наличие протестной активности было отдельно упомянуто на странице проекта. Через какое-то время изменение стало заимствоваться авторами других пакетов, как правило насчитывающие несколько сотен загрузок в неделю.

Дополнение 2: Жертвами фишинг-атаки также стали сопровождающие пакеты is и got-fetch. Пакет is насчитывает 2.8 млн загрузок в неделю и используется в качестве зависимости у 636 других пакетов. Пакет got-fetch насчитывает 53 тысячи загрузок в неделю. После получения контроля над пакетами злоумышленники сформировали вредоносные выпуски is 3.3.1 и 5.0.0, got-fetch 5.1.11 и 5.1.12. В пакет is был встроен кросс-платформенный загрузчик вредоносного ПО, реализованный на JavaScript и открывающий WebSocket-соединение для удалённого выполнения кода в системе. Вредоносный код также передавал данные о системе и содержимом переменных окружения.

  1. OpenNews: Злоумышленники смогли внедрить бэкдор в NPM-пакет от разработчиков криптовалюты XRP
  2. OpenNews: Утечка пользовательской базы списка рассылки автора сервиса HaveIBeenPwned
  3. OpenNews: Из-за опечатки в настройках атакующие могли подменить DNS-сервер MasterCard
  4. OpenNews: В NPM-пакет node-ipc внесено вредоносное изменение, удаляющее файлы на системах в России и Беларуси
  5. OpenNews: Разработчик внёс деструктивные изменения в NPM-пакеты colors и faker, применяемые в 20 тысячах проектов
Обсуждение (71 +18) | Тип: Проблемы безопасности |
·19.07.2025 Компания Intel прекратила разработку дистрибутива Clear Linux (164 +10)
  Компания Intel объявила о сворачивании проекта Clear Linux, развивающего дистрибутив со строгой изоляцией приложений, реализованной при помощи контейнеров, разделённых с использованием полноценной виртуализации. Начиная с сегодняшнего дня Intel прекращает сопровождение и больше не будет выпускать обновления и исправления с устранением уязвимостей. GitHub-репозитории, в которых велась разработка дистрибутива, в ближайшее время будут переведены в архивный режим.

Пользователям Clear Linux рекомендовано перевести свои системы на другие дистрибутивы. При этом отмечается, что Intel продолжит активно поддерживать экосистему Linux и участвовать в разработке различных открытых проектов и Linux-дистрибутивов для добавления поддержки своего оборудования и оптимизации работы с ним. Предполагается, что вовлечённые в разработку Clear Linux сотрудники Intel попадают под массовое сокращение, в ходе которого персонал компании будет уменьшен на 5 тысяч человек.

Напомним, что базовая часть Clear Linux содержит только минимальный набор инструментов для запуска контейнеров и обновляется атомарно через замену рабочих снапшотов Btrfs. Все приложения оформлены в виде пакетов Flatpak или наборов (Bundle), запускаемых в отдельных контейнерах. Внутри контейнеров выполняется специально оптимизированная копия Clear Linux, содержащая необходимые для запуска целевого приложения наборы (bundle).

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

Для изоляции контейнеров задействован инструментарий Kata Containers, применяющий полноценную виртуализацию на базе гипервизора KVM. В Kata Containers удалось минимизировать время запуска изолированного окружения на базе KVM и снизить потребление памяти, приблизив эти показатели к характеристикам обычных контейнеров. Для уменьшения потребления памяти применяется механизм DAX (прямой доступ к ФС в обход страничного кэша без применения уровня блочных устройств), а для дедупликации одинаковых областей памяти применяется технология KSM (Kernel Shared Memory).

  1. OpenNews: Проект Clear Linux смещает акцент при разработке на серверы и облачные системы
  2. OpenNews: Intel опубликовал редакцию дистрибутива Clear Linux для разработчиков приложений
  3. OpenNews: Intel представил Clear Linux с контейнерами приложений на базе виртуализации
  4. OpenNews: Intel представил инструментарий Clear Containers 3.0, переписанный на языке Go
  5. OpenNews: Выпуск Kata Containers 3.4 с изоляцией на основе виртуализации
Обсуждение (164 +10) | Тип: К сведению |
·19.07.2025 В AUR-репозитории Arch Linux выявлены вредоносные пакеты (163 +40)
  В репозитории AUR (Arch User Repository), применяемом в Arch Linux для распространения пакетов от сторонних разработчиков, выявлены три вредоносных пакета firefox-patch-bin, librewolf-fix-bin и zen-browser-patched-bin, содержащие модифицированные сборки браузеров Firefox, Librewolf и Zen. Имена пакетов напоминали легитимные пакеты firefox-bin, librewolf-bin и zen-browser-bin, поддерживаемые энтузиастами в AUR.

В пакетах в файле PKGBUILD присутствовала ссылка на патчи, загружаемые из внешних репозиториев на GitHub (zenbrowser-patch, youtube-viewbot). Патчи вносили изменение в установочный процесс, приводящее к запуску скрипта на языке Python для установки трояна Chaos. Троян позволял получить удалённый доступ к системе, отправлять на внешний сервер конфиденциальные файлы и выполнять команды, например, для майнинга криптовалюты. Вредоносный исполняемый файл размещался как /usr/local/share/systemd-initd и запускался при помощи сервиса custom-initd.service, копируемого в каталог с systemd. При отсутствии прав root во время установки троян помещался в домашний каталог пользователя (~/.local/share/systemd-initd).

Вредоносные пакеты были размешены в репозитории AUR 16 июля примерно в 23 часа (MSK). Для продвижения вредоносных пакетов 18 июля в 15 часов (MSK) была развёрнута спамерская кампания. Например, для стимулирования установки в примечании к сборке с браузером Zen было отмечено решение критических проблем со стабильностью и отрисовкой, а также устранение утечек памяти.

Пакеты были удалены администраторами репозитория 18 июля в 19 часов (MSK). Почти сразу пользователи репозитория обратили внимание на ещё четыре вредоносных пакета minecraft-cracked, ttf-all-ms-fonts, ttf-ms-fonts-all и vesktop-bin-patched, размещённых под другой учётной записью примерно в 21 час 18 июля (MSK). На момент написания новости данные пакеты уже удалены из репозитория.

  1. OpenNews: Эксперимент по получению контроля над пакетами в репозитории AUR
  2. OpenNews: Представлен DUR, аналог пользовательского репозитория AUR для Debian
  3. OpenNews: В AUR-репозитории Arch Linux найдено вредоносное ПО
  4. OpenNews: В репозитории PyPI выявлено около 5000 оставленных в коде секретов и 8 вредоносных обфускаторов
  5. OpenNews: В репозитории Hugging Face выявлены вредоносные AI-модели, выполняющие код
Обсуждение (163 +40) | Тип: Проблемы безопасности |
·18.07.2025 Доступна платформа совместной разработки Forgejo 12.0 (76 +23)
  Опубликован выпуск платформы совместной разработки Forgejo 12.0, позволяющей развернуть на своих серверах систему для совместной работы с репозиториями Git, напоминающую по решаемым задачам GitHub, Bitbucket и Gitlab. Forgejo является форком проекта Gitea, который в свою очередь ответвился от платформы Gogs. Отделение Forgejo произошло в 2022 году после попыток коммерциализации Gitea и перехода управления в руки коммерческой компании. Проект Forgejo придерживается принципов независимого управления и подконтрольности сообществу. На использование Forgejo перешёл Git-хостинг Codeberg.org. Код проекта написан на языке Go и распространяется под лицензией GPLv3.

Ключевыми особенностями платформы является низкое потребление ресурсов (может использоваться на плате Raspberry Pi или в дешёвых VPS) и простой процесс установки. Предоставляются типовые возможности работы с проектами, такие как управление задачами, отслеживание проблем (issues), pull-запросы, wiki, средства для координации групп разработчиков, подготовка релизов, автоматизация размещения пакетов в репозиториях, управление правами доступа, сопряжение с платформами непрерывной интеграции, поиск кода, аутентификация через LDAP и OAuth, доступ к репозиторию по протоколам SSH и HTTP/HTTPS, подключение web-хуков для интеграции со Slack, Discord и другими сервисами, поддержка Git-хуков и Git LFS, инструменты для миграции и зеркалирования репозиториев. Отдельно выделяется возможность использования протокола ActivityPub для объединения в федеративную сеть отдельных серверов разработчиков.

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

  • Переработана страница с профилем пользователя. Добавлены дополнительные действия в меню профиля.
  • Улучшен интерфейс рецензирования pull-запросов на уровне отдельных коммитов (вместо полного списка изменений, охватывающего все коммиты, в данном режиме последовательно рецензируются отдельные коммиты). Для навигации по коммитам при рецензировании добавлены кнопки "вперёд" и "назад". Разрешено использование кнопки завершения рецензирования для отдельных коммитов. На страницах рецензирования оставлен видимым текст пояснения к коммиту.
  • Добавлена опция для отправки на email уведомлений о сбоях при выполнении работ по расписанию (Forgejo Actions).
  • Оптимизирован процесс проверки конфликтов с открытыми pull-запросами при помещении в целевую ветку новых коммитов. Ранее подобная проверка приводила нагрузке на ввод/вывод, пропорциональной числу открытых pull-запросов из-за применения операции к рабочему дереву. Переход на использование команды "git merge-tree --write-tree" позволил выполнять слияния, не обращаясь к рабочему дереву, что существенно снизило нагрузку в крупных внедрениях.
  • Добавлена возможность использования SSH для задач, ранее завязанных на OpenPGP. Для подписи коммитов после редактирования файлов или приёма изменений, вместо ключа GPG теперь может применяться ключ SSH (подпись формируется в TPM через ssh-agent).
  • По умолчанию добавлен файл robots.txt для информирования ботов о разделах, которые не следует индексировать.
  • Добавлена функция для поддержания форка в состоянии, синхронизированном с основным проектом.
  • Добавлена поддержка предпросмотра 3D-моделей в формате glTF.
  • В редакторе комментариев реализована возможность расстановки отступов клавишей Tab.
  • На базе Alpine 3.22 сформирован готовый образ контейнера для запуска Forgejo 12, использующий Git 2.49.1, GnuPG 2.4.7, SQLite 3.49.2 и OpenSSH 10.0.

  1. OpenNews: Доступна платформа совместной разработки Forgejo 9.0, перешедшая на лицензию GPLv3
  2. OpenNews: Fedora на пути к переводу Git-сервисов совместной разработки на платформу Forgejo
  3. OpenNews: Уязвимость в платформе совместной разработки Gogs, позволяющая выполнить код на сервере
  4. OpenNews: Проект Guix переходит на Git-хостинг Codeberg
  5. OpenNews: Платформа совместной разработки Forgejo полностью отделилась от Gitea
Обсуждение (76 +23) | Тип: Программы |
·18.07.2025 Домен putty.org начали использовать для распространения идей антипрививочников (154 +38)
  В январе 1999 года Саймон Тэтхем (Simon Tatham) выпустил первый публичный релиз SSH-клиента PuTTY, разместив сайт проекта на своей домашней странице www.chiark.greenend.org.uk/~sgtatham/putty/. В октябре 1999 года домен putty.org был зарегистрирован неизвестным перекупщиком, после чего в 2008 году его выкупил Денис Бидер (Denis Bider), сооснователь компании Bitvise. После покупки на сайте putty.org была размещена информация о SSH-клиенте PuTTY со скриншотом и ссылкой на страницу загрузки, ведущую на основной сайт проекта. Попутно на странице были размещены ссылки на проприетарный SSH-сервер и SSH-клиент от компании Bitvise.

В 2016 году, после замечаний о том, что сайт создаёт впечатление причастности Bitvise к разработке PuTTY, на страницу было добавлено примечание, что упомянутые продукты Bitvise никак не связаны с PuTTY и не должны восприниматься как рекомендуемые проектом PuTTY. В 2018 году на сайте появилась страница "FAQ", на которой было сказано, что компания Bitvise не имеет отношения к PuTTY, но развивает свой SSH-сервер, совместимый с PuTTY. В FAQ также было упомянуто, что многие клиенты Bitvise пользуются PuTTY и вынуждены искать страницу загрузки проекта, поэтому компания выкупила домен и создала отдельный сайт.

Со временем сайт putty.org стал восприниматься некоторыми пользователями как основная точка входа для загрузки PuTTY, а при поиске в Google, Yandex, Duckduckgo и Bing по ключевому слову "putty" домен putty.org показывается выше, чем официальная страница проекта www.chiark.greenend.org.uk/~sgtatham/putty. Сайт putty.org также часто упоминают в обсуждениях и рекомендациях, связанных с PuTTY.

13 июля один из блоггеров опубликовал заметку с критикой использования домена putty.org для рекламы продуктов Bitvise и призывом вернуть домен разработчику PuTTY. Утверждается, что компания Bitvise вводит пользователей в заблуждение, извлекает выгоду из возникшей путаницы и злоупотребляет доверием к открытому ПО для рекламы собственного SSH-клиента, конкурирующего с PuTTY.

Денис Бидер из компании Bitvise, владеющий доменом putty.org и никак не связанный с разработкой PuTTY, ответил, что проект PuTTY изначально не владел доменом и разговоры о возвращении домена, которого у проекта PuTTY никогда не было, беспочвенны и вводят окружающих в заблуждение. По словам Дениса, выкупив домен и использовав его для перенаправления на основную страницу загрузки он действовал без корыстных мотивов, а ссылки на своё ПО разместил для компенсации своих затрат.

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

  1. OpenNews: Выпуск SSH-клиента PuTTY 0.83
  2. OpenNews: Создатель форка Audacity покинул проект после конфликта при выборе нового имени
  3. OpenNews: Конфликт, связанный с торговыми марками PostgreSQL, остаётся не урегулирован
  4. OpenNews: OBS Studio и Fedora урегулировали конфликт
  5. OpenNews: Линус Торвальдс вступил в дискуссию с антипрививочником в списке рассылки ядра Linux
Обсуждение (154 +38) | Тип: К сведению |
Следующая страница (раньше) >>



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

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