The OpenNET Project / Index page

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

·30.04.2026 Copy Fail - уязвимость в ядре Linux, позволяющая получить root в большинстве дистрибутивов (172 +37)
  Исследователи из компании Xint выявили в ядре Linux уязвимость (CVE-2026-31431), позволяющую непривилегированному пользователю получить root-доступ к системе. Проблеме присвоено кодовое имя Copy Fail. Доступен прототип эксплоита. Возможность эксплуатации уязвимости продемонстрирована в Ubuntu 24.04 LTS, Amazon Linux 2023, RHEL 10.1 и SUSE 16, но отмечается, что пакеты с ядром из других дистрибутивов, включая Debian, Arch, Fedora, Rocky и Alma, тоже подвержены проблеме, но их отдельно не тестировали. Теоретически уязвимость может быть эксплуатирована в любых дистрибутивах с ядрами Linux начиная с 4.14, в которых не отключена поддержка сокетов AF_ALG.

Уязвимость вызвана логической ошибкой в crypto API (AF_ALG) ядра Linux, допущенной в 2017 году при внесении оптимизации, убирающей лишнюю буферизацию через выполнение по месту (in-place) операций блочного шифрования AEAD (Authenticated Encryption with Associated Data). Проблема возникла из-за необдуманного использования функции splice(), передающей данные между файловыми дескрипторами и каналами (pipe) без копирования, путём передачи ссылок на элементы в страничном кэше. После внесения оптимизации при передаче файла в сокет AF_ALG для расшифровки в структуру scatterlist записывалась не ссылка на отдельный буфер, а прямая ссылка на элементы страничного кэша ядра c данными файла.

В дальнейшем в процессе расшифровки AEAD вместе использовались привязанные по ссылке данные тега аутентификации ("authentication tag") из страничного кэша и копируемые в RX-буфер дополнительные аутентифицируемые данные (AAD, Associated Authenticated Data) и шифротекст, а смещение для операции записи в тег аутентификации рассчитывалось с учётом скопированных данных без должных проверок, что позволяло перезаписать произвольные области в страничном кэше.

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

Для выполнения кода с правами root достаточно добиться изменения страничного кэша для любого исполняемого файла с флагом suid root. В предложенном эксплоите выполняется чтение исполняемого файла /usr/bin/su и модификация загруженного в страничный кэш содержимого этого файла для подстановки в него своего кода. При последующем запуске утилиты "su" будет загружен в память не оригинальный исполняемый файл с накопителя, а изменённая копия из страничного кэша.

Эксплоит универсален, не требует адаптации к дистрибутивам или версиям ядра, и может использоваться с любыми дистрибутивами. Так как при использовании контейнерной изоляции для всех контейнеров используется общий страничный кэш, уязвимость можно использовать для получения доступа к хост-окружению из контейнера (позднее обещают опубликовать эксплоит для обхода изоляции в Kubernetes).

Уязвимость выявлена при помощи AI примерно после часа экспериментов с анализом кода криптоподсистемы ядра. Проблема проявляется начиная с ядра Linux 4.14, выпущенного в 2017 году, и устранена в ядрах 6.18.22, 6.19.12 и 7.0. Статус устранения уязвимостей в дистрибутивах можно оценить на данных страницах: Debian, Ubuntu, SUSE/openSUSE, RHEL, Gentoo, Arch, Fedora, ROSA. Актуальные версии Android не подвержены атаке из-за ограничения доступа к сокетам AF_ALG при помощи SELinux.

В качестве обходного пути защиты можно отключить модуль ядра algif_aead, который используется в OpenSSL при явном включении движка afalg и в отдельных приложениях (проверить наличие подобных запущенных приложений можно командой "lsof | grep AF_ALG"):

Обсуждение (172 +37) | Тип: Проблемы безопасности | Интересно
·30.04.2026 Выпуск инструментариев для управления контейнерами LXC 7.0 и LXD 6.8 (13 +11)
  Сообщество Linux Containers опубликовало релиз инструментария для организации работы изолированных контейнеров LXC 7.0, предоставляющий runtime, подходящий как для запуска контейнеров с полным системным окружением, близких к виртуальным машинам, так и для выполнения непривилегированных контейнеров отдельных приложений (OCI). LXC относится к низкоуровневым инструментариям, работающим на уровне отдельных контейнеров. Для централизованного управления контейнерами, развёрнутыми в кластере из нескольких серверов, на базе LXC развиваются системы Incus и LXD. Ветка LXC 7.0 отнесена к выпускам с длительной поддержкой, обновления для которых формируются в течение 5 лет (до 2031 года). Код LXC написан на языке Си и распространяется под лицензией GPLv2.

В состав LXC входит библиотека liblxc, набор утилит (lxc-create, lxc-start, lxc-stop, lxc-ls и т.п.), шаблоны для построения контейнеров и набор биндингов для различных языков программирования. Изоляция осуществляется при помощи штатных механизмов ядра Linux. Для изоляции процессов, сетевого стека ipc, uts, идентификаторов пользователей и точек монтирования используется механизм пространств имён (namespaces). Для ограничения ресурсов применяются cgroups. Для понижения привилегий и ограничения доступа задействованы такие возможности ядра, как профили Apparmor и SELinux, политики Seccomp, Chroots (pivot_root) и capabilities.

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

  • Реализована изоляция процесса мониторинга при помощи механизма Landlock, позволяющего непривилегированным программам сбрасывать ненужные для работы привилегии, добровольно ограничивая свой дальнейший доступ к системе в целях повышения безопасности. Landlock задействован для ограничения обработчиков API мониторинга возможностью работы только с контейнером и запрета доступа к файлам за его пределами. Защита применяется при сборке landlock-monitor.
  • Разделена конфигурация обработчиков (hook) и контейнеров (runtime). Добавлены новые настройки lxc.environment.hooks и lxc.environment.runtime, при помощи которых можно выборочно выставлять переменные окружения только для контейнеров, не передавая их hook-обработчикам, и наоборот.
  • Прекращена поддержка cgroup v1, а также ядер Linux, не поддерживающих PIDFD и новый API управления монтированием.
  • Устранена уязвимость (CVE-2026-39402), позволяющая обойти авторизацию и добиться удаления портов OVS (OpenVswitch) через манипуляцию с командой "lxc-user-nic delete". Уязвимость позволяет непривилегированному пользователю отключить сетевые интерфейсы для контейнеров, запущенных другими пользователями.

Кроме того, компания Canonical опубликовала новую версию системы управления контейнерами LXD 6.8. LXD предоставляют инструменты для централизованного управления контейнерами и виртуальными машинами, развёрнутыми как на одном хосте, так и в кластере из нескольких серверов. Проект реализован в виде фонового процесса, принимающего запросы по сети через REST API и поддерживающего различные бэкенды хранилищ (дерево директорий, ZFS, Btrfs, LVM), снапшоты со срезом состояния, live-миграцию работающих контейнеров с одной машины на другую и средства для хранения образов контейнеров. В качестве runtime для запуска контейнеров используется инструментарий LXC.

