| · | 17.07 |
Представлены X-сервер Frame и рабочий стол CHasm, написанные на ассемблере (98 +17) |
| |
Проект Frame развивает новый X-сервер, написанный целиком на ассемблере NASM для архитектуры x86_64 и предназначенный для работы в Linux без внешних зависимостей. Взаимодействие с ядром Linux, включая интерфейсы DRM/KMS и evdev, осуществляется напрямую через системные вызовы, без привлечения библиотек, таких как libc, Mesa и FreeType. Код Frame распространяется как общественное достояние. Разработка ведётся с привлечением AI-ассистента Claude Code.
Целью проекта является реализация расширений протокола X11, достаточных для функционирования рабочего стола CHasm, развиваемого тем же автором и также написанного на ассемблере. В качестве необходимого минимума заявлена поддержка запуска типовых X11-приложений, среди которых Firefox, VS Code, GIMP и Inkscape. Из намеченных к реализации X11-расширений упомянуты SHAPE, RENDER, XKB, COMPOSITE, DAMAGE, RANDR, MIT-SHM, XInput2 и XVideo.
Разработка разделена на 14 стадий. В настоящее время проект находится на 7 стадии, на которой уже реализованы базовые возможности для запуска терминала и некоторых X11 приложений. 14 стадия будет достигнута, когда будут реализованы все возможности для полноценной работы с Firefox. На текущем этапе заявлено о возможности запуска базового рабочего стола CHasm, GIMP и Firefox (с ограничениями).
Среди уже реализованных возможностей: приём X11-запросов через Unix-сокет, программная отрисовка через подсистему ядра DRM/KMS, обработка ввода через evdev, API для управления вводом, поддержка подключения нескольких X11-клиентов, функции для создания и работы с окнами, операции с пиксельными картами, атомарные операции, выделение текста для буфера обмена, X11-расширения SHAPE, RANDR, XKB, XInput2 и MIT-SHM. Ещё не реализованы примитивы векторной отрисовки, атомарное переключение видеорежима, буфер обмена, переключение раскладки клавиатуры, управление курсором, X11-расширения RENDER, DAMAGE и COMPOSITE.
Среда рабочего стола CHasm насчитывает около 100 тысяч строк кода и включает написанные на ассемблере компоненты: мозаичный оконный менеджер Tile, панель состояния Strip,
блокировщик экрана Bolt, интерактивная оболочка Bare и эмулятор терминала Glass. Разработанные компоненты заменяются собой связку из gdm, X11 Server, i3, conky, wezterm и zsh.
Разработка ведётся с оглядкой на минимальное потребление энергии при использовании на ноутбуке. В режиме ожидания оконный менеджер Tile и терминал Glass совсем не потребляют ресурсы и активируются только при действии пользователя. Frame в режиме простоя расходует почти в три раза меньше ресурсов CPU, чем X.Org Server.
Утверждается, что окружение на базе Frame и CHasm уже достаточно стабильно для использования в повседневной работе автора проекта. Когда возникают проблемы или чего-то не хватает, автор по мере необходимости привлекает Claude и устраняет недоработки. Автор также развивает набор консольных утилит fe2o3, написанных на Rust и покрывающих все его потребности, кроме web-браузера. В состав fe2o3 входит двухпанельный файловый менеджер Pointer, командный интерпретатор rush, vim-подобный текстовый редактор Scribe, RSS-ридер Gazette, почтовый клиент и мессенджер Kastrup, календарь-планировщик Tock, конфигуратор Crush, просмотрщик документов Viewer.
- Главная ссылка к новости
- OpenNews: Выпуск X-сервера yserver 1.0.0, написанного на Rust и пригодного для запуска MATE, Xfce и Cinnamon
- OpenNews: Проект Phoenix развивает современный X-сервер, написанный на языке Zig
- OpenNews: Проект SonicDE продолжил развитие KDE для систем с X11
- OpenNews: Основан GNOME-X11, форк GNOME 50 с возвращённой поддержкой X11
- OpenNews: Выпуск проекта XLibre XServer 25.2.0, развивающего форк X.Org Server
|
|
|
| |
|
|
| · | 17.07 |
Доступен Wayland 1.26 (44 –5) |
| |
После четырёх месяцев разработки представлен стабильный релиз протокола, механизма межпроцессного взаимодействия и библиотек Wayland 1.26. Ветка 1.26 обратно совместима на уровне API и ABI с выпусками 1.x и содержит в основном исправления ошибок и незначительные обновления протокола. Наработки проекта распространяются под лицензией MIT. Эталонный композитный сервер Weston, предоставляющий код и рабочие примеры для использования Wayland в десктоп-окружениях и встраиваемых решениях, развивается в рамках отдельного цикла разработки.
Основные изменения в протоколе:
- Добавлено событие wl_pointer.warp, через которое можно получать уведомления о новой позиции указателя без обработки события wl_pointer.motion, генерируемого при активности пользователя.
- Добавлен запрос wl_fixes.ack_global_remove, предназначенный для отправки композитному менеджеру подтверждения того, что клиент прекратил обработку события для исключения состояния гонки при удалении глобальных событий. После получения подтверждения от всех клиентов композитный менеджер может удалить связанный с событием обработчик на своей стороне.
- Добавлена функция wl_display_remove_socket_fd() для удаления сокетов, до этого добавленных через вызов wl_display_add_socket_fd().
- В отладочном режиме WAYLAND_DEBUG обеспечен вывод в лог времени в формате "HH:MM:ss.xxxxxx", упрощающем разбор и сравнение логов.
Добавленные после рошлого выпуска Wayland расширения протоколов, дополняющие базовый протокол Wayland и поставляемые в отдельном наборе Wayland-Protocols:
- xx-fractional-scale - для масштабирования системы логических координат, значения в которой задаются целыми числами, для повышения точности позиционирования и увеличения разрешения логических координат до отдельных пикселей. Подобная возможность решает проблему с ограниченным разрешением системы логических координат, недостаточным для позиционирования на уровне отдельных пикселей, необходимого для полноценной реализации дробного масштабирования.
- xx-cutouts - для получения информации о вырезах на экране (например, области под фронтальную камеру на экране смартфона).
- xx-zones - для создания и добавления окон верхнего уровня в "зоны" - окружения со своим пространством координат. Протокол позволяет организовать логическую расстановку окон, в которой каждое окно размещается относительно другого окна.
- xx-keyboard-filter - для перехвата клиентом выбранных событий клавиатуры, изменения событий ввода или блокирования передачи определённых событий в Wayland-поверхность, на которой установлен фокус ввода.
- В категорию "staging" добавлен протокол xdg-session-management, предоставляющий возможности для восстановления состояния и позиции окон прерванного сеанса в окружениях на основе протокола Wayland, например, после аварийного завершения композитного сервера или приложения.
- В протокол "linux-dmabuf" добавлена поддержка работы на системах с несколькими GPU. На подобных системах клиент может согласовать с композитными сервером какой из GPU следует использовать.
- В протокол color-management-v1 добавлена поддержка метаданных изображений в формате BT.2100 для применения в композитном сервере специфичных обработчиков, позволяющих корректно отображать HDR-контент, созданный для Windows.
Наиболее заметные события, связанные с Wayland и произошедшие после публикации прошлого выпуска:
- В Cinnamon реализована полноценная поддержка Wayland.
- В библиотеку ANGLE, используемую в Chrome и Android, добавлена поддержка Wayland.
- В KDE при использовании Wayland реализована поддержка восстановления сеансов и реализован Wayland-протокол xx-fractional-scale-v2 для дробного масштабирования.
- Создан порт X.Org-драйвера Synaptics для окружений на базе Wayland.
- Инициирована проверка готовности платформ VFX и анимации к замене X11 на Wayland.
- Началось тестирование композитного сервера Xfwl4 от проекта Xfce.
- На базе Wayfire и Libadwaita воссоздана пользовательская оболочка Unity.
- Обновлены композитные серверы и среды рабочего стола: COSMIC 1.3.0, Weston 16, Phosh 0.56, Nourish 1.0.0, miracle-wm 0.10, KDE Plasma 6.7, labwc 0.20, Sway 1.2, Wayland Maker 0.8, Hyprland 0.55, Niri 26.04, LXQt 2.4.0, Cage 0.3.
Напомним, что Wayland представляет собой протокол взаимодействия композитного сервера и работающих с ним приложений. Клиенты самостоятельно выполняют отрисовку своих окон в отдельном буфере, передавая информацию об обновлениях композитному серверу, который комбинирует содержимое буферов отдельных приложений для формирования итогового вывода с учётом возможных нюансов, таких как перекрытие окон и прозрачность. Иными словами, композитный сервер не предоставляет API для отрисовки отдельных элементов, а оперирует только с уже сформированными окнами, что позволяет избавиться от двойной буферизации при использовании высокоуровневых библиотек, таких как GTK и Qt, берущих на себя работу по компоновке содержимого окон.
Wayland решает многие проблемы с безопасностью X11 в X.Org Server, так как в отличие от последнего изолирует ввод и вывод для каждого окна, не позволяет клиенту получить доступ к содержимому окон других клиентов, а также не допускает перехват связанных с другими окнами событий ввода (в XLibre XServer реализовано X11-расширение Xnamespace, обеспечивающее изоляцию клиентов через разделение на уровне пространств имён). Поддержка прямой работы c Wayland реализована для большинства применяемых в Linux графических библиотек, включая GTK, Qt, SDL, FLTK, wxWidgets, Clutter и EFL (Enlightenment Foundation Library).
Взаимодействие с аппаратным обеспечением в Wayland/Weston, например, проведение инициализации, переключение видеорежимов (drm modesetting) и управление памятью (GEM для i915 и TTM для radeon и nouveau) графических карт, может производиться напрямую через модуль, работающий на уровне ядра, что позволяет обойтись без привилегий суперпользователя. Для обеспечения выполнения обычных X11-приложений в окружении на базе Wayland используется DDX-компонент XWayland (Device-Dependent X), похожий по организации работы на Xwin и Xquartz для платформ Win32 и macOS.
- Главная ссылка к новости
- OpenNews: Доступен Wayland 1.25
- OpenNews: Выпуск композитного сервера Weston 16.0
- OpenNews: Опубликован порт X.Org-драйвера Synaptics для окружений на базе Wayland
- OpenNews: Выпуск Wayland-Protocols 1.49
- OpenNews: Инициатива по изучению готовности платформ VFX и анимации к замене X11 на Wayland
|
|
|
| |
|
|
| · | 17.07 |
Выпуск драйвера SpliX 2.0.2 для лазерных принтеров Samsung, Xerox и HP (16 +10) |
| |
После более двух лет со времени прошлого выпуска сформирован релиз проекта SpliX 2.0.2, развивающего интегрируемый с сервером печати CUPS драйвер для лазерных принтеров от компаний Samsung, Xerox и HP, поддерживающих язык описания страниц SPL (Samsung Printer Language), при использовании которого обработка документа перед печатью производится на пользовательском компьютере, а на принтер отправляется финальный макет. Поддерживаются совместимые с SPL2 и SPLc принтеры, к которым относятся почти все дешёвые лазерные принтеры Samsung и некоторые модели принтеров Xerox, Dell, Lexmark, HP и Toshiba, построенные на технологиях Samsung. Код драйвера написан на языке C++ и распространяется под лицензией GPLv2.
В новой версии:
- Добавлена поддержка серий принтеров:
- HP Laser 10x, HP Laser MFP 13x,
- Samsung SL-M2020, SL-M2070
- Samsung ML-1670, ML-1860,
- Samsung SCX-3400,
- Samsung M262x 282x, M267x 287x, M283x
- Xerox Phaser 3020, 3052, 3260,
- Xerox WorkCentre 3025, 3215, 3225.
- Перенесены идентификаторы (1284DeviceID) принтеров Samsung и Xerox из Fedora Linux.
- Добавлена поддержка дуплексного режима на принтере Samsung SCX-4521F.
- В драйвер ULD добавлена поддержка дополнительных размеров страниц.
- Решена проблема с печатью на листах в формате A5 на принтерах Samsung ML-15x0, ML-16x0, ML-17x0, ML-225x и Phaser 3117.
- Главная ссылка к новости
- OpenNews: Удалённо эксплуатируемые уязвимости в сервере печати CUPS
- OpenNews: Уязвимость в CUPS оказалась пригодна для усиления трафика при DDoS-атаках
- OpenNews: Проект OpenPrinting выпустил систему печати CUPS 2.4.0
- OpenNews: Автор CUPS выпустил PAPPL 1.0, фреймворк для организации вывода на печать
- OpenNews: Проект Open Printer развивает открытый струйный принтер
|
|
|
| |
|
|
| · | 17.07 |
OpenBSD прекратил поддержку аппаратной платформы Loongson из-за регресии в Clang (88 –9) |
| |
Из OpenBSD удалена поддержка платформы Loongson, добавленной в 2010 году для MIPS-совместимых китайских процессоров Loongson 2E и 2F. В качестве причины удаления отмечаются проблемы со сборкой для платформы mips64el в новых версиях компилятора Clang. После попытки выполнить самосборку clang 22 (сборка кода clang 22 с использованием компилятора clang 22) стали возникать аварийным завершения, которые не проявлялись при сборке clang 22 при помощи clang 19.
Сопровождавший платформу Loongson разработчик отметил, что у него нет времени и сил разбирать причины возникшей регрессии, особенно с учётом того, что цикл самосборки clang на имеющемся компьютере с CPU Loongson занимает 10 дней.
Вероятно регрессия связана с обработкой порядка следования байт, так как на MIPS-платформе Octeon проблема не проявляется (Loongson - Little-Endian, Octeon - Big-Endian). Вариант возвращения на использование GCC 4 отброшен из-за того, что многие порты требуют компилятора с поддержкой стандарта C++ 11.
- Главная ссылка к новости
- OpenNews: В Debian реализована официальная поддержка архитектуры LoongArch
- OpenNews: OpenBSD начал формирование сборок для архитектуры powerpc64
|
|
|
| |
|
|
| · | 17.07 |
Альтернативная расширенная сборка PuTTY, поддерживающая файловые сессии (14 –9) |
| |
Опубликована альтернативная сборка SSH-клиента PuTTY 0.84, дополненная некоторыми возможностями, перенесёнными из форка KiTTY, разработка которого была прекращена три года назад. Перенос функциональности из KiTTY в актуальную кодовую базу PuTTY практически полностью был реализован с помощью ChatGPT/Codex. Изменения касаются только интерфейса и удобства использования, без вмешательства в основную логику PuTTY.
Среди наиболее заметных изменений:
- Хранение сессий и настроек в отдельных файлах.
- Отдельный launcher в системном трее.
- Возможность изменять размер шрифта комбинацией "Ctrl+колесо мыши".
- Автоматическое сохранение размера и положения окна.
- Комбинация "Ctrl+Shift+клик левой кнопкой мыши" для открытия URL.
- По умолчанию работа с курсором в режиме "xterm-style bitmap", благодаря чему курсор в Midnight Commander отображается и работает корректно.
- Главная ссылка к новости
- OpenNews: Выпуск SSH-клиента PuTTY 0.84
- OpenNews: Домен putty.org начали использовать для распространения идей антипрививочников
- OpenNews: Уязвимость в PuTTY, позволяющая восстановить закрытый ключ пользователя
- OpenNews: Terrapin - уязвимость в протоколе SSH, позволяющая снизить защиту соединения
- OpenNews: Представлен SSH3, вариант протокола SSH, использующий HTTP/3
|
|
|
| |
|
|
| · | 16.07 |
Линус Торвальдс поддержал право использовать AI-инструменты при разработке ядра (199 +27) |
| |
Линус Торвальдс прокомментировал попытки обсудить запрет на применение AI-инструментов в разработке ядра Linux. Официальная позиция в том, что ядро Linux, как проект, не против использования AI. AI рассматривается как инструмент, упрощающий работу над кодом, такой же как и любые другие инструменты. Использование AI - личное дело каждого разработчика и фактором при приёме изменений является качество кода, а не то, какие инструменты использовались для создания этого кода.
Тем, кто недоволен подобной политикой или пытается навязывать другим запрет использования AI-инструментов, Линус рекомендовал создать свой форк ядра или прекратить участие в разработке. По мнению Линуса, ещё год назад применение AI при разработке могло вызывать вопросы, но сейчас польза от AI стала очевидной и отрицать это могут лишь те, кто не использовал современные AI-инструменты. Никто в сообществе разработчиков ядра не заставляет других использовать AI, но попытки препятствовать использованию AI другими людьми будут пресекаться.
Применение AI может создавать проблемы, такие как увеличение нагрузки на сопровождающих и выявление неприятных ошибок, но, по мнению Линуса, нужно не зарывать голову в песок, а заставить AI-инструменты, такие как Sashiko, помогать сопровождающим. Современные AI-отчеты часто превосходят по качеству и гибкости традиционные инструменты, такие как checkpatch, и находят нетривиальные ошибки.
Ядро Linux остаётся техническим проектом и связанные с ним решения принимаются на основе технических достоинств, а не боязни нового.
Ядро не является проектом воинов за социальную справедливость, никогда им не был, и никогда не станет. Социальный аспект работы над открытым кодом рассматривается, как важная и мотивирующая часть проекта, но скорее это побочный эффект, а не цель существования проекта. Ядро развивается как открытый проект не по религиозным причинам, а так как эта модель приводит к созданию лучших технологий.
В продолжении дискуссии Линус посоветовал не навязывать свои этические нормы другим людям и сравнил применение AI с вегетарианством - среди разработчиков ядра есть вегетарианцы, у которых разные причины не есть мясо (социальные, религиозные, этические, вкусовые), но они не ожидают, что все остальные разработчики станут вегетарианцами из‑за их личной позиции. С принятием AI то же самое.
Противникам AI, пытающимся ссылаться на этику, Линус посоветовал держать свою этику там, где ей место - в личной жизни, и не пытаться навязывать её другим людям. Развивая тему этики Линус также упомянул взаимоотношения сообщества разработчиков ядра с Фондом СПО, у которого тоже имеются этические доводы, и они используют их как оружие. Именно поэтому Linux - это не GNU/Linux, и в сообществе разработчиков ядра предпочитают использовать термин "Open Source", а не "Free Software".
- Главная ссылка к новости
- OpenNews: Интервью с Грегом Кроа-Хартманом о созданных через AI отчётах об ошибках
- OpenNews: Введён в строй AI-сервис Sashiko для рецензирования изменений в ядре Linux
- OpenNews: Линус Торвальдс раскритиковал приватный разбор уязвимостей, выявленных при помощи AI
- OpenNews: Рекомендации по использованию AI при разработке открытого кода
- OpenNews: Благодаря AI для включения в ядро Linux стали присылать на 20% больше изменений
|
|
Обсуждение (199 +27) |
Тип: Тема для размышления |
|
| |
|
|
| · | 16.07 |
Регрессия в ядре Linux 7.0, существенно снижающая производительность приложений, использующих AMD ROCm (60 +14) |
| |
Инженеры из компании Canonical предупредили о наличии регрессий в предстоящем обновлении пакета с ядром 7.0.0-28.28, которое будет доставлено пользователям Ubuntu 26.04 и Ubuntu 24.04. Регрессия проявляется при использовании драйвера amdgpu и приводит к существенному снижению производительности некоторых приложений, использующих стек AMD ROCm. Например, из-за регрессии время выполнения модели Stable Diffusion XL (SDXL) при помощи ComfyUI замедлилась в 42 раза (с 9 секунд до 388 секунд).
Возникновение проблемы отмечено в обновлении ядра Linux 7.0.12, на базе которого собрана версия 7.0.0-28.28 пакета с ядром для Ubuntu. Отмечается, что подготовленное обновление содержит устранение важных уязвимостей и компания Canonical не может отложить его из-за отмеченной регрессии, поэтому решено выпустить его как есть, а регрессию устранить в следующем корректирующем обновлении. Пользователи, для которых отмеченная регрессия более критична, чем устранение уязвимостей, могут не переходить на выпуск 7.0.0-28.28 и дождаться следующего обновления.
Проблема также проявляется в пакетах с ядром 7.0.12, выпущенных для Fedora, CachyOS и других дистрибутивов Linux. Недоработка устранена в выпуске ядра 7.0.13. В качестве обходного пути устранения регрессии в ComfyUI можно использовать флаг "--disable-mmap".
- Главная ссылка к новости
- OpenNews: Результаты инициативы по обеспечению полноценной поддержки ARM64 в Ubuntu
- OpenNews: Возвращение в Ubuntu утилиты cp из Rust Coreutils привело к сбою при сборке livecd-rootfs
- OpenNews: Изменение правил формирования релизов официальных редакций Ubuntu
- OpenNews: В Ubuntu намечена интеграция AI
- OpenNews: В ядре Linux 7.0 выявили регрессию, в два раза снижающую производительность PostgreSQL
|
|
|
| |
|
|
| · | 16.07 |
Выпуск дистрибутива для создания межсетевых экранов OPNsense 26.7 (16 +3) |
| |
Опубликован релиз дистрибутива для создания межсетевых экранов OPNsense 26.7, который в 2015 году отделился от проекта pfSense с целью разработки полностью открытого дистрибутива, который мог бы обладать функциональностью на уровне коммерческих решений для развёртывания межсетевых экранов и сетевых шлюзов. В отличие от pfSense проект позиционируется как неподконтрольный одной компании, развиваемый при непосредственном участии сообщества и обладающий полностью прозрачным процессом разработки, а также предоставляющий возможность использования любых своих наработок в сторонних продуктах, в том числе коммерческих. Исходные тексты компонентов дистрибутива, а также используемые для сборки инструменты, распространяются под лицензией BSD. Сборки подготовлены в форме LiveCD и системного образа для записи на Flash-накопители (490 МБ).
Начинка дистрибутива основывается на коде FreeBSD. Среди возможностей OPNsense: полностью открытый сборочный инструментарий, поддержка установки в форме пакетов поверх обычного FreeBSD, средства балансировки нагрузки, web-интерфейс для организации подключения пользователей к сети (Captive portal), наличие механизмов отслеживания состояний соединений (stateful firewall на основе pf), система ограничения пропускной способности, фильтрация трафика, создание VPN на базе IPsec, OpenVPN и PPTP, интеграция с LDAP и RADIUS, поддержка DDNS (Dynamic DNS), система наглядных отчётов и графиков.
На базе дистрибутива могут создаваться отказоустойчивые конфигурации, основанные на использовании протокола CARP и позволяющие запустить помимо основного межсетевого экрана запасной узел, который будет автоматически синхронизирован на уровне конфигурации и примет на себя нагрузку в случае сбоя первичного узла. Для администратора предлагается web-интерфейс для настройки межсетевого экрана, построенный с использованием web-фреймворка Bootstrap и Phalcon MVC.
Среди изменений:
- Осуществлён переход на кодовую базу FreeBSD
15.1 (ранее использовался FreeBSD 14.3).
- Интерфейсы для настройки правил межсетевых экранов, назначения сетевых интерфейсов (разделение между LAN и WAN) и управления группами шлюзов переведены на использование MVC-фреймворка и теперь дополнительно доступны через Web API для автоматизации управления сетевой конфигурацией.
- Добавлен мастер для миграции правил трансляции адресов со старого формата конфигурации Outbound NAT на новый формат, использующий архитектуру Source NAT (SNAT).
- В конфигуратор KEA DHCP добавлена поддержка DDNS (Dynamic) и автоматического выделения префиксов IPv6 (блоков адресов).
- В Captive portal добавлена поддержка IPv6.
- Обновлены версии OpenVPN 2.7, PHP 8.5, Python 3.13.
- Устранена критическая уязвимость (CVE-2026-57155, уровень опасности 9.9 из 10), позволяющая непривилегированному пользователю без доступа к shell и ограниченному работой с алиасами (списки с именами сетей и хостов), выполнить код с правами root. Уязвимость вызвана отсутствием должных проверок при обработке данных из БД GeoIP c привязкой стран к IP-адресам.
Код страны из БД GeoIP без проверки подставлялся при формировании записываемого имени файла, что позволяло перезаписать любой файл в системе, так как обработчик запускается с правами root. Через Web API непривилегированный пользователь мог указать свой URL для загрузки модифицированной БД GeoIP для алиасов. Для получения прав root в одной из записей в БД вместо кода страны можно указать "../../../../../../../../etc/newsyslog.conf.d/zzz_pwn", что приведёт к созданию файла конфигурации для системы ротации логов, в котором могут быть определены команды, запускаемые с правами root.
- Главная ссылка к новости
- OpenNews: Выпуск дистрибутива для создания межсетевых экранов OPNsense 25.7
- OpenNews: Проект IPFire DBL для блокирования нежелательного контента
- OpenNews: Релизы дистрибутивов для создания межсетевых экранов IPFire 2.29 Core 186 и NethSecurity 8.0
- OpenNews: Релиз дистрибутива для создания межсетевых экранов NethSecurity 8.3
- OpenNews: Релиз дистрибутива для создания межсетевых экранов pfSense CE 2.8.0
|
|
|
| |
|
|
| · | 16.07 |
Microsoft открыл код IRC-клиента ComicChat (45 +25) |
| |
Компания Microsoft открыла исходный код IRC-клиента ComicChat, диалоги в котором отрисовываются в форме комиксов, генерируемых на основе персонажей, выбранных участниками и отражающими их эмоции. ComicChat использует штатный протокол IRC, может подключаться к обычным IRC-серверам и совместим с текстовыми IRC-клиентами. Код написан на C++ и открыт под лицензией MIT.
Для формирования сюжета кадров используется экспертная система, которая при генерации картинки учитывает содержимое сообщений и контекст, на основе которых определяется расположение, позы, жесты и мимика персонажей, а также число участников, масштаб, ракурс и компоновка кадров. Персонажи для участников, использующих текстовые IRC-клиенты, выбираются автоматически.
Проект развивался как эксперимент с новыми способами визуализации общения в сети. В 1996 году первая версия ComicChat была добавлена в поставку Internet Explorer 3.0 и могла использоваться как отдельное приложение или внутри браузера. В 1998 году ComicChat был включён в поставку Windows 98. В 2000 году разработка проекта была прекращена, после того как на смену IRC пришли мессенджеры. ComicChat стал первой программой, в которой использовался шрифт Comic Sans, подходящий для пузырей с текстом на комиксах.
Опубликованная в 2026 году версия адаптирована для сборки современными компиляторами и расширена для совместимости с современными IRC-серверами и клиентами. В новой версии также добавлена поддержка TLS-шифрования и реализовано масштабирование интерфейса для экранов с высокой плотностью пикселей.
- Главная ссылка к новости
- OpenNews: Microsoft открыл исходные тексты PowerShell и портировал для Linux
- OpenNews: Microsoft открыл код Windows Subsystem for Linux и текстового редактора Edit
- OpenNews: Microsoft представил Coreutils для Windows, эмулятор терминала Intelligent Terminal и контейнеры в WSL
- OpenNews: Microsoft открыл код игр Zork I, II и III под лицензией MIT
- OpenNews: Microsoft открыл код 86-DOS и PC-DOS под лицензией MIT
|
|
|
| |
|
|
| · | 16.07 |
Доступен язык программирования Perl 5.44 (110 +21) |
| |
После года разработки опубликован релиз новой стабильной ветки языка программирования Perl - 5.44. При подготовке нового выпуска было изменено около 270 тысяч строк кода (без документации и автоматически сгенерированного кода - 110 тысяч), изменения затронули 860 файлов, в разработке принял участие 71 разработчик.
Ветка 5.44 выпущена в соответствии с утверждённым тринадцать лет назад фиксированным графиком разработки, подразумевающим выпуск новых стабильных веток раз в год и корректирующих релизов - раз в три месяца. Примерно через месяц планируется выпустить первый корректирующий релиз Perl 5.44.1, в котором будут исправлены наиболее значительные ошибки, выявленные в процессе внедрения Perl 5.44.0. Одновременно с выходом Perl 5.44 прекращена поддержка ветки 5.40, для которой обновления могут быть выпущены в будущем только в случае выявления критических проблем с безопасностью. Начался процесс разработки экспериментальной ветки 5.45, на базе которой в первой половине 2027 года будет сформирован стабильный релиз Perl 5.46, если не будет принято решение перейти к нумерации 7.x.
Ключевые изменения:
- Добавлена экспериментальная возможность использования именованных параметров в сигнатурах функций, определяющих перечень передаваемых в функцию переменных не в теле функции, а при её объявлении. Новая возможность позволяет передавать параметры не в строгом порядке следования, а в произвольном порядке с использованием пар ключ/значения и синтаксиса как при назначении элементов в хэшах:
Старый синтаксис:
sub f { my ($x, $y) = @_; ...}
f(1, 2);
Сигнатуры:
sub f ($x, $y) { ... }
f(1, 2);
Сигнатуры с именованными параметрами:
sub f (:$x, :$y) { ... }
f(y => 2, x => 1);
- Добавлена экспериментальная возможность использования алиасов (указателей на указатели) в циклах foreach с несколькими переменными. Реализованная возможность позволяет создавать алиас в цикле foreach при единовременном извлечением сразу нескольких значений в одной итерации цикла. Например, можно сформировать алиас для элемента хэша c массивом при переборе разом ключей и значений хэша:
use v5.44;
use feature qw( refaliasing declared_refs );
my %hash = (
one => [1],
two => [2, 2],
);
foreach my ( $key, \@items ) ( %hash ) {
say "The $key array contains: @items";
}
# До версии 5.44 потребовалось бы выполнять разыменование:
foreach my ( $key, $var ) ( %hash ) {
say "The $key array contains: @$var";
}
# Без экспериментальных возможностей refaliasing и declared_refs:
foreach my $key (keys %hash) {
say "The $key array contains: @{$hash{$key}}";
}
- В регулярных выражениях реализован экспериментальный режим 'enhanced_xx', позволяющий использовать модификатор "/xx" с классами символов в квадратных скобках ([a-zA-Z]) для их разделения на несколько строк или подстановки комментариев. Например, условие "if ($text =~ m/[a-zA-Z]/){" можно оформить так:
if ($text =~ m/[
a-z # строчные буквы
A-Z # заглавные буквы
]/xx) {
- В генераторе псевдослучайных чисел для получения энтропии задействован системный вызов getentropy() на системах с его поддержкой (Linux, BSD, macOS). На остальных системах для получения энтропии осуществляется чтение из устройства
/dev/urandom или использование хэша от времени, идентификатора процесса и значения указателя.
- Добавлена поддержка спецификации Unicode 17.0.
- Обеспечено строгое соблюдение правил Unicode для имён идентификаторов и групп регулярных выражений, в которых теперь запрещено использовать около 160 Unicode-символов, ранее подпадавших под класс "\w". Например, из действия класса "\w", охватывающего все буквы, цифры и символ подчеркивания, выведены латинские буквы в кружках, которые напоминают реальные буквы, но ими не являются.
Изменение поведения затрагивает только программы, использующие режим "use utf8".
- Устранены уязвимости, вызванные переполнениями буфера в функциях Perl_study_chunk (CVE-2026-8376, проявляется в 32-разрядных сборках) и S_measure_struct (CVE-2026-57432), а также переполнение 16-разрядного счётчика в Regex-движке (CVE-2026-13221), что может привести к неверному срабатыванию регулярного выражения.
- Запрещён переход при помощи оператора goto на позиции внутри циклов и блочных конструкций. Данная возможность была объявлена устаревшей в 2010 году.
- Проведены оптимизации производительности, ускорившие операции сложения, вычитания и умножения целых чисел, обработку сигнатур функций и заполнение хэшей из списков в формате ключ/значение с известными на этапе компиляции строковыми ключами.
- Главная ссылка к новости
- OpenNews: Доступен язык программирования Perl 5.42
- OpenNews: Язык Perl поднялся с 27 на 10 место в рейтинге Tiobe
- OpenNews: Анализ рисков при воплощении в жизнь инициативы Perl 7
- OpenNews: Релиз компилятора Rakudo 2023.04 для языка программирования Raku (бывший Perl 6)
- OpenNews: Perl 7 плавно продолжит развитие Perl 5 без нарушения обратной совместимости
|
|
|
| |
|
|
| · | 16.07 |
В OpenBSD устранена локальная уязвимость, позволяющая получить права root (53 +10) |
| |
Проект OpenBSD опубликовал исправление уязвимости (CVE-2026-57589) в ядре, затрагивающей реализацию системных вызовов для работы с семафорами System V (sem). Проблема вызвана обращением к уже освобождённой памяти в функции sys_semget() и может эксплуатироваться для получения прав root непривилегированным локальным пользователем в конфигурации по умолчанию.
В кодовую базу OpenBSD-current исправление было включено 23 мая, но для уже выпущенных релизов патчи опубликованы только сегодня. Ошибка присутствовала в коде 23 года и была выявлена в рамках инициативы Patch the Planet по проверке открытых проектов AI-моделями OpenAI.
Помимо отмеченной проблемы опубликовано несколько исправлений, которые не помечены как устранения уязвимостей, но, судя по описанию, могут быть связаны с безопасностью: недостаточная проверка входных данных в коде IPsec и IPComp; двойное освобождение памяти в сервере NFS; повреждение памяти в коде для работы с блокировками в функциях pinsyscall и kbind.
- Главная ссылка к новости
- OpenNews: Релиз OpenBSD 7.9
- OpenNews: В OpenBSD переименовали поле в pfsync после ложного AI-отчёта об уязвимости
- OpenNews: Уязвимость в гипервизоре VMM, развиваемом OpenBSD, оказалась исправлена не полностью
- OpenNews: Удалённая уязвимость в IPv6-стеке OpenBSD
- OpenNews: Уязвимость в NFS-сервере FreeBSD и OpenBSD, приводящая к удалённому выполнению кода
|
|
Обсуждение (53 +10) |
Тип: Проблемы безопасности |
|
| |
|
|
| · | 16.07 |
Обновление NTFS-3G 2026.7.7 с устранением 9 уязвимостей (42 +11) |
| |
Опубликован релиз пакета NTFS-3G 2026.7.7, включающего свободный драйвер, работающий в пространстве пользователя с использованием механизма FUSE, и комплект утилит ntfsprogs для манипуляций с разделами NTFS. Код проекта распространяется под лицензией GPLv2. В новой версии устранено 9 уязвимостей, которые могут привести к выполнению кода с правами root при обработке специально оформленных разделов или дисковых образов с ФС NTFS.
- CVE-2026-46569 - переполнение буфера в функции
ntfs_ib_copy_tail(), вызванное отсутствием проверки допустимого диапазона значений. Уязвимость может привести к выполнению кода с правами root через создание файла в специально оформленной директории после монтирования модифицированного атакующим образа NTFS.
- CVE-2026-42617 - переполнение буфера в функции ntfs_ir_to_ib(), которое может привести к выполнению кода с правами root через создание файла в директории после монтирования специально модифицированного образа NTFS.
- CVE-2026-42618 - переполнение буфера в функции
ntfs_decompress(), которое может привести к выполнению кода с правами root при чтении специально оформленного файла после монтирования модифицированного атакующим образа NTFS.
- CVE-2026-46570 - переполнение буфера в функции ntfs_index_walk_down(), которое может привести к выполнению кода с правами root при обращению к метаданным файла после монтирования специально оформленного образа NTFS.
- CVE-2026-46572 - переполнение буфера в функции ntfs_ib_cut_tail(), которое может привести к выполнению кода с правами root при создании файла в директории после монтирования специально оформленного образа NTFS с повреждённым индексом.
- CVE-2026-56135 - переполнение буфера в функции build_inherited_id(), которое может привести к выполнению кода с правами root при создании файла после монтирования специально оформленного образа NTFS c некорректными метаданными ACL у директории.
- CVE-2026-42616 - переполнение буфера в утилите ntfscat, которое потенциально может привести к выполнению кода при чтении специально оформленных образов NTFS.
- CVE-2026-46571, CVE-2026-56136 - чтение из области вне выделенного буфера при разборе символических ссылок и манипуляций с файлами после монтирования модифицированного атакующим образа NTFS. Уязвимости могут привести к утечке информации из памяти привилегированного процесса ntfs-3g.
- Главная ссылка к новости
- OpenNews: Выпуск NTFS-3G 2026.2.25
- OpenNews: Уязвимость в 7-Zip, приводящая к выполнению кода при обработке образов NTFS
- OpenNews: В состав ядра Linux 7.1 принят новый драйвер для NTFS
- OpenNews: Уязвимость в NTFS-драйвере из состава GRUB2, позволяющая выполнить код и обойти UEFI Secure Boot
- OpenNews: Уязвимость в драйвере NTFS-3G, потенциально позволяющая выполнить код с правами root
|
|
Обсуждение (42 +11) |
Тип: Проблемы безопасности |
|
| |
|
|
| · | 15.07 |
Обновление nginx 1.31.3 с устранением RCE-уязвимости (37 +8) |
| |
Сформирован выпуск основной ветки nginx 1.31.3, в рамках которой продолжается развитие новых возможностей, а также выпуск параллельно поддерживаемой стабильной ветки nginx 1.30.4, в которую вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей. В обновлениях устранено 3 уязвимости:
- CVE-2026-42533 - переполнение буфера, проявляющееся при использовании в директиве "map" проверок через регулярные выражения с подстановками при помощи неименованных (например, $1 и $2) или именованных переменных, при условии, что данные переменные упомянуты до переменной результата map или использована переменная, которая не кэшируется. Потенциально уязвимость может привести к удалённому выполнению кода на сервере через отправку специально оформленного HTTP-запроса. Проблеме присвоен критический уровень опасности (9.2 из 10).
- CVE-2026-60005 - утечка неинициализированной памяти рабочего процесса при использовании модуля ngx_http_slice_module и указания в директиве slice регулярных выражений с подстановками при помощи неименованных переменных. Уязвимости присвоен уровень опасности 8.8 из 10.
- CVE-2026-56434 - обращение к памяти после её освобождения в модуле
ngx_http_ssi_module, возникающее при обработке специально оформленного ответа, возвращённого проксированным бэкендом. Уязвимость может привести к изменению содержимого памяти рабочего процесса. Проблеме присвоен уровень опасности 8.3 из 10.
Не связанные с уязвимостями изменения:
- В модуле ngx_http_xslt_filter_module отключена загрузка переменных в XML-документе, значения которых загружаются из внешних источников. Добавлена директива "xml_external_entities" для управления загрузкой внешних компонентов, указанных в блоке DTD обрабатываемого XML-документа.
- Добавлены директивы "proxy_socket_sndbuf", "proxy_socket_rcvbuf",
"fastcgi_socket_sndbuf", "fastcgi_socket_rcvbuf",
"grpc_socket_sndbuf", "grpc_socket_rcvbuf", "scgi_socket_sndbuf",
"scgi_socket_rcvbuf", "uwsgi_socket_sndbuf", "uwsgi_socket_rcvbuf",
"tunnel_socket_sndbuf" и "tunnel_socket_rcvbuf" для выставления размера буферов отправки (SO_SNDBUF) и приёма (SO_RCVBUF).
- Для архитектуры LoongArch64 реализовано определение размера блока (cache line), используемого для передачи данных между кэшем CPU и памятью.
- В модулях ngx_http_proxy_v2_module и ngx_http_grpc_module реализовано ограничение размера заголовков и трейлеров в ответах HTTP/2 при помощи директив proxy_buffer_size и grpc_buffer_size.
- Главная ссылка к новости
- OpenNews: Обновление nginx 1.31.2 с устранением уязвимостей, эксплуатируемых через HTTP/3, HTTP2 и gRPC
- OpenNews: Проект nginx опубликовал JavaScript-модуль njs 1.0.0
- OpenNews: Выпуск Angie 1.12.0, форка Nginx
- OpenNews: В nginx выявлена вторая за 10 дней удалённо эксплуатируемая уязвимость
- OpenNews: Обновление nginx 1.31.0 с устранением RCE-уязвимости, эксплуатируемой через HTTP-запрос
|
|
|
| |
|
|
| · | 15.07 |
Выпуск Angie 1.12.0, форка Nginx (23 +8) |
| |
Опубликован выпуск высокопроизводительного HTTP-сервера и многопротокольного прокси-сервера Angie 1.12.0, ответвлённого от Nginx группой бывших разработчиков проекта, уволившихся из компании F5 Network. Исходные тексты Angie доступны под лицензией BSD. Проект получил сертификаты совместимости с российскими операционными системами Ред ОС, Astra Linux Special Edition, Роса Хром Сервер, Альт и ФСТЭК-версии Альт. На базе Angie развивается проприетарный коммерческий продукт Angie PRO, включённый в реестр российского ПО.
Изменения в Angie 1.12.0:
- Из коммерческой версии Angie PRO в общедоступную открытую версию перенесены следующие возможности:
- Балансировка с учётом среднего времени получения заголовка ответа или полного ответа от проксируемых HTTP-серверов, а также с учётом среднего времени установки соединения, получения первого или последнего байта ответа от проксируемых stream-серверов. Настройка осуществляется при помощи директивы least_time в блоке upstream.
- Возможность привязки сессий к проксируемым серверам, позволяющая обнаруживать сессии и запоминать их в разделяемой памяти сервера. Возможность включается через установку режима learn в директиве sticky. Настройка создания и поиска сессий осуществляется через переменные, например, сессии можно выделять по значению Cookie.
- В директиву server добавлен режим "drain", при котором на сервер не направляются новые запросы, но продолжают приходить запросы, связанные с сессиями, ранее привязанными через директиву sticky (для плавного вывода сервера из ротации).
- В API статистики в разделы /status/http/upstreams/ и /status/stream/upstreams/ добавлены метрики со средним временем получения HTTP-заголовка ответа и полного ответа.
- Добавлен новый HTTP-модуль DoH с реализацией сервера DNS-over-HTTPS, принимающего DNS-запросы по HTTP/HTTPS и проксирующего их к DNS-серверам через UDP или TCP.
- Предоставлена возможность получения сертификатов для IP-адресов по протоколу ACME через сервис Let's Encrypt. Добавлена поддержка ACME-профилей, настраиваемая через параметр profile в директиве acme_client. Добавлена поддержка расширения EAB (External Account Binding для привязки ACME-аккаунта к внешней учётной записи на стороне удостоверяющего центра с использованием HMAC-аутентификации. Добавлена директива acme_dns_ttl для изменения значения TTL в ответах на DNS-запросы при верификации доменов через ACME (для обхода фильтрации DNS-ответов с низким TTL).
- Включено автоматическое получение адресов DNS-серверов из файла в формате resolv.conf, указанного в через параметр conf в директиве resolver. Файл автоматически перечитывается после его изменения.
- В директиву error_log добавлен параметр filter для фильтрации сообщений, записываемых в лог, по меткам, выставленным через новую директиву error_log_user_tag.
Из freenginx перенесён параметр rate для директивы error_log, позволяющий ограничить частоту логирования ошибок. Добавлена возможность вывода логов в формате JSON через выставление format=json в директиве error_log.
- В модуль rewrite добавлена директива goto для выполнения внутреннего редиректа на именованный блок "location" без изменения URI. Поддерживается условное выполнение внутри блока if.
- Реализована тёмная цветовая схема для встроенных страниц ошибок и списков AutoIndex.
- В модуле stream реализована поддержка сбора статистики с помощью модуля Metric, отдаваемой через API /status/stream/metric_zones/. Поддерживается агрегирование данных на разных стадиях обработки соединения в реальном времени с помощью переменных по заданным ключам.
Добавлен API /certificates/ с информацией о сертификатах, заданных в конфигурации или полученных ACME-клиентами.
- Из репозитория проекта nginx перенесены изменения, состояние которых соответствует версии nginx 1.31.2, включая модуль ngx_http_tunnel_module для туннелирования с использованием метода HTTP/1.1 CONNECT и возможность соединения с проксируемыми серверами по протоколу HTTP/2.
- Главная ссылка к новости
- OpenNews: Обновление nginx 1.31.2 с устранением уязвимостей, эксплуатируемых через HTTP/3, HTTP2 и gRPC
- OpenNews: Проект nginx опубликовал JavaScript-модуль njs 1.0.0
- OpenNews: Выпуск nginx 1.30.0 и форка FreeNginx 1.30.0
- OpenNews: Выпуск Angie 1.11.0, форка Nginx
|
|
|
| |
|
|
| · | 15.07 |
Выпуск среды рабочего стола COSMIC 1.3.0 (42 +10) |
| |
Компания System76, разрабатывающая Linux-дистрибутив Pop!_OS, опубликовала выпуск среды рабочего стола COSMIC 1.3.0. Пакеты с COSMIC 1.3.0 доступны в дистрибутиве Pop!_OS 24.04 и в ближайшее время ожидаются в Fedora, NixOS, Arch Linux, openSUSE, Aeyrin OS, Redox и CachyOS. Код написан на языке Rust и распространяется под лицензиями GPLv3 (приложения) и MPL-2.0 (библиотеки).
COSMIC развивается как универсальный проект, не привязанный к конкретному дистрибутиву и соответствующий спецификациям Freedesktop.
Для построения интерфейса в COSMIC задействована библиотека Iced, которая использует безопасные типы, модульную архитектуру и модель реактивного программирования, а также предлагает архитектуру, привычную для разработчиков, знакомых с языком декларативного построения интерфейсов Elm. Предоставляется несколько движков отрисовки, поддерживающих Vulkan, Metal, DX12, OpenGL 2.1+ и OpenGL ES 2.0+. Разработчикам предлагается готовый набор виджетов, возможность создавать асинхронные обработчики и использовать адаптивную компоновку элементов интерфейса в зависимости от размера окна и экрана.
Помимо использования языка Rust из особенностей COSMIC выделяются режимы гибридной мозаичной компоновки окон и стекового закрепления окон (группировка окон по аналогии со вкладками в браузере), которые могут включаться в привязке к виртуальным рабочим столам. Проектом также разрабатывается композитный сервер cosmic-comp на базе Wayland.
Основные изменения:
- Добавлен эффект прозрачности "Frosted glass", размывающий фоновое изображение, которое перекрывает окно, в стиле матового стекла по аналогии с эффектом Liquid Glass в macOS. Эффект реализован при помощи Wayland-протокола ext-background-effect, обеспечивающего стилизацию полупрозрачных частей Wayland-поверхностей.
- Апплет управления сетевым соединением и конфигуратор переведены с прямого обращения к NetworkManager на использование прослойки nmrs.
- Апплет переключения раскладок клавиатуры (input-sources) переведён на использование Wayland-протокола cosmic-keymap-unstable-v1, поддержка которого реализована в композитный менеджер cosmic-comp и фоновый процесс cosmic-settings-daemon.
- Для поддержки изображений в формате Avif в сервисе установки обоев рабочего стола cosmic-bg задействована библиотека libdav1d.
- В файловом менеджере добавлена возможность выбора подклассов при фильтрации содержимого по MIME-типам.
- В приложении cosmic-monitor, выводящем информацию о системе, запущенных процессах и потреблении ресурсов, добавлена поддержка сбора статистики для GPU Intel, реализован расчёт энергопотребления GPU AMD и Intel, обеспечен показ данных об энергопотреблении GPU и состоянии видеопамяти.
- В панели улучшено позиционирование всплывающих окон апплетов. Добавлены опции для скрытия панели и сохранения стиля при раскрытии окон на весь экран.
- В конфигуратор добавлена поддержка использования изображений в формате AVIF для обоев рабочего стола.
- В контекстном меню по умолчанию обеспечен показ дискретного GPU.
- Главная ссылка к новости
- OpenNews: Выпуск среды рабочего стола COSMIC 1.2.0
- OpenNews: Доступна среда рабочего стола COSMIC 1.1.0
- OpenNews: Выпуск дистрибутива Pop!_OS 24.04, поставляемого с рабочим столом COSMIC
- OpenNews: Первый стабильный релиз среды рабочего стола COSMIC
|
|
|
| |
|
|
| Следующая страница (раньше) >> |