Опубликован выпуск композитного сервера Niri 25.05, реализующего метод мозаичной (tiling) компоновки в стиле GNOME-расширения PaperWM, в котором окна группируются в бесконечно прокручиваемую на экране ленту. Открытие нового окна приводит к расширению ленты, а ранее добавленные окна не меняют свой размер. Проект базируется на использовании протокола Wayland, но позволяет запускать приложения X11 при помощи DDX-сервера Xwayland. Код проекта написан на языке Rust и распространяется под лицензией GPLv3. Пакеты формируются для Fedora, NixOS , Arch Linux и FreeBSD.
Принципиальным отличием Niri от PaperWM является привязка к каждому монитору собственной ленты окон, не пересекающейся с лентами на других мониторах (в PaperWM раздельная работа с мониторами не может быть реализована из-за привязки к глобальным оконным координатам в GNOME Shell). Niri поддерживает HiDPI и может работать на системах с несколькими GPU (например, гибридных системах с дискретной видеокартой и встроенным GPU). Имеется встроенный интерфейс для создания скриншотов и записи скринкастов, особенностью которого является возможность исключения из записи отдельных окон с конфиденциальной информацией.
Виртуальные рабочие столы в Niri создаются динамически и по аналогии с GNOME размещаются вертикально (лента окон вращается горизонтально, а лента рабочих столов - вертикально). На каждом мониторе может отображаться независимый набор виртуальных рабочих столов. Для переключения между рабочими столами и окнами можно использовать управляющие жесты на тачпаде. При отключении монитора раскладка виртуальных рабочих столов запоминается и переносится на оставшийся монитор, а при возвращении монитора восстанавливается в исходное состояние. Настройка осуществляется через файл конфигурации, позволяющий изменять такие параметры, как ширина рамок, отступы, режимы вывода и размеры окон. Внесённые в файл конфигурации изменения применяется автоматически без перезапуска композитного сервера.
В новой версии:
Добавлен обзорный режим для навигации по виртуальным рабочим столам и открытым в них окнам. Режим активируется переводом курсора в левый верхний угол или через сдвиг четырьмя пальцами на тачпаде, после чего уменьшается масштаб и показывается лента из имеющихся виртуальных рабочих столов и открытых в них окон. Окна можно перегруппировывать или перемещать между рабочими столами при помощи мыши или экранных жестов.
Расширены возможности для создания скринкастов и совместного доступа к экрану.
Добавлена возможность динамического выбора объекта для записи скринкаста - изначально создаётся пустой видеопоток, который можно переключить на захват активного окна или всего экрана на текущем мониторе. Реализована поддержка записи вывода полноэкранных приложений в форме виртуального окна.
В интерфейс для создания скриншотов добавлена возможность выбора области снимка при помощи графического планшета или сенсорного экрана. В нижнюю панель добавлена отдельная кнопка для создания скриншота.
Добавлена возможность выделения окон, требующих особого внимания. Подобные окна выделяются цветной рамкой (цвет задаётся через настройку urgent-color) и снабжаются отдельным индикатором в панели.
Расширены возможности IPC-интерфейса, применяемого для взаимодействия внешних систем с композитным сервером. Добавлены команды: "niri msg pick-window" (возвращает идентификатор окна на которое кликнул пользователь) и "niri msg pick-color" (возвращает цвет выбранного пикселя).
Добавлены действия с окнами: focus-monitor, move-window-to-monitor, move-column-to-monitor, focus-column, move-column-to-index.
Добавлены настройки для устройств ввода: отключение tap-and-drag, отключение сенсорных экранов, изменение клавиши-модификатора, выбор ориентации трекпада, включение Num Lock при запуске.
Повышена эффективность отрисовки окон в промежуточные текстуры
(offscreening), подлежащие дополнительной обработке (например, наложение слоёв) перед выводом на монитор.
В кодовую базу, на основе которой в сентябре будет сформирован выпуск GNOME 49, принят инструментарий Mutter SDK (Mutter Development Kit), реализующий новый способ взаимодействия с композитным менеджером Mutter и оболочкой GNOME Shell. Mutter SDK даёт возможность запускать вложенный экземпляр GNOME Shell внутри GTK-приложения для упрощения тестирования Mutter и GNOME Shell в процессе разработки.
Вложенные экземпляры Mutter и GNOME Shell выводят информацию на виртуальный монитор, привязываемый к текущему сеансу пользователя, отображаемый в окне приложения и поддерживающий эмуляцию событий сенсорного экрана. Подключение виртуального монитора без создания нового сеанса реализовано при помощи API для записи скринкастов и удалённой работы с рабочим столом. Для запуска отдельных экземпляров в mutter и gnome-shell добавлена опция "--sdk". Для управления может использоваться D-Bus API org.gnome.Mutter.Sdk.
Опубликован релиз Phosh 0.47, экранной оболочки для мобильных устройств, основанной на технологиях GNOME и библиотеке GTK. Окружение изначально развивалось компанией Purism в качестве аналога GNOME Shell для смартфона Librem 5, но затем вошло в число неофициальных проектов GNOME и используется в postmarketOS, Mobian, Droidian, некоторых прошивках для устройств Pine64 и редакции Fedora для смартфонов. Phosh использует композитный сервер Phoc, работающий поверх Wayland, а также собственную экранную клавиатуру squeekboard. Наработки проекта распространяются под лицензией GPLv3+.
В системе вывода уведомлений реализован широковещательный режим обработки событий, связанных c объектами Wayland. Режим определён в спецификации xdg-desktop-portal.
Устранено мерцание при блокировке экрана с активным виджетом управления воспроизведением мультимедийного контента.
В быстрые настройки добавлена страница состояния, позволяющая включить режим "не беспокоить" и быстро перейти к настройкам всплывающей панели.
На странице с состоянием Wi-Fi обеспечен показ активной сети при использовании беспроводных сетей с несколькими точками доступа.
При блокировке SIM-карты реализовано скрытие кнопок для управления обменом данными через мобильную сеть.
В композитном сервере Phoc добавлена возможность использования предоставляемого в wlroot движка отрисовки на базе графического API Vulkan. Добавлены опции "--socket" и "--no-xwayland".
В конфигуратор phosh-mobile-settings добавлены опции для выставления и отключения фоновых изображений. Реализован диалог для подтверждения операции сброса списка избранных приложений. Во всплывающей панели обеспечено раздельное управление громкостью предупреждений, уведомлений и мультимедийного вывода.
В gmobile, обработчиках для работы GNOME на мобильных устройствах, добавлен API для выставления Wakeup-таймеров. На устройствах PinePhone реализована поддержка кнопки запуска/остановки воспроизведения на наушниках.
В экранной клавиатуре phosh-osk-stub добавлен режим автодополнения
emoji и реализован индикатор введённого символа.
Решена проблема с блокированием ввода при показе экранного индикатора (OSD).
Продолжена подготовка к переходу на GTK4.
Обновлены версии зависимостей:
wlroots 0.18.2,
GNOME 48,
Calls 48,
feedbackd 0.8.2,
feedbackd-device-themes 0.8.3,
callaudiod 0.1.10,
wys 0.1.12 и
mmsd-tng 2.6.3.
Представлен выпуск графического редактора GIMP 3.0.4. Готовые сборки опубликованы для Linux (AppImage и Flatpak для архитектур x86 и ARM64), macOS и Windows. Основное внимание при подготовке новой версии уделено исправлению ошибок и регрессивных изменений. Новая функциональность развивается в ветке GIMP 3.2, в которой будет предложена поддержка слоёв-ссылок (Link layer) и векторных слоёв (Vector layer), а также расширена поддержка цветовой модели CMYK и возможностей для управления цветом.
Среди изменений в GIMP 3.0.4:
Ускорена загрузка шрифтов при запуске и улучшена работа с текстовыми слоями.
В истории операций (undo) обеспечено отслеживание редактирования с использованием отдельных недеструктивных фильтров. Решены проблемы при повороте слоёв с активными недеструктивными фильтрами.
В многооконном интерфейсе возвращён опциональный режим отображения плавающих окон поверх основного окна с изображением.
Добавлен графический интерфейс для настройки параметров фильтра "Difference Cloud".
В плагине для создания скриншотов вместо выпадающего меню задействованы кнопки выбора.
В Plug-in Browser обеспечен показ всех плагинов.
Интерфейс для работы с кистями MyPaint унифицирован с оформлением других компонентов GIMP.
Обновлена панель состояния, в которой более наглядно показана информация об используемом устройстве ввода.
В инструменте для создания контуров обеспечено автоматическое завершение формирования контура после его замыкания (клика на начальную точку).
Унифицирована обработка максимального размера кистей (ранее в разных частях использовались разные ограничения размера).
Налажена сборка с использованием GCC 15.
Решена проблема со вставкой в другие приложения выделенных областей (область вставлялась с размером исходного изображения).
Устранены аварийные завершения при выключении или изменении основного монитора.
Сокращён размер сборки в формате AppImage и установщика для Windows.
Спустя два с половиной года после версии 0.8.0 опубликован выпуск проекта git-bug 0.9.0, развивающего систему отслеживания ошибок, хранящую информацию об проблемах и комментарии в форме объектов в репозитории Git. По аналогии с изменениями в исходном коде инструментарий git-bug позволяет помещать информацию об отслеживаемых ошибках во внешние репозитории, используя операцию push, а также извлекать данные из внешнего в локальный репозиторий операцией pull. Код проекта написан на языке Go и распространяется под лицензией GPLv3
Особенности системы:
Использование репозитория Git для хранения описаний проблем, базы пользователей и комментариев в версионированном виде.
Задействование децентрализованной архитектуры Git для работы в offline-режиме и синхронизации изменений.
Очень быстрое выполнение операций поиска и навигации по сообщениям об ошибках.
Наличие прослоек для синхронизации с сервисами отслеживания ошибок GitHub, GitLab, Jira и Launchpad.
Возможность работы с сообщениями об ошибках через командную строку, консольный интерфейс или web-интерфейс.
Дополнение: По горячим следам вышли обновления 0.10.0 и 0.10.1 c исправлениями и упрощением навигационного заголовка в web-интерфейсе.
Подведены итоги трёх дней соревнований Pwn2Own Berlin 2025, на которых были продемонстрированы 26 успешных атак с использованием 28 ранее неизвестных уязвимостей (0-day) в операционных системах, браузерах, AI-системах и платформах виртуализации. При проведении атак использовались самые свежие программы и операционные системы со всеми доступными обновлениями и в конфигурации по умолчанию.
Суммарный размер выплаченных вознаграждений составил более миллиона долларов США ($1,078,750). Наиболее успешная команда STAR Labs SG сумела заработать на соревнованиях 320 тысяч долларов США. Обладатели второго места (Viettel Cyber Security) получили 155 тысяч долларов, а третьего (Reverse_Tactics) - 112 тысяч долларов.
Осуществлённые атаки:
Red Hat Enterprise Linux: 3 успешные атаки, позволившие поднять свои привилегии до пользователя root. Уязвимости вызваны целочисленным переполнением, обращением к памяти после освобождения и утечкой информации. Участникам выплачено $20,000, $15,000 и $10,000.
Mozilla Firefox: 2 успешные атаки, позволившие выполнить код в системе при обработке в браузере специально оформленной страницы. Уязвимости вызваны переполнением буфера и целочисленным переполнением. Участникам выплачены две премии по $50,000.
СУБД Redis: Одна успешная атака, позволившая выполнить код в системе при обработке специально оформленного запроса. Уязвимость вызвана обращением к памяти после освобождения.
Участникам выплачено $40,000.
VirtualBox: 3 успешные атаки, позволившие выполнить код на стороне хост-окружения. Уязвимости вызваны обращением к памяти после освобождения, переполнением буфера и некорректной проверкой индекса массива. Участникам выплачено $60,000, $40,000 и $70,000.
Docker Desktop: Одна успешная атака, позволившая выполнить код на стороне хост-окружения. Проблема вызвана целочисленным переполнением. Участникам выплачено $40,000.
VMware ESXi: 2 успешные атаки, позволившие выполнить код на стороне хост-окружения. Проблемы вызваны целочисленным переполнением и использованием неинициализированных переменных.
Участникам выплачено - $150,000 и $112,500.
VMware Workstation: Одна успешная атака, позволившая выполнить код на стороне хост-окружения. Проблема вызвана переполнением буфера.
Участникам выплачено - $80,000.
NVIDIA Container Toolkit: Одна успешная атака, позволившая выполнить код на стороне хост-окружения. Проблема вызвана внешней инициализацией служебных переменных. Участникам выплачено - $30,000.
NVIDIA Triton Inference Server (открытое ПО для запуска AI-моделей): 5 успешных атак, позволивших получить root-доступ к серверу. Участникам выплачено четыре премии по $15,000 и одна премия $30,000.
Windows 11: 5 успешных атак, позволивших выполнить код с правами SYSTEM. Уязвимости вызваны обращением к памяти после освобождения, целочисленным переполнением, переполнением буфера, неправильной обработкой типов (Type Confusion) и состоянием гонки.
Участникам выплачено по две премии в $30,000 и $15,000, а также одна премия в $11,250.
Microsoft SharePoint. Одна успешная атака. Проблемы возникли из-за обхода аутентификации и небезопасной десериализации данных.
Участникам выплачено $100,000.
Четыре попытки взломов NVIDIA Triton Inference, SharePoint и VirtualBox завершились неудачей.
Подробности о характере уязвимостей пока не сообщаются. В соответствии с условиями конкурса детальная информация о всех продемонстрированных 0-day уязвимостях будет опубликована только через 90 дней, которые даются на подготовку производителями обновлений с устранением уязвимостей.
Компания Mozilla в течение нескольких часов устранила продемонстрированные на соревнованиях проблемы в Firefox и выпустила обновления 138.0.4, 128.10.1 и 115.23.1 c исправлением двух критических уязвимостей (CVE-2025-4920, CVE-2025-4921), приводящих к выходу за границу буфера при манипуляциях с JavaScript-объектом Promise (упомянуто искажение размера индекса массива).
Проект GNU представил свободную систему электронных платежей GNU Taler 1.0. Присвоение номера версии 1.0 связано с готовностью платформы для внедрения рабочих платёжных сервисов и стабилизацией программных интерфейсов, для которых в дальнейшем будет обеспечиваться обратная совместимость.
Точки продаж, использующие платёжный сервис на базе GNU Taler, теперь могут легально создаваться в Швейцарии и применяться физическими и юридическими лицами для совершения операций в швейцарских франках.
Заявлено, что использование GNU Taler для продажи товаров в Швейцарии теперь является законным и активы пользователей защищены от потенциальных рисков (депонированные активы клиентов не подлежат страхованию депозитов, а хранятся на отдельном банковском счёте).
Так как система только запущена и пока нет магазинов, принимающих платежи через GNU Taler, сервис пока имеет статус публичной бета-версии. Разработчики GNU Taler призывают владельцев бизнеса в Швейцарии приступить к внедрению. Для сопровождения и поддержки платёжной системы создана организация Taler Operations AG.
Предприятиям, желающим наладить оплату продаж при помощи GNU Taler, достаточно иметь счёт в любом швейцарском банке и запустить предоставляемый платформой бэкенд для организации продаж. Бэкенд привязывается к счёту через указание в настройках IBAN (International Bank Account Number). Бэкенд позволяет генерировать QR-коды для оплаты товаров покупателями, цена которых определена продавцом или выбирается покупателем.
Имеется плагин для интеграции запускаемого платёжного сервиса с платформой для создания интернет-магазинов WooCommerce, а также плагин для платформы продажи билетов Pretix. Для организации работы точки продаж, управления платежами и обслуживания заказов предоставляется приложение для платформы Android, оптимизированное для расчёта с посетителями в ресторане.
Код GNU Taler написан на Си и распространяется под лицензиями AGPLv3 и LGPLv3.
В состав входят базовые компоненты, позволяющие организовать работу банка, точки обмена, торговой площадки, кошелька и аудитора. Система позволяет идентифицировать продавцов для налоговой отчётности, но обеспечивает анонимность для покупателей. Финансирование разработки осуществляется на гранты Еврокомиссии и Государственного секретариата Швейцарии по образованию, исследованиям и инновациям (SERI).
Платёжная система GNU Taler не завязана на собственной криптовалюте и работает с уже существующими валютами, такими как доллары, евро и биткоины. Поддержка новых валют осуществляется через привязку к банку, выступающему финансовым гарантом производимых операций. Проект продвигает бизнес-модель, основанную на операциях обмена - деньги из традиционных систем совершения платежей, таких как BitCoin, Mastercard, SEPA, Visa, ACH и SWIFT, преобразуются в анонимные электронные деньги в той же валюте. Пользователь может передавать электронные деньги продавцам, которые затем могут на точке обмена поменять их обратно в реальные деньги.
Уже совершённые транзакции в GNU Taler сохраняют достоверность даже при утечке приватных ключей клиентов, продавцов и точек обмена - формат базы данных позволяет верифицировать все совершённые транзакции и подтверждения их непротиворечивости. Подтверждением платежа для продавцов является криптографическое доказательство перевода в рамках заключённого с клиентом контракта и криптографически подписанное подтверждение о наличии средств на точке обмена. Система не позволяет узнать куда клиент тратит деньги, но даёт возможность отследить поступление средств получателю, сохраняя анонимность отправителя. Подобный подход решает проблемы с налоговым аудитом, свойственные BitCoin.
Сформировано одиннадцатое корректирующее обновление дистрибутива Debian 12, в которое включены накопившиеся обновления пакетов и добавлены исправления в инсталлятор. Выпуск включает 81 обновление с устранением проблем со стабильностью и 45 обновлений с устранением уязвимостей.
Из изменений в Debian 12.11 можно отметить обновление до свежих стабильных версий пакетов dpdk, nvidia-graphics-drivers, nvidia-settings, openssl, postgresql-15 и wireless-regdb. Удалены пакеты pidgin-skype (Skype прекратил существование) и viagee
(больше не способен подключаться к Gmail).
Для загрузки и установки "с нуля" подготовлены установочные сборки c Debian 12.11. Системы, установленные ранее и поддерживаемые в актуальном состоянии, получают обновления, присутствующие в Debian 12.11, через штатную систему установки обновлений. Исправления проблем безопасности, включённые в новые выпуски Debian, доступны пользователям по мере выхода обновлений через сервис security.debian.org.
Одновременно сформирован первый кандидат в релизы инсталлятора следующего значительного релиза Debian 13 "Trixie". Релиз Debian 13 ожидается летом 2025 года.
В настоящее время насчитывается 257 критических ошибок, блокирующих релиз (на аналогичной стадии разработки Debian 12 было 258 критических ошибок, а Debian 11 - 185).
Ключевые изменения в обновлении инсталлятора Debian 13:
Ядро Linux обновлено до версии 6.12.27.
Исключены прошивки, которые не требуются при установке, не могут работать без несвободных пакетов или бесполезны при текущих настройках ядра.
Прекращена поддержка win32-loader.
Добавлена начальная поддержка темы оформления Ceratopsian (Debian 13).
Прекращена поддержка grub-legacy.
При развёртывании десктоп-окружения в гостевой системе на базе QEMU/KVM обеспечена установка пакета spice-vdagent.
В менеджере разделов для GPT реализован флаг legacy_boot, размер по умолчанию теперь указывается в гигабайтах вместо мегабайтов.
Изменена логика управления разделами EFI.
Для XFS добавлены опции монтирования "discard" и "prjquota".
Добавлена начальная поддержка режима восстановления системы, установленной в подраздел Btrfs.
Возобновлена поддержка использования не-ASCII символов в полном имени пользователя.
Добавлена поддержка плат и устройств: Pine64 Pinebook, MNT Reform 2, AM64x HummingBoard-T, Pine64 Star64, Wandboard rev D1.
Добавлена поддержка ноутбуков и планшетов на базе ARM SoC Snapdragon X Elite, таких как HP Omnibook X 14, Lenovo Yoga Slim 7x, Asus
Vivobook S 15, Dell XPS 13 9345, Lenovo Thinkpad T14s Gen6,
Microsoft Surface Laptop 7.
В образ ядра для архитектуры ARM64 включены модули для устройств MediaTek и Qualcomm SC7180 Chromebook.
Для поддержки загрузки по HTTP в UEFI на системах amd64 и arm64 в образ ядра добавлены модули pmem.
Нейт Грэм (Nate Graham), разработчик, занимающийся контролем качества в проекте KDE, опубликовал очередной отчёт о разработке KDE. Дополнительно объявлено о переходе ветки KDE Plasma 6.4 на стадию бета-тестирования и заморозке кодовой базы от внесения функциональных изменений (допускается только приём исправлений). Релиз KDE Plasma 6.4 намечен на 17 июня.
Улучшения, принятые в KDE Plasma 6.4 на этой неделе до заморозки кодовой базы:
В композитном менеджере KWin реализована возможность включения расширенного динамического диапазона яркости для экранов, не поддерживающих HDR, на которых HDR имитируется при помощи изменения яркости подсветки.
Приложениям, использующим XWayland, предоставлена возможность управления клавиатурой и указателем мыши без вывода запросов подтверждение подобных операции. По умолчанию данная возможность отключена, так как она снижает уровень безопасности системы.
В приложении System Monitor модернизировано оформление обзорного режима. Добавлены индикатор нагрузки на GPU и диаграммы наличия свободного места на отдельных дисках.
В виджет управления громкостью добавлены текстовые заголовки для устройств ввода и вывода звука.
В виджет с корзиной добавлен индикатор выполнения операции очистки (вращающийся спинер).
Вывод уведомлений о недостаточном свободном дисковом пространстве реализован для всех разделов (за исключением разделов в режиме только для чтения и переполненных до монтирования), а не только для / и /home. Добавлена возможность настройки процента наполнения, при достижении которого начнёт выдаваться предупреждение.
Во встроенном RDP-сервере обеспечено запоминание предоставленных при авторизации полномочий, чтобы не выводить каждый раз запрос. Добавлена поддержка поступающих от RDP-клиентов событий горизонтальной прокрутки.
В KDE Frameworks 6.15 решены проблемы с производительностью, вызванные излишним вводом/выводом при показе миниатюр с содержимым каталога после наведения на него курсора на рабочем столе или в файловом менеджере Dolphin. В KDE Frameworks 6.14.1 устранена ошибка, приводившая к аварийному завершению приложений KDE на базе QtQuick
при прокрутке содержимого в дистрибутивах, включающих дополнительные сборочные ресурсы.
В меню приложений Kickoff добавлены метки для недавно установленных программ.
Добавлено предупреждение, выводимое при попытке обращения к микрофону из приложения, если микрофон переведён в настройках в беззвучный режим.
В KMenuEdit добавлена возможность настройки постоянного запуска выбранных приложений на дискретном GPU.
В конфигураторе улучшен интерфейс страницы настройки дисплея. В системах с одним экраном обеспечено скрытие области выбора раскладки экранов. В многомониторных конфигураций улучшено выделение текущего экрана и представление подсоединённых, но не активированных экранов.
В конфигуратор добавлен новый раздел "Анимация", в который перенесены настройки анимированных эффектов. В секции "Десктоп-эффекты" оставлены общие эффекты, не связанные с визуализацией перехода из одного состояния в другое.
Изменена обработка уведомлений во время открытия приложений в полноэкранном режиме. Вместо игнорирования некритичных уведомлений при работе с полноэкранными программами теперь автоматически включается режим "не беспокоить". Отличия в том, что после выхода из полноэкранного режима будет показано предупреждение о наличии пропущенных уведомлений. При желании новое поведение можно отключить в настройках.
В системном лотке теперь показывается информация о ненастроенном виджете с прогнозом погоды.
В диалоге настройки панели две отдельные кнопки в заголовке преобразованы в меню, что решило проблему с растяжением диалога на системах с локализацией из-за слишком длинных слов на кнопках.
На странице управления пользователями реализовано предупреждение, показываемое при попытке удаления пользователя с активным сеансом. При подтверждении подобной операции файлы такого пользователя не будут удалены.
В настройки системного лотка добавлено предупреждение, выводимое при попытке отключить сервис управления буфером обмена.
Модернизировано оформление диалогов для настройки виджетов часов, словаря, таймера и показа слайд-шоу из выбранных изображений.
Увеличен отступ между кнопками "Настроить" и "Закрепить" в окне виджета "Цифровые часы".
В виджет управления воспроизведением (Media Controller) добавлена поддержка комбинаций клавиш Ctrl+Tab и Alt+[number] для переключения между вкладками и источниками.
В апплет, управляющий медиапроигрывателем при помощи протокола MPRIS, добавлен переключатель скорости воспроизведения.
Добавлена поддержка прокрутки содержимого в Widget Explorer при помощи жеста "сдвиг одним пальцем" на сенсорном экране.
Реализован график для наглядной оценки изменения скорости копирования файлов. График доступен на странице "Детали", на которую можно перейти из уведомления о копировании файла.
Добавлена настройка для принудительного отключения пиктограмм определённых приложений в системном лотке. Новая возможность может оказаться полезной, когда приложения не содержат внутренних настроек для прекращения показа индикаторов (например, Discord).
В KRunner улучшена группировка результатов поиска - действия, связанные с сеансом и загрузкой, теперь включены в приоритетный список, выводимый в первую очередь. Улучшена навигация в KRunner с использованием клавиатуры.
Оптимизирована эвристика центровки всплывающих окон виджетов, относительно экрана или панели.
В диалоге настройки панели визуализация макетов размещения панели теперь отражает фактическое положение панели на экране.
Добавлена поддержка использования для каждого виртуального рабочего стола своей мозаичной раскладки окон.
Улучшена поддержка Wayland. В композитном менеджере KWin задействована стабильная версия Wayland-протокола ext-data-control, необходимого для корректной работы с буфером обмена (ранее использовался протокол wlr-data-control-unstable-v1).
Добавлена поддержка Wayland-протокола fifo, позволяющего использовать FIFO-механизм (первым пришёл - первым ушёл) обработки очереди обновления содержимого отображаемой поверхности. При помощи указанного протокола при выводе можно обойтись ожиданием завершения вертикальной развёртки (vblank) вместо использования callback-вызовов при каждой готовности отобразить новый кадр, что решает проблему с высокой нагрузкой на GPU при использовании VSync.
Добавлена поддержка Wayland-протокола xdg-session-management. Изменение позволяет восстанавливать состояние окон прерванного сеанса в окружениях на основе протокола Wayland, например, в случае аварийного завершения композитного сервера или приложения.
В окружении на базе Wayland добавлена возможность использования относительного позиционирования на графических планшетах, при котором позиция стилуса определяется относительно предыдущего положения, а не абсолютной позиции на поверхности планшета. Для работы с Wayland адаптирована возможность управления графическим курсором при помощи клавиатуры.
Кодовая база kwin разделена на kwin_x11 и kwin_wayland.
В KWin добавлена возможность настройки продолжительности действия эффекта затухания рабочего стола ("Fade Desktop").
Повышена точность определения и показа виджетом Power & Battery
информации о состоянии аккумуляторов Bluetooth-устройств.
Запрещено использование EncFS для создания новых хранилищ Plasma Vault (ранее созданные хранилища на базе EncFS продолжат работать).
В качестве причины упоминается прекращение разработки EncFS и наличие уязвимостей в EncFS .
Добавлена поддержка xdg-портала Clipboard, предоставляющего доступ к буферу обмена для приложений, запускаемых в изолированных окружениях, например, поставляемых в формате Flatpak.
Значительно повышена производительность записи скринкастов с использованием видео в формате VP9 (применяется по умолчанию).
Обеспечено сохранение интерактивных кнопок в уведомлениях, показываемых во всплывающем окне с историей уведомлений.
В многомониторных конфигурациях часы и интерактивные элементы интерфейса на экранах блокировки и входа в систему теперь показываются только на одном активном экране и скрываются на остальных экранах, не имеющих фокуса ввода.
Реализована возможность переключения между окнами через сочетания клавиш Meta+Tab и Meta+Shift+Tab.
Для уведомлений реализована поддержка выбора типа звукового оповещения (например, при получении письма может воспроизводиться отдельный звук, характерный для прихода сообщения).
Набор тёмных курсоров переименован в "Breeze Dark".
В диалог настройки действий при двойном клике мышью добавлена область для тестирования изменения перед его применением.
Предоставлена возможность запуска менеджера приложений Discover прямо из уведомлений о появлении обновлений.
В интерфейсе редактирования элементов в буфере обмена обеспечена активация кнопки сохранения только после изменения текста.
В инструментарий для интеграции с браузерами добавленаподдержка flatpak-пакетов с альтернативными браузерами на движках Chromium и Firefox, такими как LibreWolf и Ungoogled Chromium.
Повышена производительность при использовании режима ночной подсветки и при изменения яркости (в данных режимах наблюдалось снижение частоты кадров при отображении видео).
На экране блокировки системы добавлена возможность настройки таймаута показа приглашения входа.
В виджете управления громкостью теперь показывается название контента, воспроизводимого в приложениях, выставляющих подобные метаданные (например, в браузерах).
В конфигураторе в разделе настройки горячих клавиш задействованы более понятные имена комбинаций клавиш в KWin и Plasma.
В конфигураторе на странице с параметрами дисплея обеспечено отображение нецелых значений обновления экрана (например, 59.94Hz).
Обновлён инструмент Shotstars 3.0, отслеживающий движение, исчезновение и появление фиктивных "звёзд" у проектов на GitHub. Штатные возможности GitHub не предоставляют пользователям информацию по убывающим "звёздам" в проекте и позволяют получить сведения только по их прибавлению. Проект написан на языке Python и распространяется под лицензией GPLv3+
Функциональность версии 3.0:
Определение накрутки звёзд.
Расчёт параметров: агрессивный маркетинг, тренд, фейковые звезды, пик популярности и его дата.
Проверка репозиториев на предмет прибавления и убавления звезд со статистикой за выбранный период времени.
Определение реальной даты создания репозитория (разработчики могут заявлять/подделывать/изменять дату создания своих проектов и коммитов).
Вычисление размера любого публичного репозитория.
Предоставление краткого описания репозитория.
Сохранение истории сканирований с выбором ранее учтённых проектов для быстрой проверки.
Генерация CLI- и HTML-отчётов (статистика, периоды времени, дублирующая активность пользователей, url и графики).
Поиск пользователей, пересекающихся у разных Github-проектов.
Расчёт с точностью до минуты и отображение времени снятия github-ограничения на повторные сканирования (если не используется token).
Поддержка ОС Windows7+, GNU/Linux и Android. Для работы не требуется регистрация/авторизация на Github.
Основные изменения:
Изменён алгоритм построения графика: отслеживание прибавления звёзд для определения любой активности репозитория с момента создания проекта.
В CLI- и HTML-отчеты добавлены метрики: пик звезд и его дата, агрессивный маркетинг (low, medium, high, hard), накрутка фейковых звезд (Yes/No), тренд (предположение на основе статистики о дальнейшем росте звезд).
Ускорено нахождение пересекающихся пользователей в сканируемых проектах в том числе и тех, у кого приватный профиль.
Опубликован экспериментальный выпуск открытой реализации Win32 API - Wine 10.8. С момента выпуска 10.7 было закрыто 18 отчётов об ошибках и внесено 231 изменение.
В библиотеке DbgHelp продолжена работа над новым бэкендом для формата PDB (Program database).
Повышена производительность благодаря переносу в разделяемую память параметров пользователя.
Улучшена поддержка изображений в формате TIFF.
Закрыты отчёты об ошибках, связанные с работой приложений: Adobe Lightroom Classic 10.4, Vegas Pro 14, cmd, foobar2000, Caret.
Закрыты отчёты об ошибках, связанные с работой игр: Defiance, Final Fantasy XI Online, Country Siblings.
Дополнительно можно отметить выпуск проекта GE-Proton 10-1, в рамках которого энтузиастами формируются независимые от компании Valve расширенные сборки пакета для запуска Windows-приложений Proton, отличающиеся более свежей версией Wine, задействованием FFmpeg в FAudio и включением дополнительных патчей, решающих проблемы в различных игровых приложениях. Изменения в Proton GE 10-1:
Осуществлён переход на ветку Proton 10.0, находящуюся на стадии бета-тестирования.
Перенесены изменения из свежих кодовых баз wine 10, steamclient, vkd3d-proton, dxvk-nvapi и dxvk.
Для работы в окружениях на базе Wayland включён Wine-Wayland.
Обновлены патчи для игровых контроллеров Dualsense, поддержки AMD FSR (FidelityFX Super Resolution) и снижения задержек при использовании NVIDIA Reflex.
Представлен выпуск Live-дистрибутива grml 2025.05, предлагающего подборку программ для выполнения работ, возникающих в практике системных администраторов, таких как восстановление данных после сбоя и разбор инцидентов. Дистрибутив основан на пакетной базе Debian GNU/Linux и в прошлом году отметил своё двадцатилетие. Графическое окружение построено с использованием оконного менеджера Fluxbox. По умолчанию предлагается командная оболочка Zsh. Размер полного iso-образа 960 МБ, сокращённого - 536 МБ.
Пакеты синхронизированы с репозиторием Debian Testing по состоянию на 14 мая. Ядро Linux обновлено до выпуска 6.12.
В состав Debian перенесены пакеты grml-hwinfo, grml-keyring и grml-paste, созданные разработчиками Grml.
Задействована новая цифровая подпись для пакетов, распространяемых через репозиторий deb.grml.org
В инструментарии для формирования Live-сборок grml-live пакет FAI заменён на утилиту minifai, собственной разработки. Настройки перенесены из /etc/grml/fai/config в /usr/share/grml-live/config.
В полной сборке при загрузке выставлена опция "ssh=" для анонсирования сервиса SSH при помощи Avahi.
В загрузочном процессе grml-autoconfig проведена оптмизация производительности и прекращена поддержка систем без systemd.
В утилите grml-hwinfo, выводящей сведения об оборудовании, сбор информации о состоянии дисков при помощи утилиты smartctl теперь производится в формате JSON.
В grml-debootstrap прекращена поддержка архитектуры i386 и выпусков Debian 8 и 9. Улучшена поддержка ARM-систем с UEFI.
В состав включены пакеты:
ipxe,
iwd,
links,
lrzsz,
sopv-gpgv и
sqv.
Компания Google объявила о включении в состав будущего выпуска Android 16 дополнительных возможностей для обеспечения защиты устройства. В настройках платформы появится режим
"Advanced Protection", позволяющий включить набор опциональных механизмов защиты, усиливающих безопасность при наличии рисков компрометации устройства или совершения целевых атак на пользователя. Режим охватывает как ранее доступные опции, так и новые возможности, такие как автоматическая перезагрузка смартфона после 3 дней неактивности, защита от проведения атак через USB и резервное копирование логов для аудита в случае взлома.
Режим Advanced Protection охватывает следующие механизмы защиты:
Защита на случай кражи, конфискации и получения физического доступа атакующего к устройству.
Перезагрузка устройства, если экран не был разблокирован более 3 дней. В случае попадания устройства в другие руки автоматическая перезагрузка переведёт расшифрованные разделы с пользовательскими данными в исходное нерасшифрованное состояние, что защитит от атак по анализу содержимого памяти и эксплуатации уязвимостей в механизме блокировки экрана.
Защита от совершения атак или слива данных через подключение устройства по USB. При заблокированном экране возможности USB-порта для новых подключений ограничиваются только зарядкой, а передача данных блокируется.
Автоматическая блокировка устройства при определении признаков кражи или при длительном нахождении в offline.
Анализ инцидентов.
Резервное копирование системных логов в облаке Google. Резервная копия логов сохраняется с использованием сквозного шифрования и доступна только пользователю устройства. В случае компрометации или взлома устройства предложенная возможность упростит проведение криминалистического анализа и не позволит атакующему замести свои следы через чистку логов на устройстве.
Защита от уязвимостей в приложениях и установки вредоносных приложений.
Задействование аппаратного механизма защиты MemTag (MTE, Memory Tagging Extension), присутствующего в чипах на базе архитектуры ARMv8.5-A. Технология MemTag даёт возможность привязать теги к областям в памяти и организовать проверку корректности использования указателей для блокирования эксплуатации уязвимостей, вызванных обращением к уже освобождённым блокам памяти, переполнением буфера и обращением до инициализации.
Включение Google Play Protect для проверки приложений на предмет вредоносного кода и навязываемой функциональности.
Блокировка установки неизвестных приложений. Допускается загрузка только программ из официальных каталогов приложений, изначально предустановленных на устройстве.
Защита от установки небезопасных сетевых соединений.
Блокирование подключения к 2G-сетям сотовой связи для защиты от использования подставных базовых станций для отправки фиктивных SMS-сообщений.
Отключение автоматического переподключения к незащищённым Wi-Fi сетям, использующим WEP или OWE, а также доступным без пароля.
Защита при работе с небезопасными сайтами.
Отключение JIT-оптимизаторов в JavaScript-движке V8, что повышает безопасность работы с потенциально опасными web-приложениями за счёт уменьшения возможных векторов для совершения атаки.
Включение Android Safe Browsing для блокирования обращения к сайтам, на которых зафиксирована вредоносная активность.
Использование только HTTPS в Chrome.
Фильтрация от спама и мошеннических сообщений.
Включение в приложении Google Messages режимов Spam Protection и Scam Protection для отбрасывания нежелательных сообщений.
Защита от перенаправления на вредоносные и фишинговые сайты.
Вывод отдельного предупреждения в случае поступления сообщений от неизвестных пользователей, содержащих ссылки.
Блокирование рекламных звонков.
Идентификация по Caller ID нежелательных вызовов, используя поддерживаемую силами Google базу телефонных номеров спамеров.
Автоматическая проверка входящих звонков на спам, используя AI-ассистент.
Вывод предупреждений при выявлении признаков мошенничества в результате анализа телефонного разговора в режиме реального времени.
В день празднования десятилетия с момента выпуска языка программирования Rust 1.0 (проект Rust был основан в 2006 году, выпуск 0.1 был сформирован в 2012 году, а первая стабильная версия предложена в 2015 году) опубликован релиз Rust 1.87. Язык сфокусирован на безопасной работе с памятью и предоставляет средства для достижения высокого параллелизма выполнения заданий, при этом обходясь без использования сборщика мусора и runtime (runtime сводится к базовой инициализации и сопровождению стандартной библиотеки).
Методы работы с памятью в Rust избавляют разработчика от ошибок при манипулировании указателями и защищают от проблем, возникающих из-за низкоуровневой работы с памятью, таких как обращение к области памяти после её освобождения, разыменование нулевых указателей, выход за границы буфера и т.п. Для распространения библиотек, обеспечения сборки и управления зависимостями проектом развивается пакетный менеджер Cargo. Для размещения библиотек поддерживается репозиторий crates.io.
Безопасная работа с памятью обеспечивается в Rust во время компиляции через проверку ссылок, отслеживание владения объектами, учёт времени жизни объектов (области видимости) и оценку корректности доступа к памяти во время выполнения кода. Rust также предоставляет средства для защиты от целочисленных переполнений, требует обязательной инициализации значений переменных перед использованием, лучше обрабатывает ошибки в стандартной библиотеке, применяет концепцию неизменяемости (immutable) ссылок и переменных по умолчанию, предлагает сильную статическую типизацию для минимизации логических ошибок.
В стандартную библиотеку добавлена поддержка неименованных каналов (anonymous pipe). Для создания неименованных каналов предложен метод
std::io::pipe(), который может использоваться в сочетании с std::process::Command для обработки стандартных входных и выходных потоков, а также для объединения потоков stdout и stderr.
use std::process::Command;
use std::io::Read;
let (mut recv, send) = std::io::pipe()?;
let mut command = Command::new("path/to/bin")
// объединение stdout и stderr в один канал
.stdout(send.try_clone()?)
.stderr(send)
.spawn()?;
let mut output = Vec::new();
recv.read_to_end(&mut output)?;
assert!(command.wait()?.success());
Разрешён вызов из safe-кода большинства встроенных в компилятор функций (Intrinsics) std::arch. Изменение применяется к встроенным функциям std::arch, которые помечены unsafe только из-за привязки к определённой функциональности, если эта функциональность включена. Например, _mm256_add_epi32 можно вызывать из safe-кода, если в приложении используется '#[target_feature(enable = "avx2")]'.
Из блоков "asm!" с ассемблерным кодом разрешено осуществлять переходы на блоки с кодом на языке Rust, что упрощает разработку низкоуровневого кода, например, реализации оптимизаций в ядре или организации взаимодействия с оборудованием. Точка для перехода для ассемблерной команды "jmp" задаётся в макросе "asm!" при помощи нового операнда "label", содержащего блочное выражение с кодом на языке Rust.
Удалён второй уровень поддержки для целевой платформы i586-pc-windows-msvc. Рекомендуется использовать платформу i686-pc-windows-msvc, которая отличается поддержкой инструкций SSE2. Платформа i586-pc-windows-msvc потеряла смысл, так как для Windows 10 необходима поддержка SSE2, а более ранние выпуски Windows в Rust не поддерживаются.
В кодовую базу эталонной реализации языка Ruby добавлен новый JIT-компилятор ZJIT, позиционируемый как следующее поколение Ruby JIT. ZJIT войдёт в состав следующего значительного выпуска Ruby 3.5, в котором будет доступен в качестве опции параллельно с JIT-компилятором YJIT, а в версии Ruby 3.6 возможно заменит его. Как и YJIT новый JIT-компилятор написан на языке Rust. Оба JIT-компилятора созданы командой разработчиков из компании Shopify в рамках инициативы по увеличению производительности Ruby-программ, использующих фреймворк Rails и вызывающих очень много методов.
В отличие от YJIT новый JIT-компилятор не транслирует байткод виртуальной машины YARV в низкоуровневое промежуточное представление (по сути почти напрямую в машинный код), а преобразует байткод в высокоуровневое промежуточное представление SSA (Static Single Assignment), над которым можно реализовать дополнительные фазы оптимизации и проводить оптимизацию с оглядкой на крупные блоки кода, а не отталкиваясь только от текущих операций.
ZJIT выполняет компиляцию за раз целого метода, в то время как YJIT мог манипулировать компиляцией только базовых блоков. Для профилирования типов ZJIT реализует классическую архитектуру JIT, использующую накопленные интерпретатором исторические данные о типах, вместо применённой в YJIT техники версионирования базовых блоков (LBBV - Lazy Basic Block Versioning).
Использование высокоуровневого промежуточного представления решит проблемы с расширением, возникшие в YJIT, заложит основу для реализации в будущем многоуровневой JIT-компиляции, позволит реализовать расширенные оптимизации (например, более агрессивное inlinе-развёртывание) и упростит адаптацию JIT для различных платформ. Возвращение к традиционной модели профилирования типов избавит код от усложнений и даст возможность привлечь к работе новых участников (использование LBBV в YJIT привело к тому, что проект был непонятен другим участникам и развивался только сотрудниками Shopify).