Среди изменений в LXD 6.8:

  • Добавлена функция связывания кластеров (Cluster links), позволяющая организовать защищённое и аутентифицированное при помощи TLS-сертификатов взаимодействие между разными кластерами LXD. Для управления связыванием добавлена команда "lxc cluster link" и реализован соответствующий раздел в web-интерфейсе.
  • Добавлена новая роль узлов кластера - "control-plane", при помощи которой можно выделить узлы, участвующие в определении консенсуса Raft и способные выступать в роли запасных или мастер-узлов БД.
  • Реализованы репликаторы, позволяющие использовать API Сluster links для репликации содержимого узлов в другие кластеры LXD с целью обеспечения отказоустойчивости.
  • Добавлена поддержка горячего подключения устройств GPU CDI (Container Device Interface) к работающим контейнерам.
  • В драйвер хранилища Ceph добавлена поддержка протокола msgr2 (Ceph messenger v2).
  • В web-интерфейсе добавлены инструменты для управления ролями узлов кластера, модернизирован редактор конфигурации в формате YAML, реализовано стилизованное под Ubuntu оформление встроенного эмулятора терминала, улучшен выбор драйверов хранилищ.

  1. OpenNews: Выпуск инструментариев для управления контейнерами LXC 6.0, Incus 6.0 и LXD 5.21.1
  2. OpenNews: Выпуск системы управления контейнерами LXC 5.0
  3. OpenNews: Уязвимость в runc и LXC, затрагивающая Docker и другие системы контейнерной изоляции
  4. OpenNews: Первый выпуск Incus, форка системы управления контейнерами LXD
  5. OpenNews: Компания Canonical перевела проект LXD на лицензию AGPLv3
Обсуждение (13 +11) | Тип: Программы |
·29.04.2026 Представлен GTK2-NG, форк библиотеки GTK2 (115 +54)
  Один из разработчиков дистрибутива Devuan представил проект GTK2-NG, который будет развивать форк библиотеки GTK2, нацеленный на продолжение её сопровождения и обеспечение качественной работы в современных дистрибутивах. Поддержание форка позволит продолжить поставку в Devuan приложений, завязанных на GTK2, после прекращения поддержки GTK2 в дистрибутиве Debian 14, релиз которого ожидается летом 2027 года.

Разработчики проекта GTK прекратили сопровождение GTK2 более пяти лет назад, а пакеты с GTK2 уже исключены из официальных репозиториев дистрибутивов Red Hat Enterprise Linux, SUSE Linux Enterprise Server, openSUSE и Arch Linux (доступен через AUR). Из значимых проектов GTK2 продолжает использовать звуковой редактор Ardour, но данный проект не зависит от внешних библиотек и поддерживает собственный форк GTK2 - YTK. В репозитории Debian остаётся около 150 пакетов, связанных зависимостями с GTK2, среди которых afterstep, Double Commander, fpc, gkrellm, gmpc, hexchat, lazarus, mplayer, navit, pidgin, sane-frontends, scim, sylpheed, tickr, tilem, uim, usermode, xsane, xzgv и z88.

В GTK2-NG добавлено несколько десятков изменений, в основном связанных с переносом исправлений, распространявшихся в форме патчей в пакетах из AUR и Debian, и исправлением предупреждений, выдаваемых компилятором. Из улучшений отмечается модернизация функции сортировки массивов g_sort_array и замена алгоритма масштабирования для повышения чёткости пиктограмм. В виджете выбора файлов (filechooser) решены имевшиеся проблемы и проведена оптимизация отображения в виде иконок содержимого каталогов с большим числом файлов. Протестирована сборка с использованием GCC 14 и Clang 21.

Из планов на будущее отмечается перенос изменений из форка GTK2, развиваемого участником проекта Xlibre - stefan11111, а также бэкпортирование кода из YTK, форка GTK2 от проекта Ardour. Среди задач также называется проверка сборки в GCC 15 и добавление поддержки использования libppd для вывода на печать на системах с CUPS 3.x. Не исключается задействование лицензии GPLv3 для нового кода и смена названия для исключения претензий от проекта GNOME.

  1. OpenNews: В Debian 14 намерены прекратить поставку GTK2
  2. OpenNews: Эксперимент по использованию AI для перевода приложения с GTK2 и OpenGL на GTK4 и Vulkan
  3. OpenNews: Ardour прекратил поддержку сборки с GTK2 в пользу форка YTK
  4. OpenNews: В звуковом редакторе Ardour 8.4 создано собственное ответвление GTK2
  5. OpenNews: Доступен графический тулкит GTK 4.22 со встроенным движком отрисовки SVG
Обсуждение (115 +54) | Тип: Программы |
·29.04.2026 Valve опубликовала сетевую библиотеку GameNetworkingSockets 1.5.0 (120 +25)
  После четырёх лет разработки компания Valve опубликовала релиз библиотеки GameNetworkingSockets 1.5.0 с реализацией системы передачи сообщений поверх UDP, которая может применяться для организации высокоскоростного и надёжного сетевого обмена данными в играх. Код написан на языке С++ и поставляется под лицензией BSD.

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

Протокол поддерживает такие возможности как обработка фрагментации, пересборка пакетов, прогнозирование и ограничение пропускной способности, создание P2P-каналов связи, обход трансляторов адресов (через WebRTC ICE) и шифрование. Данные в пакетах шифруются с использованием алгоритма блочного шифрования AES, а для обмена ключами и проверки сертификатов применяются цифровые подписи на базе эллиптических кривых Ed25519. Механизмы доставки ключей и выбора вектора инициализации для каждого пакета основаны на методах, применяемых в протоколе QUIC.

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

  • API ISteamNetworkingSockets::SendMessages расширен для упрощения обработки сбоев при отправке и инициирования повторных попыток доставки.
  • Добавлены новые настройки для ECN, jitter-а, определения локального IP (IPLocalHost) и отключения аутентификации (AllowWithoutAuth).
  • Добавлен вариант API ISteamNetworkingMessages для языка Си.
  • Реализована начальная версия обвязки для языка Rust.
  • Исправлены ошибки в реализации режима P2P.
  • Реализована автоматическая корректировка ситуаций, связанных с нарушением порядка прихода пакетов и сообщений.
  • Улучшена интеграция с инструментариями CMake и vcpkg.
  • Налажена совместимость с новыми версиями библиотек protobuf и abseil.
  • Добавлена поддержка диагностики через ETW (Event Tracing for Windows).
  • Устранены уязвимости, информация о которым не детализируется, но судя по логу изменений речь о целочисленном переполнении в функциях отправки пакетов и возможности обхода проверки сертификата в функции CheckCertPOPID.

  1. OpenNews: Компания Valve представила приставку Steam Machine и VR-шлем Steam Frame, поставляемые с Linux
  2. OpenNews: Разработчик из Valve оптимизировал драйвер RADV для работы с Llama.cpp
  3. OpenNews: Компания Valve опубликовала дистрибутив для игровых консолей SteamOS 3.7
  4. OpenNews: Компания Valve опубликовала код игры Team Fortress 2
  5. OpenNews: Компания Valve запустила проект Frog для ускорения продвижения новых протоколов Wayland
Обсуждение (120 +25) | Тип: Программы |
·29.04.2026 В Нидерландах на базе Forgejo создана платформа совместной разработки кода для госучреждений (39 +15)
  Правительство Нидерландов ввело в строй собственный хостинг исходного кода code.overheid.nl, на котором планируют публиковать и совместно разрабатывать открытое ПО для госучреждений. Хостинг позиционируется как европейская альтернатива GitHub и GitLab и направлен на обеспечение цифрового суверенитета. В качестве основы использована открытая платформа совместной разработки Forgejo.

Проект запущен подразделением Open Source Program Office, созданным при Министерстве внутренних дел и по делам королевства Нидерландов, и продвигает философию "Открыто, если не оговорено иное" ("Open, tenzij"), в соответствии с которой по умолчанию код развиваемых для госучреждений программных продуктов по возможности должен публиковаться в открытом доступе, чтобы другие госучреждения, граждане и компании могли проверять, использовать для собственных целей и улучшать код. Предполагается, что подобный подход не только повысит качество ПО, но и позволит добиться увеличения прозрачности процессов.

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

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

  1. OpenNews: Готовность платформы совместной разработки Fedora Forge
  2. OpenNews: Доступна платформа совместной разработки Forgejo 13.0
  3. OpenNews: Госучреждения Дании уходят от продуктов Microsoft в пользу открытого ПО
  4. OpenNews: Из курирующей LibreOffice организации TDF исключены все сотрудники Collabora
  5. OpenNews: Часть компьютеров в госучреждениях Франции планируют перевести с Windows на Linux
Обсуждение (39 +15) | Автор: User097 | Тип: К сведению |
·28.04.2026 В Python-пакет elementary-data, имеющий 1.1 млн загрузок в месяц, внедрён вредоносный код (61 +23)
  Компания Elementary Data сообщила о компрометации рабочих процессов GitHub Actions, в результате которой атакующие смогли опубликовать в каталоге PyPI и в GitHub-репозитории выпуск пакета elementary-data 0.23.3, в который был внедрён вредоносный код для кражи конфиденциальной информации с систем пользователей. Вредоносный выпуск также был включён в состав официального Docker-образа проекта. В прошлом месяце пакет elementary-data был загружен из репозитория PyPI более 1.1 млн раз.

Вредоносный релиз был опубликован 25 апреля в 1:20 (MSK) и оставался доступен для загрузки более 11 часов (до 12:45). Атака была совершена через отправку pull-запроса со специально оформленным комментарием, эксплуатирующим уязвимость в автоматически вызываемом обработчике GitHub Action. Атакующим удалось запустить shell-команды в окружении непрерывной интеграции и извлечь из него содержимое переменной окружения GITHUB_TOKEN с токеном доступа к репозиторию. Данный токен был использован для создания нескольких веток в git и подготовке релиза.

В состав опубликованного атакующими релиза был включён вредоносный код, закодированный в формате base64 и активируемый при установке пакета. Вредоносный код осуществлял сканирование системы и отправку конфиденциальных данных, таких как ключи SSH и SSL/TLS, содержимое переменных окружения, учётные данные к AWS, GCP, Azure и K8s, ключи от криптокошельков, пароли к СУБД, историю операций в командном интерпретаторе, файлы конфигурации от Git, CI/CD, пакетных менеджеров и Docker.

  1. OpenNews: Компрометация PyPI-пакета Telnyx
  2. OpenNews: В PyPI размещены вредоносные выпуски библиотеки LiteLLM, насчитывающей 95 млн загрузок в месяц
  3. OpenNews: Атакующие получили доступ к 174 учётным записям в каталоге PyPI
  4. OpenNews: Перехвачены 4 учётные записи в PyPI и выпущены вредоносные релизы num2words
  5. OpenNews: Инциденты с безопасностью в репозиториях PyPI и crates.io
Обсуждение (61 +23) | Тип: Проблемы безопасности |
·28.04.2026 Выпуск дистрибутива Fedora Linux 44 (103 +18)
  Представлен релиз дистрибутива Fedora Linux 44. Для загрузки подготовлены продукты Fedora Workstation, Fedora KDE Plasma Desktop, Fedora Server, Fedora IoT, Fedora CoreOS, Fedora Cloud Base, Fedora IoT Edition, Fedora Silverblue, Fedora Kinoite и Live-сборки, поставляемые в форме спинов c пользовательскими окружениями Xfce, MATE, Cinnamon, LXDE, Phosh, Miracle, LXQt, Budgie, Sway и Cosmic. Сборки сформированы для архитектур x86_64, Power64 и ARM64 (AArch64).

Наиболее значимые изменения в Fedora Linux 44:

  • Среда рабочего стола GNOME обновлена до ветки 50, в которой удалён код для поддержки X11, переработан интерфейс родительского контроля, улучшена поддержка нецелых уровней масштабирования и механизма VRR (Variable Refresh Rate), реализована поддержка Wayland-протокола color-management-v2 для управления цветом.
  • Во всех вариантах дистрибутива со средой рабочего стола KDE (Fedora KDE Plasma Desktop Edition, Fedora KDE Plasma Mobile Spin и Fedora Kinoite) для настройки системы после установки задействован развиваемый проектом KDE мастер начальной настройки Plasma Setup, а в инсталляторе Anaconda отключены пересекающиеся с данным приложением стадии конфигурирования системы.
  • Во всех редакциях с KDE менеджер входа SDDM заменён на Plasma Login Manager, развиваемый проектом KDE.
  • Переработана редакция Fedora Games Lab, предлагающая подборку пакетов и настроек для любителей компьютерных игр. В новом варианте обновлён программный стек для запуска игр и задействованы актуальные технологии, такие как Wayland и PipeWire.
  • Пользовательское окружение Budgie обновлено до ветки 10.10, переведённой на Walyand.
  • В инсталляторе Anaconda изменена логика создания сетевых профилей (файлов с настройками для NetworkManager) в установленной системе. Подобные профили теперь создаются не для всех имеющихся проводных сетевых устройств, а только для устройств, настроенных в процессе установки через GUI, загрузочные опции или kickstart-файл. Создание профилей для всех доступных устройств, а не только выбранных пользователем, требовало удаления лишних профилей после установки и вызывало трудности при последующей необходимости изменения настроек.
  • По умолчанию активирован модуль ядра NTSYNC, позволяющий существенно поднять производительность Windows-игр, запускаемых при помощи Wine. Модуль реализует символьное устройство /dev/ntsync и набор примитивов для синхронизации, применяемых в ядре Windows NT. Значительный прирост производительности достигается благодаря избавлению от накладных расходов, связанных с применением RPC в пространстве пользователя.
  • На системах с архитектурой Аarch64 обеспечен автоматический выбор файла описания оборудования DTB (Device Tree Blobs) для загрузчика UEFI, что решило проблемы с загрузкой Live-сборок Fedora на ARM-ноутбуках, поставляемых с Windows.
  • В Live-сборках задействован набор скриптов livesys-scripts для настройки рабочего окружения и новые возможности инструментария Dracut для автоматического создания сохраняемого между перезагрузками оверлейного хранилища при записи образа на USB-накопители.
  • Продолжена работа по переводу инфраструктуры непрерывной интеграции (dist-git CI), выполняющей пересборку RPM-пакетов после внесения изменений или обновления версий, на использование по умолчанию инструментария Packit вместо Fedora CI и Zuul.
  • Включено по умолчанию использование жёстких ссылок для связывания идентичных файлов, устанавливаемых из разных пакетов в иерархию /usr. Создание жёсткой ссылки осуществляется автоматически при установке пакета обработчиком на стадии "post install".
  • В репозиторий добавлен инструментарий с пакетным менеджером Nix, позволяющий устанавливать пакеты в формате Nix из коллекции nixpkgs. Пакеты можно ставить в однопользовательском (в домашний каталог пользователя) и многопользовательском (в каталог /nix) режимах.
  • Прекращена поставка сборок QEMU для 32-разрядных хост-систем (i686). Изменение отражает работу проекта QEMU по удалению поддержки 32-разрядных хост-систем.
  • Из состава атомарных редакций Fedora для десктоп систем удалены исполняемые файлы и библиотеки FUSE 2 (ранее данная версия была объявлена устаревшей и все пакеты переведены на использование FUSE 3). Также прекращена поддержка устаревших правил polkit, поставлявшихся в файлах с расширением pkla.
  • PackageKit переключён на использование нового бэкенда DNF5, собранного с библиотекой libdnf5.
  • В редакции дистрибутива с композитным менеджером MiracleWM оболочка рабочего стола nwg-shell заменена на Dank Material Shell.
  • В Fedora Cloud вместо отдельного раздела /boot теперь предлагается одноимённый подраздел Btrfs.
  • Прекращена поставка пакета libreoffice-KF5 с компонентами для интеграции LibreOffice с Qt5, на смену которому пришёл пакет libreoffice-kf6, обеспечивающий интеграцию с Qt6.
  • Загрузка библиотеки OpenSSL ускорена за счёт распределения сертификатов по подкаталогам (формат directory-hash) вместо их размещения в одном файле /etc/pki/tls/cert.pem.
  • Обновлены версии пакетов: ядро Linux 7.0, GCC 16.1-prerelease, LLVM 22, Ruby 4.0, Go 1.26, binutils 2.46, glibc 2.43, gdb 16.3, CMake 4.0, MariaDB 11.8, IBus 1.5.34, uutils-coreutils 0.5, nushell 0.109.2, Django 6.x, TagLib 2, Helm 4, Ansible 13, TeXLive 2025, GHC 9.10, PHP 8.5.
  • Проведена работа по доведению инфраструктуры для воспроизводимых сборок до охвата не менее чем 99% пакетов в репозитории Fedora. В прошлых выпусках охват воспроизводимыми сборками оценивался в 90%, благодаря внесению в сборочную систему изменений, синхронизирующих метаданные о времени модификации файлов с эталонным исходным кодом, а также обеспечивающих постоянный порядок перечисления метаданных и структур в бинарных файлах. Для обеспечения воспроизводимых сборок в оставшихся 10% к участию были привлечены сопровождающие проблемных пакетов. Воспроизводимые сборки дают пользователю возможность лично убедиться, что распространяемые в пакетах бинарные файлы собраны из предоставляемого исходного кода и не содержат скрытых изменений, осуществлённых в результате компрометации компилятора или сборочного инструментария.

Для Fedora 44 введены в строй репозитории "free" и "nonfree" от проекта RPM Fusion, в которых доступны пакеты с дополнительными мультимедиа приложениями (MPlayer, VLC, Xine), видео/аудио кодеками, поддержкой DVD, проприетарными драйверами AMD и NVIDIA, игровыми программами и эмуляторами.

  1. OpenNews: Выпуск дистрибутива Fedora Linux 43
  2. OpenNews: Планы по введению статуса проверенного участника Fedora
  3. OpenNews: Microsoft рассматривает возможность перевода Azure Linux на пакетную базу Fedora
  4. OpenNews: Готовность платформы совместной разработки Fedora Forge
  5. OpenNews: В Fedora утверждены правила использования AI-инструментов при разработке
Обсуждение (103 +18) | Тип: Программы |
·28.04.2026 В Ubuntu намечена интеграция AI (404 –41)
  Джон Сигер (Jon Seager), вице-президент компании Canonical по инжинирингу и технический лидер проекта Ubuntu, обобщил планы по интеграции в дистрибутив функциональности на основе больших языковых моделей. На первом этапе разработчики Ubuntu намерены задействовать AI-модели для улучшения существующей функциональности дистрибутива, после чего добавить в дистрибутив отдельные AI-возможности и рабочие процессы для пользователей, заинтересованных в использовании AI. AI-возможности будут интегрироваться в дистрибутив постепенно в течение 2027 года, без принуждения и по мере доведения их до готовности.

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

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

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

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

Внутри компании Canonical решено не отталкиваться изначально от определённого AI-стека, а в течение следующих 6 месяцев предоставить командам возможность углубиться в тему, попробовать разные AI-стеки, выбрать оптимальные для их задач AI-решения, понять сильные стороны AI-инструментов и их ограничения. Сотрудники компании по-прежнему будут оцениваться по тому, как хорошо они выполняют свои задачи, а не по тому, используют ли они AI.

  1. OpenNews: Релиз дистрибутива Ubuntu 26.04
  2. OpenNews: Интервью с Грегом Кроа-Хартманом о созданных через AI отчётах об ошибках
  3. OpenNews: Anthropic анонсировал AI-модель Claude Mythos, умеющую создавать рабочие эксплоиты
  4. OpenNews: Платформа Cal.com прекратила публиковать код из-за опасения выявления уязвимостей через AI
  5. OpenNews: SDL запретил приём кода от AI. Созданы форки Vim, избавленные от AI-изменений
Обсуждение (404 –41) | Тип: К сведению |
·27.04.2026 Bambu Lab добилась удаления альтернативного проекта для отправки команд на свои 3D-принтеры (105 –44)
  Китайский производитель 3D-принтеров Bambu Lab добился удаления кода из репозитория OrcaSlicer-bambulab под угрозой судебного иска к разработчику. Разработчику вменяется проведение обратного инжиниринга проприетарного ПО для отправки команд на 3D-принтеры Bambu Lab, обход механизмов авторизации, маскировка под продукт Bambu Studio и нарушение условий использования. По мнению разработчика проекта OrcaSlicer-bambulab обвинения беспочвенны и он ничего не нарушал, поскольку использовал для обеспечения совместимости с 3D-принтерами компоненты из репозитория Bambu Studio, распространяемого компанией Bambu Lab под лицензией AGPLv3.

Разработчик попытался запросить юридическое обоснование, список нарушаемых пунктов условий использования и информацию о том, какие именно файлы и коммиты в его репозитории содержат нарушения, но в ответ представители Bambu Lab не предоставили конкретных сведений, а лишь усилили давление и сослались на недопустимость обратного инжиниринга. Разработчик OrcaSlicer-bambulab решил не доводить дело до судебной тяжбы и добровольно удалил содержимое репозитория.

Проект OrcaSlicer-bambulab представлял собой ответвление от свободного пакета для подготовки моделей к 3D-печати OrcaSlicer, выполняющего преобразование 3D-модели в набор двумерных горизонтальных слоёв, последовательно выводимых на 3D-принтере. В свою очередь OrcaSlicer является форком пакета Bambu Studio, который когда-то ответвился от свободного проекта Prusa Slicer. Все упомянутые проекты распространяются под лицензией AGPLv3.

OrcaSlicer-bambulab был создан после блокирования возможности прямой печати из OrcaSlicer в выпущенном год назад обновлении прошивки к 3D-принтерам Bambu Lab. Для работы с устройствами после обновления прошивки требовалась установка дополнительного проприетарного приложения Bambu Connect, без которого послойный вывод на печать перестал работать. OrcaSlicer-bambulab возвращал в OrcaSlicer возможность напрямую отправлять команды 3D-принтерам Bambu Lab без необходимости установки Bambu Connect.

Bambu Lab считает, что при разработке OrcaSlicer-bambulab был проведён обратный инжиниринг проприетарного плагина, который в репозитории Bambu Studio описан как необязательный компонент, основанный на несвободных библиотеках. Автор OrcaSlicer-bambulab утверждает, что он не использовал данный плагин и не распространял его через свой репозиторий, а реализованный метод отправки команд на 3D-принтеры основан на общедоступном исходном коде Bambu Studio, поставляемом под лицензией AGPLv3, и собственном слое интеграции.

Среди претензий также упоминалось, что изменённая кодовая база OrcaSlicer-bambulab может использоваться для обхода реализованной в прошивке системы авторизации и защиты от отправки несанкционированных команд на 3D-принтер, способных повредить устройство. На данную претензии автор OrcaSlicer-bambulab ответил, что несмотря на попытку приписать проекту создание особой скрытой возможности, использованный метод отправки команд продолжает поддерживаться прошивкой и применяться в официальном Linux-стеке для принтеров Bambu Lab, т.е. возможность обхода авторизации предусмотрена в прошивке штатно.

Дополнительно автор OrcaSlicer-bambulab предположил, что проектом OrcaSlicer дело не ограничится и Bambu Lab может на уровне прошивки нарушить совместимость с открытым модулем подачи материала BMCU (Bambu Multi-Color Unit), который энтузиасты собирают своими руками из продаваемых AliExpress наборов деталей и используют для 4-цветной 3D-печати вместо продукта AMS Lite от Bambu Lab. В связи с этим началась работа над проектом по адаптации BMCU для 3D-принтеров, управляемых открытой прошивкой Klipper.

  1. OpenNews: Компания Nintendo добилась прекращения разработки эмулятора Ryujinx
  2. OpenNews: Разработчики Yuzu согласились закрыть проект и выплатить Nintendo компенсацию в 2.4 млн долларов
  3. OpenNews: Дэниэл Бернштейн подал в суд из-за утаивания NIST информации о постквантовых криптоалгоритмах
  4. OpenNews: Суд обязал компанию AVM выполнить условия лицензии LGPL
  5. OpenNews: Sony намерена судиться с любым, кто причастен к публикации кода для взлома PlayStation 3
Обсуждение (105 –44) | Тип: К сведению |
·27.04.2026 Выпуск десктоп-окружения Trinity 14.1.6, продолжающего развитие KDE 3.5 (128 +39)
  После полугода разработки опубликован релиз десктоп-окружения Trinity R14.1.6, продолжающего развитие кодовой базы KDE 3.5.x и Qt 3. Бинарные пакеты в ближайшее время будут подготовлены для Ubuntu, Debian, RHEL/CentOS, Fedora, Arch, openSUSE и других дистрибутивов.

Из особенностей Trinity можно отметить собственные средства для управления параметрами экрана, основанная на udev прослойка для работы с оборудованием, новый интерфейс для настройки оборудования, переход на композитный менеджер Compton-TDE (форк Compton с расширениями TDE), улучшенный конфигуратор сети и механизмы аутентификации пользователей. Окружение Trinity может быть установлено и использовано одновременно с более актуальными выпусками KDE, в том числе предоставлена возможность использования в Trinity уже установленных в системе KDE-приложений. Также присутствуют средства для корректного отображения интерфейса GTK-программ без нарушения единого стиля оформления.

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

  • В браузере konqueror актуализирован список поисковых систем, убраны устаревшие поисковые сервисы и добавлены новые, такие как DuckDuckGo, StartPage, Qwant и Brave Search. Также добавлен поиск по wiki-сайтам и репозиториям пакетов различных дистрибутивов. В раздел меню "Go" добавлена кнопка "Desktop" для открытия директории с содержимым рабочего стола.
  • В программу для создания скриншотов ksnapshot добавлена поддержка перемещения изображений в другие приложения мышью в режиме drag&drop.
  • В конфигуратор системы ввода kxkb добавлены дополнительные настройки, влияющие на совместимость, и опции включения клавиш быстрого ввода знаков валют.
  • В оконном менеджере twin решены проблемы с прозрачностью и мозаичной компоновкой развёрнутых на весь экран окон.
  • В панель kicker добавлена опция для показа объёмных рамок.
  • В утилиту kdf (KDiskFree) добавлена возможность работы с накопителями, размером больше 2TB.
  • В интерфейс просмотра таблицы символов kcharselect добавлена прокрутка для упрощения навигации и улучшено перемещение с использованием клавиш управления курсором и PgUp/PgDown.
  • В утилите tdeio_iso реализована поддержка формата сжатия xz.
  • На использование сборочной системы CMake переведены krusader и kvirc.
  • В коде разрешено использование стандарта C++17.
  • Добавлена поддержка FFmpeg 8.0 и binutils 2.46.
  • Для Debian реализована возможность сборки для архитектуры loong64.
  • Добавлена поддержка дистрибутивов Fedora 44 и Mageia 10.

  1. OpenNews: Выпуск десктоп-окружения Trinity 14.1.5, продолжающего развитие KDE 3.5
  2. OpenNews: Выпуск дистрибутива Q4OS 6.1, поставляемого с пользовательским окружением Trinity
  3. OpenNews: Опубликована среда рабочего стола LXQt 2.4.0
  4. OpenNews: Девятый экспериментальный выпуск среды рабочего стола Orbitiny
  5. OpenNews: Проект LeanQt развивает урезанный форк Qt 5
Обсуждение (128 +39) | Тип: Программы |
·26.04.2026 Microsoft рассматривает возможность перевода Azure Linux на пакетную базу Fedora (125 +14)
  Конан Кудо (Conan Kudo), член технического комитета проекта Fedora, на прошедшей несколько дней назад online-встрече участников группы ELN (Enterprise Linux Next) упомянул желание компании Microsoft перевести дистрибутив Azure Linux частично на пакетную базу Fedora Linux. Для достижения более высокой производительности в Azure Linux требуется наличие сборок пакетов для архитектуры x86_64-v3 и разработчики Microsoft намеревались создать форк пакетной базы Fedora, пересобранный для x86_64-v3.

В настоящее время пакеты в Fedora собираются для архитектуры x86_64-v1, но на стадии обсуждения находится план предоставления в Fedora Linux 45 сборок пакетов для архитектуры x86_64-v3 в дополнение к сборкам x86_64-v1. Одним из трёх авторов инициативы является Кайл Господнетич (Kyle Gospodnetich), инженер из Micrоsoft. Данный план ещё не утверждён комитетом FESCo (Fedora Engineering Steering Committee), отвечающим за техническую часть разработки Fedora Linux. Предполагается, что в случае одобрения плана можно будет совместить интересы обоих проектов, и организовать сотрудничество с Microsoft в области поддержки архитектуры x86_64-v3 в Fedora. В 2023 году на пакетную базу Fedora компания Amazon перевела дистрибутив Amazon Linux.

Версии x86-64-v* определяют неофициальный способ идентификации срезов состояния микроархитектуры, охватывающих определённые наборы расширений. Третья версия микроархитектуры x86-64 (x86-64-v3) применяется в процессорах Intel примерно с 2015 года (начиная с Intel Haswell) и отличающейся наличием расширений AVX, AVX2, BMI2, FMA, LZCNT, MOVBE и SXSAVE. Версия x86-64-v2 охватывает расширения SSE3, SSE4_2, SSSE3, POPCNT, LAHF-SAHF и CMPXCHG16B, а версия x86-64-v4 - AVX512F, AVX512BW, AVX512CD, AVX512DQ и AVX512VL. В большинстве случаев прирост производительности при сборке с оптимизациями для архитектуры x86-64-v3 составляет примерно 1%, но в отдельных ситуациях в приложениях, выполняющих ресурсоёмкие вычисления, может наблюдаться более заметное повышение производительности.

Дистрибутив Azure Linux предоставляет небольшой типовой набор основных пакетов, выступающих универсальной основой для создания начинки контейнеров, хост-окружений и сервисов, запускаемых в облачных инфраструктурах и на edge-устройствах. Azure Linux применяется в качестве основы мини-дистрибутива WSLg, в котором предоставляются компоненты графического стека для организации запуска GUI-приложений Linux в окружениях на базе подсистемы WSL2 (Windows Subsystem for Linux). Для управления сервисами и загрузкой применяется системный менеджер systemd, а для управления пакетами поставляются пакетные менеджеры RPM и DNF.

Система сборки Azure Linux позволяет генерировать как отдельные RPM-пакеты на основе SPEC-файлов и исходных текстов, так и монолитные системные образы, формируемые при помощи инструментария rpm-ostree и обновляемые атомарно без разбивки на отдельные пакеты. Соответственно, поддерживается две модели доставки обновлений: через обновление отдельных пакетов и через перестроение и обновление всего системного образа. Доступен репозиторий, включающий около 3000 уже собранных RPM-пакетов, который можно использовать для компоновки собственных образов на основе файла конфигурации. Базовая платформа включает только самые необходимые компоненты и оптимизирована для минимального потребления памяти и дискового пространства, а также для высокой скорости загрузки.

  1. OpenNews: Планы по введению статуса проверенного участника Fedora
  2. OpenNews: Бета-тестирование Fedora Linux 44. Инициатива по продвижению инноваций в Fedora
  3. OpenNews: Microsoft опубликовал дистрибутив Azure Linux 3.0
  4. OpenNews: Microsoft переименовал дистрибутив CBL-Mariner в Azure Linux и опубликовал Azure Sphere OS 24.03
  5. OpenNews: Microsoft опубликовал дистрибутив Azure Linux 3.0.20241203
Обсуждение (125 +14) | Тип: К сведению |
·26.04.2026 Выпуск дистрибутива CachyOS 260426 (61 +26)
  Представлен выпуск дистрибутива CachyOS 260426, основанного на пакетной базе Arch Linux, применяющего непрерывную модель доставки обновлений и пользующийся популярностью у любителей компьютерных игр. По данным сервиса ProtonDB проект CachyOS является самым популярным дистрибутивом Linux (доля 21.1%), применяемым геймерами.

Дистрибутив примечателен включением оптимизаций для повышения производительности и предоставлением возможности установки различных сред рабочего стола. Помимо базового окружения на основе KDE, для установки доступны GNOME, Xfce, i3WM, Wayfire, LXQT, OpenBox, Cinnamon, Cosmic, Niri, MangoWM, LXDE, Mate, Budgie, Qtile, Hyprland и Sway. Размер установочного iso-образа 3.1 ГБ. Отдельно поставляются сборки (2.8 ГБ) для носимых устройств (Handheld Edition) с интерфейсом в стиле GameMode и компонентами для любителей компьютерных игр.

В дистрибутиве по умолчанию включён планировщик задач BORE, оптимизированный для снижения задержек на рабочем столе и повышения приоритета интерактивных процессов. Ядро и пакеты собраны с включением LTO-оптимизаций (Link-Time Optimization) и задействованием инструкций, доступных в процессорах на базе микроархитектур x86-64-v3, x86-64-v4 и Zen4. При сборке базовых пакетов дополнительно включены оптимизации PGO (Profile-Guided Optimization) или BOLT (Binary Optimization and Layout Tool). В качестве файловых систем могут использоваться btrfs, zfs, ext4, xfs и f2fs.

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

  • В инсталляторе задействован новый интерфейс управления пакетами Shelly, предоставляющий как интерфейс командной строки, так и GUI на базе GTK4 с поддержкой Wayland. Для управления пакетами используется библиотека libalpm. Помимо основных репозиториев поддерживаются AUR и возможна установка пакетов в формате Flatpak.
  • В инсталляторе улучшен интерфейс выбора пакетов, связанных с GNOME.
  • После завершения установки обеспечено создание в ФС снапшота, предоставляющего возможность отката к начальному состоянию.
  • В число предлагаемых для установки графических окружений добавлен композитный сервер MangoWM c оболочкой DMS (Dank Material Shell). Удалена опция для установки десктоп-окружения UKUI (Ubuntu Kylin User Interface).
  • В загрузчике GRUB включено по умолчанию определение других установленных операционных систем через пакет os-prober.
  • В настойки, предоставляемые приложением CachyOS-Welcome, добавлена возможность включения DNS-over-HTTPS (DoH), указания собственного DNS-сервера, просмотра сведений о DNS-сервере, тестирования задержек обращения к DNS, установки эмулятора терминала wezterm и включения сервиса dmemcg-booster (вытесняет из видеопамяти в системную память данные фоновых приложений для увеличения видеопамяти, доступной для активной игры).
  • Для устройств NVMe по умолчанию включён планировщик ввода/вывода "kyber", использующий раздельные очереди для операций записи и чтения, с приоритетной обработкой запросов на чтение.
  • В утилиту chwd (CachyOS Hardware Detection), применяемую для автоматического определения и установки драйверов и модулей ядра, добавлено определение устройств USB, игровой консоли Xbox ROG Ally и моделей CPU. На поддерживаемых CPU Intel обеспечена активация модуля intel-lpmd для снижения энергопотребления в состоянии простоя. Добавлен профиль оборудования для Wi-Fi Marvell AVASTAR 88W8897, применяемого в планшете Surface Pro 4. Разделены профили NVIDIA для ПК и ноутбуков. Разделены и обновлены профили для виртуальных машин.
  • Добавлена поддержка использования датчиков отпечатков пальцев для авторизации выполнения операций через sudo.

  1. OpenNews: Выпуск дистрибутива Deepin 25.1, развивающего собственное графическое окружение
  2. OpenNews: Доля пользователей Linux в Steam по статистике Valve превысила 5%
  3. OpenNews: Выпуск дистрибутива Nitrux 6.0
  4. OpenNews: Первый стабильный релиз среды рабочего стола COSMIC
  5. OpenNews: Обновление дистрибутива CachyOS 251129
Обсуждение (61 +26) | Тип: Программы |
·26.04.2026 Из ветки ядра Linux 7.1 удалены старые Ethernet-драйверы, busmouse, AX.25, ISDN и CAIF (387 +15)
  Линус Торвальдс принял в состав ядра Linux 7.1, релиз которого ожидается в середине июня, набор патчей, исключающих из ядра Ethernet-драйверы, ранее рекомендованные для удаления Эндрю Ланном (Andrew Lunn), сопровождающим сетевые драйверы в ядре Linux. Помимо изначально предложенных Ethernet-драйверов из ядра исключены подсистема ISDN, реализации протоколов AX.25, CAIF и Bluetooth CMTP (Common ISDN Application Programming Interface Message Transport Protocol), а также драйверы yellowfin (Yellowfin Gigabit-NIC), hamachi (Hamachi GNIC-II), hamradio (Amateur Radio), inport и logibm (busmouse).

Удалённые Ethernet-драйверы:

  • 3com 3c509, 3c515, 3c574 и 3c589 для серий 3Com EtherLinkIII, EtherLink XL "Corkscrew" и "RoadRunner".
  • amd lance и nmclan для HP300, Motorola MVME147 SBC, AMD PCnet32 (AT1500, NE2100), Allied Telesis AT1500, HP J2405A, Alchemy Semi AU1X00.
  • smsc smc9194 и smc91c92, использовались на ноутбуках DELL c док-станциями и в ethernet-картах Megahertz, Motorola, Ositech и Psion Dacom.
  • fujitsu fmvj18x для Ethernet-карт с чипами Fujitsu FMV-J18x.
  • 8390 AX88190, ultra и wd80x3 - для Ethernet-карт на чипах Asix AX88190, NS8390, SMC Ultra, SMC EtherEZ, WD8003 и WD8013, таких как Thomas Conrad и Kingston KNE-PCM.

В качестве причин удаления отмечается отсутствие активных сопровождающих на фоне увеличения числа выявляемых при помощи syzbot и AI-инструментов ошибок, которые никто не берётся исправлять и вся нагрузка нa устранение серьёзных проблем ложится на сопровождающих основные сетевые подсистемы ядра. В списке рассылки разработчиков ядра уже несколько раз предпринимались попытки найти разработчиков, готовых взять в свои руки сопровождение проблемных устаревших драйверов, но желающих так и не нашлось.

Изначально предложенные для удаления Ethernet-драйверы 8390 pcnet, 3com 3c59x ("Vortex"), amd hplance, amd mvme147, cirrus cs89x0, cirrus mac89x0 и xircom xirc2ps (PCMCIA-карты Xircom) не были исключены из ядра, так как в ходе обсуждения нашлись пользователи, применяющие их в рабочих системах. Активные пользователи также имеются у оставшейся без сопровождения подсистемы Amateur radio, но данную подсистему решено удалить из ядра, так как большая часть пользователей перешло на реализацию в пространстве пользователя.

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

  1. OpenNews: Инициатива по удалению из ядра старых Ethernet-драйверов из-за ошибок, выявляемых через AI
  2. OpenNews: Релиз ядра Linux 7.0
  3. OpenNews: Из ядра Linux 7.1 удалены опции сборки для процессоров i486
  4. OpenNews: В ядре Linux 7.1 начали удаление поддержки процессоров Baikal
  5. OpenNews: В состав ядра Linux 7.1 принят новый драйвер для NTFS
Обсуждение (387 +15) | Тип: К сведению |
·25.04.2026 В законопроект о верификации возраста CO SB51 добавлено исключение для открытых проектов (97 +51)
  Карл Ричелл (Carl Richell), основатель и руководитель компании System76, разрабатывающей дистрибутив Pop!_OS и среду рабочего стола COSMIC, добился внесения поправок в продвигаемый в штате Колорадо законопроект CO SB51 (Colorado Senate Bill 51), определяющий требования по верификации возраста в операционных системах. В текст законопроекта добавлено исключение, выводящее из области действия будущего закона дистрибутивы и приложения, поставляемые под открытыми лицензиями.

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

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

В соответствии с требованиями закона, загруженные и запущенные приложения должны иметь возможность получать от операционной системы информацию о возрасте в 4 градациях: младше 13 лет, от 13 до 16 лет, от 16 до 18 лет, 18 лет и старше. Разработчик приложения должен использовать полученную информацию о возрасте для соблюдения законодательства о защите детей в интернете. За невыполнение требований предусмотрены штрафы до $2500 за неумышленное и до $7500 за умышленное нарушение в отношении каждого пострадавшего ребёнка.

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

  1. OpenNews: В Калифорнии утверждён законопроект об интеграции в ОС API для проверки возраста
  2. OpenNews: Создан дистрибутив Ageless Linux для противодействия законам о проверке возраста
  3. OpenNews: Проект Arch Linux 32 заблокировал доступ из Бразилии из-за закона о верификации возраста
  4. OpenNews: Создан форк systemd без хранения возраста. GrapheneOS отказался верифицировать возраст
  5. OpenNews: Позиция по верификации возраста в Debian
Обсуждение (97 +51) | Тип: К сведению |
·25.04.2026 Выпуск языка программирования Nim 2.2.10 (82 +10)
  Представлен релиз языка системного программирования Nim 2.2.10. Nim – статически типизированный компилируемый язык программирования с синтаксисом, вдохновлённым Python, и возможностями метапрограммирования на уровне Lisp. Язык компилируется в C, C++ и JavaScript, обеспечивая производительность на уровне C при выразительности высокоуровневых языков. Код проекта поставляется под лицензией MIT.

Возможности Nim включают систему макросов, работающих на AST во время компиляции, поддержку обобщённого программирования с концептами, множественную диспетчеризацию (multiple dispatch), детерминированное управление памятью с поддержкой нескольких стратегий (ARC/ORC, refc, маркировка-и-подметание), встроенную поддержку async/await для асинхронного программирования и FFI для простой интеграции с C/C++/JavaScript. Nim позиционируется как системный язык, подходящий для разработки от встраиваемых систем до веб-серверов, с акцентом на эффективность, безопасность памяти и удобство разработки.

Изменения в языке и компиляторе:

  • Добавлен экспериментальный флаг "--experimental:typeBoundOps", реализующий RFC #380 и повышающий надёжность работы интерфейсов "hash", "$", "==" для именованных типов при непрямых импортах. Пример:
    
      import std/hashes
      type Obj* = object
         x*, y*: int
         z*: string
    
       proc `==`*(a, b: Obj): bool = a.x == b.x and a.y == b.y
       proc hash*(a: Obj): Hash = $!(hash(a.x) &! hash(a.y))
    
       # main.nim
       {.experimental: "typeBoundOps".}
       from objs import Obj
       import std/tables
    
       var t: Table[Obj, int]
       t[Obj(x: 3, y: 4, z: "debug")] = 34
       echo t[Obj(x: 3, y: 4, z: "ignored")]  # 34
    
  • Исправлена ошибка, при которой "sizeof(T)" внутри шаблона "typedesc", вызываемого из when-выражения дженерика, приводил к ошибке компиляции.

Основные изменения, влияющие на обратную совместимость:

  • По умолчанию активирован флаг "-d:nimPreviewFloatRoundtrip". Функции "system.addFloat" и оператор "$" теперь используют алгоритм Dragonbox для генерации минимальных строковых представлений чисел с плавающей точкой с гарантиями корректного округления и обратимости преобразования. Для возврата к старому поведению доступен флаг "-d:nimLegacySprintf".
  • Параметр "default" в функции "tables.getOrDefault" переименован в "def" во избежание конфликтов с "system.default". Код, использующий именованные аргументы "getOrDefault(..., default = ...)", требует обновления.
  • При включении флага "-d:nimPreviewCheckedClose" функция "close" в модуле "std/syncio" теперь генерирует исключение при ошибках ввода-вывода.
  • Неизвестные предупреждения и подсказки компилятора теперь генерируют предупреждение "warnUnknownNotes" вместо ошибок.
  • С флагом "-d:nimPreviewAsmSemSymbol" в операторах asm/emit добавлена проверка типов для символов в обратных кавычках.
  • Блок "except:" без указания типа теперь вызывает панику при перехвате "Defect". Для обработки рекомендуется использовать "except Exception:" или "except Defect:". Для миграции предусмотрен флаг "--legacy:noPanicOnExcept".
  • С флагом "-d:nimPreviewCStringComparisons" операторы сравнения ({, >, {=, >=) для "cstring" переключены с семантики ссылок на семантику значений, аналогично "==" и "!=".
  • Модуль std/parsesql вынесен в отдельный nimble-пакет; для установки требуется "nimble install parsesql" или использование менеджера atlas.
  • С флагом "-d:nimPreviewDuplicateModuleError" импорт двух модулей с одинаковым именем становится ошибкой компиляции. Для разрешения коллизий рекомендуется использовать алиасы: "import foo as foo1".
  • Добавлена опция "--mangle:nim|cpp" для выбора стиля манглинга имён при включённой отладочной информации (по умолчанию - cpp).
  • Второй параметр функций succ, pred, inc, dec в модуле system теперь принимает тип "SomeInteger" вместо "Ordinal".
  • Операторы битовых сдвигов (shl, shr, ashr) применяют битовую маску к правому операнду в бэкендах C/C++/VM/JS.
  • Добавлено предупреждение "--warning:ImplicitRangeConversion", обнаруживающее потенциально опасные неявные преобразования к диапазонам меньшего размера (например, int -> range[0..255]), способные вызвать панику времени выполнения.

Нововведения в стандартной библиотеке:

  • В модуль "setutils" добавлены функции "symmetricDifference", оператор "-+-" и инлайн-версия "toggle" для эффективного вычисления симметрической разности битовых множеств.
  • В "strutils.multiReplace" добавлена перегрузка для замены символов из набора за один проход - полезно для санитизации строк.
  • В модуль std/files добавлены процедуры с поддержкой типа Path: getFilePermissions, setFilePermissions, tryRemoveFile, copyFile (с настраиваемым буфером и обработкой ссылок), copyFileWithPermissions, copyFileToDir. Экспортированы типы CopyFlag и FilePermission для тонкого контроля операций с файлами.
  • Модуль std/dirs получил новые процедуры: copyDir и copyDirWithPermissions для рекурсивного копирования каталогов с сохранением атрибутов.
  • В бэкендах refc, JS и VM реализована поддержка функции "system.setLenUninit" для типа "string", позволяющей изменять длину строки без инициализации новой памяти при расширении.
  • В std/parseopt добавлена поддержка нескольких режимов парсинга аргументов командной строки через перечисление CliMode: Nim (по умолчанию), а также экспериментальные Lax и Gnu.
  • В std/math оператор "^" теперь поддерживает вещественные числа в качестве показателя степени.
  • Функции min, max и их аналоги из sequtils для openArray теперь принимают пользовательскую функцию сравнения.
  • Оптимизирована реализация system.substr: при наличии используется copymem (обёртка над C memcpy).
  • Функция system.newStringUninit помечена как свободная от побочных эффектов, что позволяет использовать её с флагом "--experimental:strictFuncs".

Инструменты и документация:

  • В генератор документации добавлен флаг "--raw" для отключения рендеринга разметки в JSON-выводе.
  • Добавлен флаг "--stdinfile" для задания имени файла при запуске кода из stdin (по умолчанию - stdinfile.nim).
  • Флаг "--styleCheck:warning" позволяет трактовать нарушения стилевых проверок как предупреждения, а не ошибки.
  • В руководство добавлена документация по прагме completeStruct.

Исправлено более 30 ошибок, в том числе:

  • Ошибки работы new с ref object и генерации кода для кортежей в массивах;
  • Проблемы с обработкой static-параметров и typedesc;
  • Регрессии в системах управления памятью ORC/refc, включая выравнивание объектов и избыточные вызовы nimZeroMem;
  • Ошибки парсинга в parseopt, parsecfg и генерации кода для бэкенда JavaScript;
  • Утечки и падения при использовании замыканий, итераторов и больших объектов.

  1. OpenNews: Выпуск языка программирования Nim 2.2.8
  2. OpenNews: В языке Nim представлен YRC - потокобезопасный сборщик циклических ссылок
  3. OpenNews: Представлены принципы дизайна компилятора Nimony для будущего Nim 3.0
  4. OpenNews: Для Nim 3.0 развивается новый компиляторный бэкенд на основе формата NIF
  5. OpenNews: Релиз языка программирования Nim 2.0
Обсуждение (82 +10) | Автор: User097 | Тип: Программы |
Следующая страница (раньше) >>



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

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