The OpenNET Project / Index page

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

·12.02.2025 Для systemd развивается возможность загрузки системных образов по HTTP (139)
  Леннарт Поттеринг (Lennart Poettering) предложил включить в системный менеджер systemd изменение, позволяющие загружать систему с использованием образа корневой ФС, получаемого c внешнего хоста по протоколу HTTP. Изменение сводится к расширению systemd возможностью не только скачивать дисковый образ по HTTP на начальной стадии загрузки, но и распаковывать загруженный образ, связывать с блочным устройством в loopback-режиме, монтировать блочное устройство как /sysroot и загружать с него систему.

Поддержка скачивания дисковых образов во время загрузки системы при помощи systemd-import-generator уже включена в состав systemd 257. Остальная функциональности пока находится на стадии рабочего прототипа, требующего доработки. В реализации пока не поддерживается полный цикл загрузки, но в дальнейшем функциональность планируют довести до загрузки через UEFI HTTP Boot универсальных образов ядра UKI (Unified Kernel Image), объединяющих в одном файле загрузчик для UEFI (UEFI boot stub), образ ядра Linux и загружаемое в память системное окружение initrd.

URL для загрузки системного образа планируют вычислять на основании URL, заданного для EFI-образа в настройках UEFI HTTP Boot (например, при загрузке через EFI HTTP Boot "http://example.com/somedir/myimage.efi", присутствующий в UKI initrd-обработчик загрузит образ rootfs как "http://example.com/somedir/myimage.raw.xz"). В дальнейшем помимо HTTP в качестве транспорта для получения образа планируется добавить поддержку технологии NVMe-over-TCP, позволяющей обращаться к NVMe-накопителям по сети (NVM Express over Fabrics), используя протокол TCP.

Предполагается, что загрузка с образов, получаемых с внешнего хоста, упростит организацию тестирования современных неизменяемых ("immutable") операционных систем на реальном оборудовании. Разработчик может на своём компьютере сформировать образ с системным окружением утилитой mkosi и сделать его доступным через HTTP командой "mkosi -f serve". На компьютере, на котором требуется протестировать работу системы, достаточно включить в EFI загрузку по HTTP и добавить URL загружаемого образа командой:


   kernel-bootcfg --add-uri=http://192.168.47.11:8081/image.efi --title=testloop --boot-order=0

После чего можно просто перезагрузить компьютер и он загрузит типовой образ ядра UKI, который затем загрузит подготовленный разработчиком дисковый образ с корневой ФС. До отключения в EFI загрузки по HTTP каждая последующая перезагрузка компьютера будет приводить к загрузке свежего системного образа. При подобном тестировании никак не затрагиваются локальные диски.

  1. OpenNews: Леннарт Поттеринг предложил новую архитектуру верифицированной загрузки Linux
  2. OpenNews: Представлен systemd-homed для управления переносимыми домашними каталогами
  3. OpenNews: Леннарт Поттеринг предложил модернизировать разбивку загрузочных разделов
  4. OpenNews: перезагрузки
  5. OpenNews: Инициатива по сокращению зависимостей у libsystemd
Обсуждение (139) | Тип: К сведению |
·12.02.2025 Выпуск языка программирования Go 1.24 (180 +12)
  После шести месяцев разработки представлен релиз языка программирования Go 1.24, развиваемого компанией Google при участии сообщества. Язык сочетает высокую производительность, свойственную компилируемым языкам, с такими достоинствами скриптовых языков, как простота написания кода, высокая скорость разработки и защита от ошибок. Код проекта распространяется под лицензией BSD.

Синтаксис Go основан на привычных элементах языка Си с отдельными заимствованиями из языка Оберон. Язык достаточно лаконичен, но при этом код легко читается и воспринимается. Код на языке Go компилируется в обособленные бинарные исполняемые файлы, выполняемые нативно, без использования виртуальной машины (модули профилирования, отладки и другие подсистемы выявления проблем на этапе выполнения интегрируются в виде runtime-компонентов), что позволяет добиться производительности, сопоставимой с программами на языке Си.

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

Среди изменений в новом выпуске:

  • Обеспечена полная поддержка обобщённых псеводонимов типов (generic type alias) - псевдоним типа может быть параметризирован, как и впервые определяемый тип (при определении псевдонима типа теперь допускается указание параметров типа).
    
       type set[P comparable] = map[P]bool
    
  • Внесены оптимизации в runtime, которые привели к снижению нагрузки на процессор на 2-3% при проведении типовых тестов производительности. Среди внесённых оптимизаций: новая встроенная реализация операции "map", основанная на использовании хэш-таблиц Swiss Table; повышение эффективности использования памяти при размещении мелких объектов; новая реализация mutex, встроенная в runtime.
  • В команду "go" для Go-модулей добавлен механизм отслеживания исполняемых зависимостей (вспомогательных инструментов, написанных на языке Go и используемых при разработке модуля, например, linter-ов или утилит для форматирования кода). Определение утилит в файле go.mod производится через директиву "tool", для добавления которой в текущий модуль предложена команда "go get -tool" (например, "go get -tool golang.org/x/tools/cmd/stringer"). Для запуска утилиты, указанной в директиве "tool", добавлена команда "go tool имя_утилиты".
  • В команды "go build" и "go install" добавлена опция "-json" для вывода в формате JSON.
  • Добавлена переменная окружения GOAUTH для задания параметров аутентификации, необходимых для извлечения модулей, доступ к которым ограничен.
  • В команде "go vet" реализован новый анализатор тестов (test analyzer), выявляющий типовые ошибки при включении тестов, fuzzing-инструментов, утилит проверки производительности и примеров приложений.
  • В стандартную библиотеку включены реализации криптоалгоритмов, одобренных в стандарте безопасности FIPS 140-3.
  • В пакет testing добавлен метод B.Loop для выполнения тестов производительности. Применение "for b.Loop() { ... }" вместо обычных циклов позволяет исключить выполнение компилятором полной оптимизации тела цикла и вынести из цикла стадии настройки и очистки теста.
  • Добавлен тип os.Root, позволяющий изолировать операции с файловой системой заданным каталогом.
  • В runtime добавлен новый механизм финализации runtime.AddCleanup, более гибкий и эффективный чем runtime.SetFinalizer.
  • Добавлен пакет weak c реализацией слабых указателей, которые не владеют объектом, не увеличивают счётчик ссылок и не препятствуют освобождению объекта.
  • Добавлены пакеты: crypto/mlkem с реализацией криптоалгортимов ML-KEM-768 и ML-KEM-1024 (Kyber), стойких для подбора на квантовом компьютере; crypto/hkdf c реализацией функции формирования ключа на базе HMAC (RFC 5869); crypto/pbkdf2 c реализацией функции формирования ключа на базе пароля (PBKDF2, RFC 8018); crypto/sha3 c реализацией хэшей SHA-3.
  • Добавлен экспериментальный пакет testing/synctest с функциями для тестирования многопоточности.
  • Улучшена поддержка WebAssembly. Добавлена возможность сборки Go-приложений в форме библиотеки или обработчика WASI (WebAssembly System Interface). Реализована директива go:wasmexport для экспорта функций для использования в WebAssembly.
  • В утилиту objdump добавлена поддержка дизассемблирования для архитектур LoongArch (GOARCH=loong64), RISC-V (GOARCH=riscv64) и S390X (GOARCH=s390x).

  1. OpenNews: Выпуск языка программирования Go 1.23 с поддержкой телеметрии
  2. OpenNews: Лидер проекта Go принял решение покинуть пост
  3. OpenNews: В инструментарий для языка Go добавлена возможность отслеживания уязвимостей в модулях
  4. OpenNews: Оценка популярности открытых лицензий в зависимости от языка программирования
  5. OpenNews: Google намерен добавить телеметрию в инструментарий для языка Go
Обсуждение (180 +12) | Тип: Программы |
·11.02.2025 Опубликован свободный звуковой кодек FLAC 1.5 (152 +28)
  Сообщество Xiph.Org опубликовало обновление свободного звукового кодека FLAC 1.5.0, позволяющего сжимать звук без потери качества. FLAC использует только методы кодирования без отбрасывания данных (lossless), что гарантирует полную сохранность изначального качества звукового потока и его идентичность с эталонным вариантом, подвергнутым кодированию. При этом используемые методы сжатия без потерь позволяют уменьшить размер исходного звукового потока на 50-60%. FLAC является полностью свободным потоковым форматом, подразумевающим не только открытость библиотек с реализацией функций кодирования и декодирования, но и отсутствие ограничений по использованию спецификаций и созданию производных вариантов. Код библиотек распространяется под лицензией BSD.

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

  • Обеспечена работа кодировщика в многопоточном режиме. Многопоточный кодировщик можно использовать через libFLAC или через утилиту командной строки flac.
  • Добавлена возможность декодирования связанных (chained) Ogg-файлов, в которых в один файл упаковано несколько независимых аудиопотоков FLAC.
  • В libFLAC, libFLAC++ и metaflac реализована поддержка записи в новый файл при изменении метаданных, вместо перезаписи существующего файла. В libFLAC при изменении метаданных добавлена проверка указания символической ссылки в качестве входного файла и реализована защита от записи в подобные файлы при замене файла по месту.
  • Расширен API библиотек libFLAC и libFLAC++.
  • Адаптирована для многопоточной работы реализация режима LMS (Loose Mid-Side), раздельно кодирующего общую для стерео каналов информацию и разницу между левым и правым каналами.
  • Реализована поддержка компиляции в представление WebAssembly компилятором Emscripten.
  • Спецификация на формат FLAC зафиксирована в RFC 9639.
  • В утилите flac при перекодировании существующего FLAC-файла добавлена проверка совпадения MD5-хэшей. В режиме тестирования "flac -t" теперь разбираются все блоки метаданных и выводятся предупреждения при обнаружении метаданных ID3v1. Улучшена встроенная подсказка по доступным опциям. Документирован формат для хранения внешних метаданных, используемых утилитой flac.
  • Лицензия на документацию GFDL (GNU Free Documentation License) обновлена до версии 1.3 (была версия 1.2).

  1. OpenNews: Формат сжатия FLAC официально закреплён в RFC 9639
  2. OpenNews: Опубликован свободный звуковой кодек FLAC 1.4
  3. OpenNews: Предпринята попытка создания патентного пула для свободного звукового кодека Opus
  4. OpenNews: Разработчики кодека AV1 представили формат IAMF для объёмного звука
  5. OpenNews: Основатель QEMU и FFmpeg опубликовал звуковой кодек TSAC
Обсуждение (152 +28) | Тип: К сведению |
·11.02.2025 Релиз среды рабочего стола KDE Plasma 6.3 (162 +38)
  После четырёх месяцев разработки опубликован релиз среды рабочего стола KDE Plasma 6.3. Для оценки работы новых выпусков KDE можно воспользоваться сборками от проектов KDE Neon и openSUSE (Argon, основанный на openSUSE Leap, и Krypton, основанный на openSUSE Tumbleweed).

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

  • В композитном менеджере KWin переработана поддержка дробного масштабирования. Для сокращения размытости и повышения чёткости при увеличении масштаба обеспечена привязка к пиксельной сетке экрана.
  • Модернизирован эффект приближения, который при значительном изменении масштаба теперь показывает сетку для наглядного разделения отдельных пикселей.


  • В режиме ночной подсветки повышена точность отображения цветов, независимо от использования ICC-профилей. В KWin добавлен параметр для настройки точности отображения цветов.
  • Включена лёгкая прозрачность для виджетов, размещаемых на рабочем столе, и для всплывающих окон элементов панели.
  • В виджете, показывающем список открытых окон в панели (Task Manager), реализована возможность показа обычных текстовых всплывающих подсказок, в случае отключения в настройках показа эскизов содержимого окна.
  • Переработан интерфейс настройки графического планшета - содержимое страницы в конфигураторе разделено на три отдельные вкладки (Display, Pen и Pad). Реализована более привычная матрица калибровки графического планшета. При тестировании работы стилуса показана информация о наклоне и давлении. Добавлена возможность сопоставления поверхности графического планшета со всем экраном. Добавлены настройки диапазона давления стилуса, например, для игнорирования слишком лёгких или слишком сильных касаний. Добавлена опция, выделяющая цветом изменения настроек.


  • Добавлена настройка, автоматически отключающая тачпад при подсоединении мыши.
  • В настройках точки доступа обеспечена генерация случайного пароля для подключения к создаваемой беспроводной сети.
  • В главное меню добавлена новая категория "Help" и удалён раздел с настройками "Settings", который объединён с разделом "System".
  • В меню приложений Kickoff (Application Launcher) переключение категорий теперь производится только при явном щелчке мышью (как в боковых панелях). В настройки добавлена опция для возвращения старого поведения, при котором для переключения категории достаточно наведения курсора мыши.
  • В виджете "Часы" включено отображение всех предстоящих событий сегодняшнего дня, а не только первых пяти.
  • После выхода из режима "не беспокоить", обеспечен показ числа пропущенных уведомлений вместо показа разом всех накопившихся уведомлений.
  • При перемещении мышью файла из окна, частично перекрытого другими окнами, данное окно теперь не переносится на передний план, так как оно может закрыть собой содержимое, куда пользователь пытался переместить файл.
  • В контекстное меню, показываемое при щелчке правой кнопкой мыши на ярлыке с символической ссылкой, добавлена кнопка для показа файла, на который указывает ссылка.
  • В конфигуратор панели, вызываемый через контекстное меню при щелчке правой кнопкой мыши на панели, добавлена кнопка "Clone Panel", позволяющая клонировать выбранную панель, например, для дублирования нижней панели в верхней части экрана.

  • Предоставлена возможность отключения символьных пиктограмм в меню Kickoff, используя редактор меню (приложение KMenuEdit).
  • При попытке редактирования файлов с расширением ".desktop" через меню "Edit Application…" теперь запускается приложение KMenuEdit вместо диалога со свойствами файла.
  • В Widget Explorer предоставлена возможность удаления всех экземпляров виджета, включая те, что потеряны или привязаны к отключённым экранам.
  • При запуске приложений, которым предоставлены полномочия захвата устройств ввода и экрана, теперь выводится уведомление с подсказкой, как отключить захват и вернуть себе управление.
  • Сокращено потребление памяти при хранении большой истории работы с буфером обмена.
  • В конфигураторе на странице с настройками KWin предоставлена возможность временного отключения правил с переопределением атрибутов окон приложений (KWin Window Rules). Ранее для прекращения действия подобных правил их можно было только удалить.
  • В виджете "Power and Battery" реализован вывод уведомления о низком заряде аккумулятора беспроводных наушников, предоставляющих корректную информацию о состоянии аккумулятора.
  • В приложении System Monitor повышена точность отслеживания нагрузки на CPU, а также снижено потребление ресурсов при работе данного приложения. Добавлена поддержка сбора статистики о работе GPU во FreeBSD. В центре информации о системе (Info Center) предоставлены дополнительные сведения о всех GPU и показаны счётчики циклов зарядки аккумуляторов.
  • Упрощено отслеживание состояния принтеров - в виджете для каждого принтера теперь показывается очередь печати и индикатор, указывающий через какой принтер в данный момент осуществляется вывод на печать.
  • Добавлен сервис, определяющий когда ядро принудительно завершает приложение из-за нехватки памяти в системе, и выводящий соответствующее уведомление.
  • В менеджере приложений Discover разбивка на больших экранах ограничена двумя столбцами. Обеспечено выделение цветом изменений полномочий в новых версиях программ. Специальными индикаторами выделены пакеты, подготовленные разработчиками основного проекта или верифицированные уполномоченным лицом.
  • В KRunner добавлена возможность переключения между категориями при помощи комбинаций клавиш Page Up/Page Down и Ctrl+Up/Ctrl+Down. В полях поиска на базе KRunner доступна возможность преобразования единиц измерения длины.

  1. OpenNews: Превращение сборки Fedora c KDE в базовую редакцию дистрибутива
  2. OpenNews: Выпуск KDE Gear 24.12, набора приложений от проекта KDE
  3. OpenNews: Проект KDE развивает собственный дистрибутив KDE Linux
  4. OpenNews: Релиз среды рабочего стола KDE Plasma 6.2
  5. OpenNews: Релиз десктоп-окружения Trinity R14.1.3, продолжающего развитие KDE 3.5
Обсуждение (162 +38) | Тип: Программы |
·10.02.2025 Опубликована распределённая СУБД Citus 13.0 (53 +8)
  Компания Citus Data, принадлежащая Microsoft, опубликовала распределённую СУБД Citus 13.0, реализованную в форме расширения к PostgreSQL 17. Citus обеспечивает горизонтальное масштабирование PostgreSQL в кластере на базе типового оборудования и позволяет разносить данные по узлам при помощи шардинга (sharding) с настройкой разделения на уровне столбцов и схемы хранения. Для приложений кластер Citus выглядит как один большой сервер PostgreSQL, объединяющий ресурсы образующих его узлов. Код написан на языке Си и распространяется под лицензией AGPLv3.

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

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

В качестве типовых примеров использования Citus отмечается выполнение аналитических запросов и обработка больших массивов данных в форме временного ряда (например, логи или опрос состояния датчиков). Citus также подходит для модернизации имеющейся инфраструктуры на базе одиночного сервера PostgreSQL, производительности и накопителей на котором перестало хватать из-за увеличения нагрузки или объёма поступающих данных. При помощи инструментария Patroni можно создавать отказоустойчивые конфигурации с реплицированными запасными узлами, способными в случае сбоя занять место основных узлов.

Изменения в выпуске Citus 13.0:

  • Переход на использование ветки PostgreSQL 17.
  • Возможность использования в распределённых запросах функции JSON_TABLE() для преобразования данных из формата JSON в реляционное представление, с которым можно работать как с обычными таблицами PostgreSQL.
  • Поддержка синтаксиса "MERGE ... WHEN NOT MATCHED BY SOURCE".
  • Возможность определения метода доступа для распределённых секционированных таблиц при помощи выражения "CREATE TABLE ... USING", а также изменения метода доступа через "ALTER TABLE ... SET ACCESS METHOD".
  • Добавлена поддержка указания в распределённых секционированных таблицах автоматически генерируемых столбцов идентификации.
  • Разрешено применение ограничений-исключений в распределённых секционированных таблицах.
  • Решены проблемы с синхронизацией ролей между узлами.
  • Улучшено распределение данных для шардинга при добавлении новых узлов в кластер.
  • В команду "EXPLAIN" добавлены опции "MEMORY" и "SERIALIZE", при помощи которых можно определить размер использованной памяти и время, потраченное на преобразование данных для передачи по сети.

  1. OpenNews: Microsoft поглотил компанию Citus, развивающую СУБД на базе PostgreSQL
  2. OpenNews: Доступны IvorySQL 4.0 и SynchDB 1.0, надстройки к PostgreSQL для взаимодействия с другими СУБД
  3. OpenNews: Проект Cloudberry, развивающий форк СУБД Greenplum, принят в инкубатор Apache
  4. OpenNews: Microsoft открыл код СУБД DocumentDB, основанной на PostgreSQL
  5. OpenNews: Релиз открытой СУБД VoltDB 3.0, развиваемой одним из основателей Ingres и PostgreSQL
Обсуждение (53 +8) | Тип: Программы |
·09.02.2025 Первый выпуск платформы виртуализации SEAPATH (82 +18)
  После пяти лет разработки организация Linux Foundation представила релиз платформы виртуализации SEAPATH 1.0, разработанной с учётом требований к информационным системам для цифровых подстанций в энергосетях. Платформа учитывает специфику энергосетей, но может применяться и в других областях, в которых требуется высокая надёжность. Код платформы опубликован под лицензией Apache 2.0. Выпуск SEAPATH 1.0 признан готовым для промышленного применения и использования в критически важных системах (mission-critical). Платформа уже задействована в рабочей инфраструктуре энергетической компании RTE и проходит тестовое внедрение в компаниях GE Vernova, Alliander, ABB, Red Hat и Enedis. В разработке платформы принимают участие компании RTE, Alliander, GE Vernova, Savoir-faire Linux, Welotec и Red Hat.

Для мониторинга, автоматизации, сопровождения и управления распределением энергопотоков на цифровых подстанциях в современных энергосетях задействованы специализированные приложения от различных поставщиков, которые предлагается запускать в отдельных изолированных виртуальных машинах. SEAPATH реализует платформу для организации работы подобных виртуальных машин, виртуализированные приложения (vPAC - Virtualized Protection, Automation and Control) в которых могут выполняться в режиме реального времени.

Для развёртывания узлов с хост-окружением SEAPATH предоставляется два дистрибутива на базе Debian GNU/Linux 12 и Yocto Scarthgap. Платформа не привязана к какому-то определённому оборудованию, не зависит от отдельных поставщиков и может использоваться на различных типах серверов и аппаратных архитектур. Допускается выполнение приложений для электроподстанций, поддерживающих стандарт МЭК-61850.

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

Платформа построена с использованием уже существующих открытых проектов, для проверки надёжности которых подготовлен тестовый набор, включающий более 700 unit-тестов. Виртуализация реализована с использованием гипервизора KVM и ядра Linux, собранного с опцией PREEMPT_RT для работы в режиме реального времени. В качестве распределённого хранилища, охватывающего весь кластер, используется Ceph. Для виртуализации устройств применяется QEMU, а для виртуализации сети - Open vSwitch. Для управления виртуальными окружениями задействован инструментарий Libvirt. Для управления ресурсами в кластере, обеспечения отказоустойчивости и организации взаимодействия между узлами применяются Pacemaker и Corosync. Централизованное управление инфраструктурой и оркестровка виртуальных машин реализована при помощи Ansible.

  1. OpenNews: Открыт код реализации протокола DNP3, который будет развиваться сообществом Total Grid
  2. OpenNews: Компания Siemens выпустила гипервизор Jailhouse 0.12
  3. OpenNews: Linux Foundation развивает новый гипервизор ACRN для встраиваемых устройств
  4. OpenNews: Microsoft открыл код гипервизора OpenVMM и платформы паравиртуализации OpenHCL
  5. OpenNews: Для процессоров MIPS представлен первый открытый гипервизор
Обсуждение (82 +18) | Тип: Программы |
·08.02.2025 Проект TuxTape для развёртывания инфраструктуры live-патчей к ядру Linux (64 +12)
  Страховая компания GEICO опубликовала предварительный выпуск инструментария TuxTape, позволяющего развернуть собственную инфраструктуру для создания, сборки и доставки live-патчей для ядра Linux. Live-патчи позволяет применять исправления к ядру Linux на лету, без перезагрузки и остановки системы. Код проекта написан на языке Rust и распространяется под лицензией Apache 2.0.

Live-патчи с устранением уязвимостей предоставляют для своих дистрибутивов такие компании, как Red Hat, Oracle, Canonical и SUSE, но открытым у них является лишь низкоуровневый инструментарий для работы с патчами, а сами патчи формируются за закрытыми дверями. Дистрибутивы Gentoo и Debian пытались развивать открытые проекты elivepatch и linux-livepatching, но первый уже 6 лет находится в заброшенном состоянии, а второй затормозил на стадии создания тестового прототипа.

TuxTape нацелен на организацию работы собственной системы для создания и доставки live-патчей, не зависящей от сторонних поставщиков и адаптируемой для любых ядер Linux, а не только для пакетов с ядром конкретных дистрибутивов. TuxTape может формировать live-патчи, совместимые с инструментарием kpatch, разработанным компанией Red Hat (помимо kpatch существуют похожие инструменты: kGraft от SUSE, Ksplice от Oracle и универсальный livepatch). Патчи формируются в виде загружаемых модулей ядра, которые заменяют функции в ядре, используя подсистему ftrace для перенаправления на новые функции, включённые в модуль.

TuxTape может отслеживать информацию об исправлении уязвимостей в ядре Linux, публикуемую в списке рассылки linux-cve-announce и в Git-репозитории, ранжировать уязвимости по степени опасности, определять применимость к обслуживаемым ядрам Linux и генерировать live-патчи на основе обычных патчей к LTS-веткам ядра. Применимость исходных патчей оценивается через профилирование сборок ядра. Патчи с не затрагивающими целевое ядро уязвимостями игнорируются.

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

Разработка находится на стадии экспериментального прототипа. Для начального тестирована предложены: tuxtape-cve-parser для разбора информации об уязвимостях и построения БД с патчами; tuxtape-server c реализацией интерфейса gRPC для сервисов генерирующих патчи; tuxtape-kernel-builder для сборки ядра в заданной конфигурации и формирования профиля сборки; tuxtape-dashboard - консольный интерфейс для рецензирования и создания live-патчей на основе исходных патчей, полученных из tuxtape-server.

  1. OpenNews: Компания Red Hat открыла код kpatch для организации обновления на лету ядра Linux
  2. OpenNews: Компания SUSE открыла код kGraft, системы для обновления ядра Linux без перезагрузки
  3. OpenNews: Для ядра Linux предложен livepatch, механизм обновления без перезагрузки
  4. OpenNews: Red Hat и SUSE объединили усилия в продвижении механизмов обновления ядра без перезагрузки
  5. OpenNews: Oracle поглотил компанию Ksplice, развивающую технологию обновления Linux-ядра без перезагрузки
Обсуждение (64 +12) | Тип: Программы |
·08.02.2025 Выпуск компилятора ISPC 1.26, развиваемого Intel для языка Си с расширениями SPMD (31 +9)
  Компания Intel опубликовала компилятор ISPC 1.26 (Implicit SPMD Program Compiler), предназначенный для сборки кода на языке Си с расширениями параллельного программирования SPMD (Single Program, Multiple Data), позволяющими добиться параллельного выполнения нескольких экземпляров одной программы с разными наборами входных данных. Код проекта написан на языке С++ и распространяется под лицензией BSD. Поддерживается работа в Linux, Windows, macOS и FreeBSD.

Си-программы с расширениями SPMD компилируются для выполнения на вычислительных блоках SIMD, предоставляемых CPU и GPU, что позволяет задействовать механизмы векторизации SIMD без низкоуровневых оптимизаций и явного применения в коде SIMD-инструкций. Для написания распараллеливаемых функций используется привычный синтаксис и идиомы языка Си - SPMD-функции напрямую взаимодействуют с функциями и структурами, написанными на C/C++. Для отладки программ могут применяться существующие отладчики.

В качестве бэкенда для генерации кода и оптимизации в ISPC используется инфраструктура LLVM. Поддерживаются векторные инструкции x86 (SSE2, SSE4, AVX, AVX2, AVX512) и ARM (NEON), а также вынос вычислений на сторону GPU (Intel Gen9 и Xe). На архитектурах с векторными блоками SSE, обрабатывающими по 4 элемента за раз, применение ISPC даёт возможность добиться ускорения выполнения программы в 3 или более раз, а на архитектурах с векторными блоками AVX, обрабатывающими по 8 элементов за раз, ускорение может достигать 5-6 раз. При этом помимо размера векторного блока, масштабирование также обеспечивается за счёт выполнения на разных процессорных ядрах.

Основные новшества, добавленные в версии ISPC 1.26:

  • Улучшена поддержка архитектуры ARM:
    • Изменено поведение флага "--arch=arm", который теперь связан с архитектурой ARMv8 (32-bit), а не ARMv7 (для ARMv8 в 64-разрядном режиме как и раньше следует использовать флаг "--arch=aarch64").
    • Прекращена поддержка процессоров ARMv7 Cortex-a9 и Cortex-a15.
    • Добавлена поддержка процессоров Cortex-a55, Cortex-a78, Cortex-a510, Cortex-a520, а также новых ARM-процессоров Apple.
    • Добавлены новые сборочные цели: neon-i16x16 и neon-i8x32.
    • Добавлена поддержка операций на базе векторных инструкций ARM SDOT и UDOT.
    • Проведена оптимизация, производительность для ARMv8 в среднем увеличилась на 13%.
  • Добавлен новый вид сборочных целей - "generic", позволивший оптимизировать внутреннюю архитектуру компилятора и упростить добавление новых сборочных целей. Идея в том, чтобы поддерживать базовые цели для специфичных аппаратных возможностей, поверх которых легко можно создавать цели с частными оптимизациями. На использование generic-целей переведена поддержка архитектуры ARM.
  • В генераторе кода проведена корректировка развёртывания циклов и функций для сокращения размера результирующего кода в режиме оптимизации "-O1". Улучшена генерация кода для встроенных функций count_leading_zeros и count_trailing_zeros, а также при возвращении структур из функций и при сохранении или загрузки данных с типами int8/int16.
  • Расширена поддержка встроенных функций (intrinsics) LLVM, активируемая при указании флага "--enable-llvm-intrinsics".
  • Инструментарий LLVM обновлён до версии 18.1.8 с патчами. Добавлен макрос для определения используемой в ISPC версии LLVM.
  • Разрешено применение атрибута "__attribute__((deprecated))" к функциям для вывода предупреждения при вызове функции.
  • Удалена сборочная цель avx512knl-x16 (KNL).
  • Добавлена опция "--darwin-version-min" для указания минимально поддерживаемой версии целевой платформы для macOS и iOS.

  1. OpenNews: Выпуск компилятора ISPC 1.25, развиваемого Intel для языка Си с расширениями SPMD
  2. OpenNews: Доступен Vcc, C/C++ компилятор для Vulkan
  3. OpenNews: Cheerp 3.0, компилятор C/C++ в JavaScript, переведён на лицензии Apache 2.0 и LLVM
  4. OpenNews: Intel представил nGraph, компилятор для систем машинного обучения
  5. OpenNews: Linux ядро адаптировано для сборки компилятором Intel C/C++
Обсуждение (31 +9) | Тип: Программы |
·07.02.2025 Доступен офисный пакет ONLYOFFICE 8.3 (158 +15)
  Опубликован выпуск ONLYOFFICE DocumentServer 8.3 с реализацией сервера для online-редакторов ONLYOFFICE и организации совместной работы. Редакторы можно использовать для работы с текстовыми документами, таблицами и презентациями. Код проекта распространяется под свободной лицензией AGPLv3.

Одновременно сформирован выпуск продукта ONLYOFFICE DesktopEditors 8.3, построенного на единой кодовой базе с online-редакторами. Десктоп-редакторы оформлены в виде приложений для рабочего стола, которые написаны на JavaScript с использованием web-технологий, но объединяют в одном наборе клиентские и серверные компоненты, оформленные для самодостаточного использования на локальной системе пользователя, без обращения к внешнему сервису. Для совместной работы на своих мощностях также можно использовать платформу Nextcloud Hub, в которой обеспечена полная интеграция с ONLYOFFICE. Готовые сборки сформированы для Linux, Windows и macOS.

В ONLYOFFICE заявлена полная совместимость с форматами MS Office и OpenDocument. Среди поддерживаемых форматов: DOC, DOCX, ODT, RTF, TXT, PDF, HTML, EPUB, XPS, DjVu, XLS, XLSX, ODS, CSV, PPT, PPTX, ODP. Предусмотрена возможность расширения функциональности редакторов через плагины, например, доступны плагины для создания шаблонов и добавления видео с YouTube. Готовые сборки сформированы для Windows и Linux (deb- и rpm-пакеты).

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

  • Добавлена поддержка файлов в форматах ".hwp" и ".hwpx", применяемых в пакете Hancom Office, а также форматов ".pages", ".key" (keynote) и ".numbers", используемых в Apple iWork. Указанные форматы теперь можно просмотреть в ONLYOFFICE. При необходимости сохранить изменения содержимое конвертируется в формат OOXML (DOCX, PPTX, XLSX).
  • Изменения в редакторе PDF-документов:
    • Добавлена поддержка выставления печатей, которые можно использовать для визирования или согласования документов, добавляя соответствующие метки.
    • В сеансе совместной работы над документом нескольких участников предоставлена возможность отмены внесённых изменений (undo).
    • Добавлена возможность выделения сразу нескольких страниц в боковой панели, например, для их удаления или переноса. Для выделения диапазона страниц следует использовать клавишу Shift, для добавления или удаления из числа выделенных - Ctrl.
    • Добавлена контекстная панель для редактирования аннотаций, позволяющая быстро изменить цвет, добавить комментарий или удалить аннотацию.
    • Добавлена возможность настройки уровня прозрачности при добавлении или редактировании аннотаций.
  • Изменения в табличном процессоре:
    • Реализована возможность отката действий (undo) при совместной работе над электронной таблицей нескольких участников.
    • Добавлена поддержка автоматического обновления данных, получаемых из привязанного внешнего источника.
    • Добавлена поддержка автозаполнения дней, дней недели, месяцев и лет в ячейках.
    • Добавлена поддержка открытия и сохранения вычисленных значений в сводных таблицах (Pivot Table).
    • В интерфейс выбора функций добавлена подсказка с описанием аргументов функций.
    • В диалоге открытия данных в формате CSV реализовано автоматическое определение символа-разделителя на основе содержимого текстового файла.
    • Добавлены опции для управления показом горизонтальных и вертикальных полос прокрутки.
  • Изменения в редакторе презентаций:
    • Добавлена новая вкладка "Design", предоставляющая инструменты для применения стилей, изменения цветовой схемы и корректировки размера слайда.
    • Предоставлена возможность рисования поверх слайда при нахождении в режиме слайд-шоу или презентации при помощи инструментов "ручка" и "маркер".
    • В панель быстрого доступа добавлена опция для показа с самого начала.
    • В режим слайдшоу добавлены кнопки для изменения режима курсора (перемещение/выделение).
  • Добавлено контекстное меню для управления окнами и вкладками, предоставляющее такие операции как закрытие, закрепление, перемещение вкладки в начало/конец, преобразование вкладки в окно и наоборот.
  • Во все редакторы добавлена операция слияния фигур (Merge shapes), поддерживающая режимы объединения, комбинирования, дробления, исключения и пересечения.
  • В редакторе документов расширены возможности, связанные с поддержкой языков, в которых набор текста производится справа-налево (RTL).
  • Добавлена поддержка объединения или сравнения текстовых документов на уровне слов или отдельных символов.
  • Улучшена работа с защищёнными текстовыми документами.
  • В правую панель и контекстное меню добавлена операция для сброса кадрирования изображений.

  1. OpenNews: Доступен офисный пакет ONLYOFFICE 8.2
  2. OpenNews: Четыре уязвимости в Apache OpenOffice
  3. OpenNews: Выпуск офисного пакета LibreOffice 25.2
Обсуждение (158 +15) | Тип: Программы |
·07.02.2025 Кризис в продвижении Rust в ядро из-за опасений усложнения сопровождения (648 +76)
  Кристоф Хелвиг (Christoph Hellwig), мэйнтейнер подсистем DMA, KVM, Slab Allocator и архитектуры PowerPC в ядре Linux, в своё время входивший в управляющий технический комитет организации Linux Foundation и выступавший истцом в связанном с GPL судебном разбирательстве с VMware, отказался подтверждать патчи, связанные с поддержкой разработки драйверов на языке Rust. Предложенные патчи добавляли обвязки над несколькими функциями подсистемы DMA, позволяющие использовать DMA в драйверах на языке Rust.

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

Разработчики патчей указали, что они возьмут на себя всю работу по сопровождению кода на Rust, готовы сопровождать эти патчи самостоятельно и вынесли обвязки в отдельный подкаталог (rust/kernel/dma.rs). В ответ Кристоф наложил вето ("Nacked-by") на приём связанных с Rust патчей и указал, что ему не нужен ещё один сопровождающий. Кристоф заявил, что если разработчики обвязок хотят добиться невозможности сопровождения Linux из-за смешивания нескольких языков в одной кодовой базе, им следует делать это в своём драйвере, а не распространять эту раковую опухоль на основные подсистемы ядра.

При этом Кристоф уточнил, что не имеет ничего против языка Rust и считает его одним из лучших новых языков, но он против смешивания кода на разных языках. По словам Кристофа он за создание новых проектов на Rust, но против примешивания Rust к большим кодовым базам на Си, так как такое смешивание сильно снижает удобство сопровождения ядра, как интегрированного проекта.

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

Ситуация с усложнением сопровождения не умозрительная. К дискуссии подключился Джейсон Ганторп (Jason Gunthorpe), мэйнтейнер TPM, VFIO и Infiniband из компании NVIDIA, который привёл пример отклонения Линусом Торвальдсом pull-запроса с изменениями в подсистеме управления памятью, так как данное изменение приводило к сбою при попытке сборки ядра с включением поддержки Rust. Сбой возник из-за того, что сопровождающие код на Rust не добавили необходимые изменения в генератор обвязок (bindgen). Таким образом, сопровождающие подсистему управления памятью при продвижении изменения, полностью корректного с точки зрения кода на Си и ядра в целом, оказались зависимы от опционального стороннего кода в ядре, за который отвечают другие люди.

Отказ принимать код обвязки над вызовами DMA поставил разработчиков проекта Rust for Linux в тупик, так как без подобных обвязок разработка полноценных драйверов на языке Rust будет затруднена. Гектор Мартин (Hector Martin), мэйнтейнер кода для поддержи ARM-чипов Apple и лидер проекта Asahi Linux, в качестве варианта разрешения конфликта предложил добиться принятия обвязки напрямую через Линуса Торвальдса, в обход сопровождающего подсистему DMA. Если Линус согласится на подобное нарушение субординации и сложившейся практики, это может привести к кризису управления разработкой ядра, а если откажется - остановит продвижение Rust в ядро.

Как вариант, Гектор упомянул привлечение Кристофа к ответственности за нарушение кодекса поведения из-за комментария, в котором Кристоф сравнил Rust с раковой опухолью. Кроме того, Гектор написал, что устал от всех бюрократических проволочек, не готов просто довериться сложившимся процессам и намекнул на привлечение внимания к проблеме в социальных сетях. Дэйв Эйрли (Dave Airlie), мэйнтейнер подсистемы DRM, посоветовал не раздувать конфликт и понять, что токсичное поведение недопустимо с обеих сторон, независимо от того, прав или не прав участник дискуссии.

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

В ответ Гектор отправил запрос на удаление себя из числа сопровождающих платформу ARM/Apple, так как он потерял веру в применяемый в ядре процесс разработки и подход к управлению сообществом. Он также заявил, что разработка платформы ARM/Apple будет продолжена вне основного ядра Linux. У платформы ARM/Apple в ядре остался ещё один мэйнтейнер - Свен Питер (Sven Peter), который намерен продолжить поддержание платформы в ядре своими силами.

  1. OpenNews: Предложение по блокировке драйверов-прослоек, предоставляющих доступ к GPL-вызовам ядра Linux
  2. OpenNews: Автора BcacheFS временно отстранили от разработки ядра Linux из-за нарушения кодекса поведения
  3. OpenNews: Продвижение кода на языке Rust в ядро Linux происходит медленнее, чем ожидалось
  4. OpenNews: Препятствия при продвижении Rust в ядро Linux
  5. OpenNews: Проект Asterinas развивает ядро на языке Rust, совместимое с Linux
Обсуждение (648 +76) | Тип: Тема для размышления | Интересно
·06.02.2025 Началось производство чипов на базе открытой платформы OpenTitan (99 +19)
  Компания Google после шести лет работы над проектом объявила о начале производства чипа, построенного на базе открытой платформы OpenTitan. Чип выпускается компанией Nuvoton и отмечен как первая реализация OpenTitan, готовая для использования в рабочих проектах. В настоящее время для тестирования выпущена пробная партия, а запуск массового производства намечен на весну этого года.

OpenTitan представляет собой платформу для создания заслуживающих доверия аппаратных компонентов (RoT, Root of Trust), применяемых там, где нужно гарантировать целостное состояние аппаратных и программных элементов системы. Например, для того, чтобы удостоверить, что критически важные части системы не были подменены и основываются на проверенном и авторизированном производителем коде. Проект предоставляет готовый, проверенный и надёжный каркас, позволяющий повысить доверие к создаваемым решениям и снизить издержки при разработке специализированных чипов для обеспечения безопасности.

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

OpenTitan включает логические блоки, востребованные в RoT-чипах, такие как открытый микропроцессор на базе архитектуры RISC-V (RV32IMCB Ibex), криптографические сопроцессоры, аппаратный генератор случайных чисел, менеджер ключей с поддержкой DICE, механизм защищённого хранения данных в постоянной и оперативной памяти, технологии защиты, блоки ввода/вывода и компоненты безопасной загрузки. Устройство также предоставляет блоки с реализацией типовых алгоритмов шифрования, таких как AES и HMAC-SHA256, и ускоритель математических операций, применяемых в алгоритмах для работы с цифровыми подписями на базе открытых ключей.

Проект основан компанией Google, но передан некоммерческой организации lowRISC, после чего к его разработке присоединились такие компании, как Western Digital, Seagate, Nuvoton Technology, Winbond, Rivos, zeroRISC и G+D Mobile Security. Связанный с проектом код и спецификации аппаратных компонентов опубликованы под лицензией Apache 2.0. В основу решений, применяемых в OpenTitan, заложены технологии уже используемые в криптографических USB-токенах Google Titan и TPM-чипах для обеспечения верифицированной загрузки, устанавливаемых на серверах в инфраструктуре Google, а также на устройствах Chromebook и Pixel.

В отличие от существующих реализаций Root of Trust, OpenTitan развивается в соответствии с концепцией "безопасность через прозрачность", подразумевающей доступность кода и схем, а также применение полностью открытого процесса разработки, не привязанного к конкретным поставщикам и производителям чипов. OpenTitan стал первой выпущенной на рынок открытой реализацией Root of Trust, в которой имеется поддержка постквантового механизма безопасной загрузки, основанного на использовании алгоритма формирования цифровых подписей SLH-DSA (Sphincs+), стойкого от подбора на квантовых компьютерах.

  1. OpenNews: Google представил проект Open Se Cura для создания защищённых программно-аппаратных систем
  2. OpenNews: Представлена платформа Precursor для создания свободных мобильных устройств
  3. OpenNews: Первая открытая реализация анклава для аппаратно изолированных окружений
  4. OpenNews: Google открыл код защищённой операционной системы KataOS
  5. OpenNews: Проект TFC развивает параноидально защищённую систему обмена сообщениями
Обсуждение (99 +19) | Тип: К сведению |
·06.02.2025 Уязвимости в беспроводных маршрутизаторах Zyxel, D-Link и Netgear (43 +21)
  Несколько уязвимостей в беспроводных маршрутизаторах Zyxel, D-Link и Netgear, позволяющих получить удалённый доступ к устройству без аутентификации.
  • В беспроводных маршрутизаторах Zyxel выявлено (CVE-2025-0890) наличие учётных записей с предопределёнными паролями, позволяющих получить доступ к устройству. Анализ прошивки показал, что в файле /etc/default.cfg предопределены учётные записи supervisor:zyad1234, admin:1234 и zyuser:1234. Кроме того, на устройствах выявлены уязвимости (CVE-2024-40890, CVE-2024-40891), позволяющие осуществить подстановку системных команд при отправке специально оформленного POST-запроса к CGI-скриптам в web-интерфейсе или при запуске операций, предоставляемых через telnet. Производитель предоставляет через telnet ограниченный доступ, позволяющий выполнять лишь отдельные операции, такие как ping и tftp.

    Выставленные ограничения оказалось можно обойти и получить полный shell-доступ с правами root, выполнив, например, "tftp -h || sh". Комбинация указанных проблем, даёт возможность удалённому неаутентифицированному атакующему подключиться к устройству по протоколу telnet или через web-интерфейс и выполнить свой код с правами root. В сети уже зафиксировано использования данных уязвимостей для установки на устройства вредоносного ПО Mirai.

    Уязвимость затрагивает модели устройств VMG1312-B10*, VMG3313-B10A, VMG3926-B10B, VMG4325-B10A, VMG4380-B10A, VMG8324-B10A, VMG8924-B10A, SBG3300 и SBG3500. Компания Zyxel сообщила, что не собирается выпускать обновление прошивки для устранения выявленных проблем, так как время сопровождения данных устройств истекло. Кроме того, утверждается, что доступ к web-интерфейсу и telnet на проблемных устройствах по умолчанию отключён для обращений из внешней сети. При этом выявившие уязвимость исследователи смогли при помощи сервисов FOFA и Censys найти около 1500 уязвимых устройств, принимающих запросы через telnet из внешней сети.

  • В беспроводных маршрутизаторах D-Link серии DSL-3788 выявлена уязвимость (CVE-2024-57440), позволяющая без прохождения аутентификации удалённо выполнить код на устройстве. Для совершения атаки достаточно отправить на запрос к CGI-скрипту webproc с указанием в поле sessionid слишком большого значения, приводящего к переполнению буфера. Проблема вызвана отсутствием проверки размера входных данных в функции COMM_MakeCustomMsg. Компания D-Link устранила проблему в обновлении прошивки 1.01R1B037
  • В беспроводных маршрутизаторах Netgear выявлены две уязвимости. Первая уязвимость затрагивает модели Netgear XR1000, XR1000v2 и XR500, и позволяет без прохождения аутентификации удалённо выполнить код на устройстве. Вторая уязвимость проявляется в моделях Netgear WAX206, WAX220 и WAX214v2, и даёт возможность получить доступ к устройству в обход процесса аутентификации. Детали об эксплуатации уязвимостей пока не раскрываются. Уязвимости устранены в февральских обновлениях прошивок.

    1. OpenNews: Бэкдор в маршрутизаторах D-Link, включающий telnet-доступ
    2. OpenNews: Уязвимость в Zyxel LTE3301-M209, допускающая доступ через предопределённый пароль
    3. OpenNews: Уязвимости в межсетевых экранах Zyxel, позволяющие выполнить код на устройстве
    4. OpenNews: Уязвимости в маршрутизаторах Netgear и D-Link, приводящие к удалённому выполнению кода
    5. OpenNews: Уязвимости в сетевых устройствах Juniper, ASUS, D-Link, Tenda и NETGEAR
Обсуждение (43 +21) | Тип: Проблемы безопасности |
·06.02.2025 Выпуск офисного пакета LibreOffice 25.2 (156 +28)
  Организация The Document Foundation опубликовала релиз офисного пакета LibreOffice 25.2. Готовые установочные пакеты подготовлены для различных дистрибутивов Linux, Windows и macOS. В подготовке выпуска приняли участие 176 разработчиков. 47% изменений внесены 50 сотрудниками курирующих проект компаний, таких как Collabora и Allotropia, 31% - семью работниками организации The Document Foundation, а 22% изменений - 119 независимыми энтузиастами.

Выпуск LibreOffice 25.2 снабжён меткой "Community", будет поддерживаться энтузиастами и не нацелен на применение на предприятиях. LibreOffice Community без ограничений доступен бесплатно всем без исключения, в том числе корпоративным пользователям. Для предприятий, нуждающихся в дополнительном сервисе, отдельно развиваются продукты семейства LibreOffice Enterprise, для которых партнёрскими компаниями будет предоставляться полноценная поддержка, возможность получать обновления длительное время (LTS) и дополнительные функции, такие как SLA (Service Level Agreements).

Наиболее заметные изменения:

  • Добавлена поддержка чтения и записи документов в формате OpenDocument 1.4 (ODF), который пока не стандартизирован и находится на стадии тестирования первого чернового варианта спецификации.
  • Предоставлена возможность настройки темы оформления приложения, независимо от темы оформления среды рабочего стола. Для изменения параметров темы оформления добавлена вкладка "Tools ▸ Options ▸ LibreOffice ▸ Appearance", в которой можно на свой вкус поменять цвета, в том числе переопределить цвета, заимствованные из системной темы, а также выбрать цветовой режим (тёмный, светлый или соответствующий режиму системной темы).
  • Добавлена поддержка размещения произвольного изображения в качестве фона окна с документом.
  • Для изменения настроек оформления предложено использовать расширения с темами, которые можно установить, нажав на кнопку "Больше тем" на странице выбора темы.
  • Реализована возможность отображения страниц помощи в тёмном режиме.
  • Предложен новый экспериментальный диалог для управления макросами (Tools ▸ Macros ▸ Macro Manager), в котором объединены пять ранее доступных диалогов, связанных с макросами.
  • Добавлена возможность показа в списке недавно используемых файлов ("File ▸ Recent Documents") только файлов, связанных с текущим модулем (например, только электронных таблиц в Calc). Для включения фильтра предложена опция "[x] Current Module Only" ("[x] Только текущий модуль").
  • В секцию со свойствами в боковой панели добавлены настройки автоматического переноса конца слов на другую строку.
  • Добавлена возможность автоматического подписания документов цифровой подписью, после определения сертификата по умолчанию.
  • Предоставлена возможность назначения клавиатурных комбинаций для активации команд установки цвета текста и фона.
  • Добавлена поддержка вставки из буфера обмена отформатированного текста, в котором для зачёркивания использованы HTML-теги <strike>, <s> или <del>.
  • Добавлена функция для удаления всей персональной информации, связанной с документом, такой как имена авторов, время создания и редактирования, название принтера, настройки, используемый шаблон, имена авторов комментариев и отслеживаемых изменений.
  • Изменения в Writer:
    • Обновлены значки, показываемые перед элементами в неупорядоченных списках.
    • Границы объектов теперь включаются через меню "View ▸ Boundaries" ("Вид ▸ Границы"), независимо от настроек значков форматирования, и настраиваются в секции "Tools ▸ Options ▸ Writer ▸ Formatting Aids" ("Сервис ▸ Параметры ▸ Writer ▸ Знаки форматирования").
    • Добавлена подсказка с числом слов и символов в разделе, показываемая при наведении курсора мыши на заголовок раздела в панели Навигатор.
    • В системе отслеживания изменений улучшено управление большим числом изменений в крупных документах. Обеспечена наглядная подсветка элементов в окне "Manage Changes" ("Управление изменениями") и боковой панели, при щелчках мышью на изменениях в документе. В диалог и боковую панель, связанные с отслеживанием изменений, добавлены настройки сортировки.
    • При импорте документов в формате DOCX улучшен откат на запасные шрифты и налажена корректная отрисовка линий.
    • Для открываемых документов добавлена опция для выставления уровня масштабирования по умолчанию, более приоритетного, чем уровень масштабирования, заданный в самом документе.
    • Добавлена поддержка преобразования ответа на комментарий в корневой комментарий.
    • В мастер нумерации страниц добавлена опция для помещения номера в существующие поля для исключения перенумерации страниц.
    • Добавлена возможность удаления определённого типа содержимого (например, всех изображений) через панель Навигатор (Navigator).
    • Предоставлена возможность настройки цветов непечатных символов и фона комментариев.
    • Добавлена возможность преобразования всех сносок внизу страниц в сноски в конце документа и наоборот.
    • Добавлена поддержка интеграции заголовков непосредственно в основной текст, без выноса в отдельную строку.
  • Изменения в табличном процессоре Calc:
    • В строку состояния добавлен индикатор отключения режима автоматического пересчёта формул при их вводе или изменении (Data ▸ Calculate ▸ AutoCalculate).
    • Добавлен диалог для выделения или удаления дублирующихся записей в выбранных ячейках.
    • Добавлена поддержка импорта и экспорта файла connections.xml (Power Query) для OOXML.
    • Улучшен интерфейс и расширены возможности поиска в диалоге "Мастер функций" (Function Wizard) и вкладки "Функции" (Functions) в боковой панели.
    • Изменено поведение операции "Выделить всё" - при нахождении в ячейке, выполнение данной операции приведёт к выделению всех соседних ячеек с данными при первом вызове, а при следующем вызове - выделению всего листа. Для отключения данного поведения добавлена настройка SelectRangeBeforeAll.
    • Добавлена возможность сохранения моделей решателя (Solver) в файле с электронной таблицей, а также генерации отчётов с анализом чувствительности (анализ степени влияния исходных параметров на результат).
    • Добавлена настройка WrapNextPrevSheetTab для управления поведением при навигации по листам электронной таблицы при помощи клавиатурных комбинаций "Ctrl + PgDn" и "Ctrl + PgUp".
    • В диалог "Промежуточные итоги" (Subtotals) добавлена опция "Итог под данными" (Summary below data) для отображения сводной информации внизу таблицы.
    • Добавлены настройки защиты листов электронной таблицы, связанные со сводными таблицами, сводными диаграммами и автоматическими фильтрами.
  • Изменения в системе создания презентаций Impress:
    • Диалог для выполнения действий при щелчке мышью на слайдах во время презентации переведён на работу в неблокирующем режиме.
    • Реализована возможность настройки полупрозрачного текста в привязке к отдельным абзацам при экспорте в формате SVG.
    • В оконном режиме добавлена поддержка активации автоматического повтора слайдов.
    • В объектах с текстом, обведённым рамкой, разрешены эффекты сглаживания краёв и свечения.
    • Добавлено множество небольших улучшений в шаблоны. В шаблонах Nature_Illustration, Pencil и Piano изображения заменены на фигуры, которые можно изменять. В шаблонах Blueprint Plans и Metropolis вместо фоновых растровых изображений задействованы векторные изображения в формате SVG. В шаблоне DNA улучшена отрисовка двойной спирали ДНК. В шаблонах "Blueprint Plans" и "Vintage" удалены финальные слайды. В режимах Master Notes и Handout теперь все шаблоны имеют видимые элементы. В диалог "File ▸ Properties" добавлена информация об авторах.
    • В элемент "Align" контекстного меню добавлена опция для центрирования объектов в слайде Impress или на странице Draw.
    • Устранена проблема с обрезкой выступающего текста примечаний при выводе презентации на печать.
  • В Draw реализована поддержка обрезания контуров объектов в импортированных PDF-документах.
  • В Base улучшен интерфейс диалога работы с SQL-запросами. Обеспечено сохранение пользовательского ввода в рамках сеанса и добавлен показ числа результатов. Добавлена поддержка ODBC-вызовов с Unicode.
  • В Math предоставлена возможность сохранения формул в категориях, определённых пользователем.
  • Улучшена совместимость с форматом OOXML, применяемым в MS Office.
  • Улучшена поддержка формата Microsoft Visio 5. Библиотека libvisio обновлена до версии 0.1.8.
  • Для платформы macOS предоставлено дополнение для быстрого предпросмотра документов c использованием механизма Quick Look.
  • На следующий выпуск LibreOffice 25.8 запланировано прекращение поддержки платформ Windows 7 и Windows 8/8.1.

  1. OpenNews: Выпуск офисного пакета LibreOffice 24.8
  2. OpenNews: Доступен офисный пакет ONLYOFFICE 8.2
  3. OpenNews: Выпуск офисного пакета LibreOffice 24.2
  4. OpenNews: Выпуск Apache OpenOffice 4.1.15
  5. OpenNews: Уязвимости в LibreOffice, позволяющие выполнить скрипт или плагин Gstreamer
Обсуждение (156 +28) | Тип: Программы |
·06.02.2025 Доступен дистрибутив OpenWrt 24.10 (117 +28)
  После более года разработки представлен значительный выпуск дистрибутива OpenWrt 24.10.0, развиваемого для сетевых устройств, таких как маршрутизаторы, коммутаторы и точки доступа. OpenWrt поддерживает 1970 устройств и предлагает систему сборки, упрощающую кросс-компиляцию и создание собственных сборок. Подобные сборки позволяют формировать готовые прошивки с желаемым набором предустановленных пакетов, оптимизированные под конкретные задачи. Готовые сборки опубликованы для 39 целевых платформ (в прошлой ветке поддерживалось 36 платформ).

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

  • По умолчанию включена поддержка TLS 1.3, реализованная благодаря обновлению библиотеки mbedtls до версии 3.6.
  • Для устройств с большим размером Flash-памяти во всех файловых системах активирована поддержка ACL (POSIX Access Control List) и атрибутов безопасности. Изменение затрагивает устройства, для которых не выставлен флаг small_flash. В настоящее время small_flash указан для платформ ath79/tiny, bcm47xx/legacy, lantiq/ase, lantiq/xrx200_legacy, lantiq/xway_legacy, ramips/mt76x8, ramips/rt288x, ramips/rt305x и ramips/rt3883.
  • Для устройств с большим размером Flash-памяти в ядре включена поддержка MPTCP (MultiPath TCP), расширения протокола TCP для доставки TCP-пакетов одновременно по нескольким маршрутам через разные сетевые интерфейсы.
  • Улучшена поддержка Wi-Fi 6 (802.11ax) и добавлена начальная поддержка Wi-Fi 7 (802.11be).
  • Улучшена работа фонового процесса lldpd с реализацией протокола LLDP (Link Layer Discovery Protocol).
  • Добавлена поддержка более 100 новых устройств, среди которых выделяется собственный беспроводной маршрутизатор OpenWrt One, развиваемый сообществом OpenWrt. Общее число поддерживаемых устройств достигло 1970.
  • Добавлены платформы d1 и starfive для устройств на базе SoC AllWinner D1 и StarFive JH71x0 (7100/7110), использующих архитектуру RISC-V.
  • Добавлена платформа ixp4xx для SoC Intel XScale IXP4xx на базе архитектуры ARM.
  • Добавлена платформа loongarch64 для устройств с процессорами на базе архитектуры LoongArch.
  • Добавлена платформа stm32 для SoC STMicroelectronics STM32.
  • Удалены платформы ath25 (Atheros ieee80211g c 16 МБ ОЗУ), bcm63xx (Broadcom DSL MIPS, на смену пришла платформа bmips), octeontx (Octeon-TX CN80XX/CN81XX) и oxnas (PLXTECH/Oxford NAS782x/OX8xx). Платформа ipq807x переименована в qualcommax.
  • Сформированы готовые сборки для платформы qoriq (SoC NXP QorIQ на базе архитектуры PowerPC).
  • Продолжен перевод целевых платформ на использование подсистемы ядра DSA (Distributed Switch Architecture), предоставляющей средства для настройки и управления каскадами соединённых между собой Ethernet-коммутаторов, применяя механизмы для настройки обычных сетевых интерфейсов (iproute2, ifconfig). DSA может применяться для настройки портов и VLAN вместо ранее предлагаемого инструмента swconfig, но не все драйверы коммутаторов пока поддерживают DSA. В новом выпуске DSA задействован для платформы ipq806x (SoC Qualcomm Atheros IPQ806X). Добавлена поддержка DSA-коммутатора Airoha AN8855 (Xiaomi AX3000T, используется в коммутаторах Mediatek и Airoha).
  • Обновлены версии пакетов, включая musl 1.2.5, glibc 2.38, gcc 13.3.0, binutils 2.42, hostapd от сентября 2024 г., dnsmasq 2.90, dropbear ssh 2024.86.
  • Ядро Linux обновлено до выпуска 6.6.73 с беспроводным стеком cfg80211/mac80211, портированным из ядра 6.12.6. (в прошлой ветке поставлялось ядро 5.15 с беспроводным стеком из ядра 6.1).
  • Несмотря на миграцию проекта на пакетный менеджер APK, ветка OpenWrt 24.10 продолжает использовать пакетный менеджер OPKG. Переход на APK пока осуществлён только в ветке "main", которая послужит основой для следующего значительного релиза OpenWrt.
  • При переходе с ветки OpenWrt 23.05 на устройствах Linksys E8450, Belkin RT3200 и Zyxel GS1900 возникают проблемы с обновлением. Пользователям данных устройств следует учесть отдельные рекомендации.
  • Поддержка Xiaomi AX3200 и Redmi AX6S сломана. Пользователям данных устройств следует подождать 24.10.1.

  1. OpenNews: Дистрибутив OpenWrt переходит на пакетный менеджер APK
  2. OpenNews: Уязвимости, позволяющие подменить образы и выполнить код на ASU-серверах проекта OpenWrt
  3. OpenNews: Доступен маршрутизатор OpenWrt One, развиваемый сообществами OpenWrt и Banana Pi
  4. OpenNews: Опубликован OpenWrt 23.05.0
  5. OpenNews: Обновление OpenWrt 23.05.5
Обсуждение (117 +28) | Тип: Программы |
·05.02.2025 Выпуск web-браузера Chrome 133 (71 +11)
  Компания Google опубликовала релиз web-браузера Chrome 133. Одновременно доступен стабильный выпуск свободного проекта Chromium, выступающего основой Chrome. Браузер Chrome отличается от Chromium использованием логотипов Google, наличием системы отправки уведомлений в случае краха, модулями для воспроизведения защищённого от копирования видеоконтента (DRM), системой автоматической установки обновлений, постоянным включением Sandbox-изоляции, поставкой ключей к Google API и передачей RLZ-параметров при поиске. Для тех, кому необходимо больше времени на обновление, отдельно поддерживается ветка Extended Stable, сопровождаемая 8 недель. Следующий выпуск Chrome 134 запланирован на 4 марта.

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

  • Для 1% пользователей включена поддержка заморозки вкладок в режиме экономии потребления энергии (Energy saver). Автоматически замораживаются вкладки, потребляющие много ресурсов CPU и скрытые в течение более 5 минут. Под заморозку не подпадают вкладки, выводящие звук, а также связанные с управлением внешними устройствами или проведением видео и аудио конференций (подобные вкладки определяются на основании доступа к API для работы с USB, Bluetooth, камерой, устройствами ввода и микрофоном, а также организации канала связи с использованием RTCDataChannel или MediaStreamTrack). Для управления включением автозаморозки можно использовать настройку "chrome://flags/#freezing-on-energy-saver".
  • В сервисе Chrome Sync прекращена поддержка версий Chrome, более чем 4-годичной давности. Для хранения информации в привязке к учётной записи в Google и синхронизации браузерных данных между системами следует использовать как минимум выпуск Chrome 89.
  • В версии для Android добавлена настройка для отключения JIT-оптимизаторов в JavaScript-движке V8. Отключение JIT может быть полезным для повышения безопасности работы с потенциально опасными web-приложениями за счёт уменьшения возможных векторов для совершения атаки. В версиях Chrome для настольных систем подобная настройка доступна на странице chrome://settings/security, начиная с выпуска Chrome 122.
  • Приведён к соответствию со стандартом разбор неспециальных схем URL (не включённых в список типовых схем). Например, URL "git://example.com/path".
  • Расширены возможности CSS-функции attr(), позволяющей использовать в CSS значения определённого HTML-атрибута. Если ранее функция attr() могла работать только со свойством "content" псевдо-элементов и преобразовывать значения в CSS-тип "<string>", то теперь её можно применять с любыми CSS-свойствами и преобразовывать значения в любые CSS-типы. В примере ниже цвет в CSS-свойстве "color" выставляется на основе разбора указанного в элементе "div" собственного атрибута "data-foo", а если атрибут не указан используется значение "red".
    
       <div data-foo="blue">test</div>
       ...
       div {
         color: attr(data-foo type(<color>), red);
       }
    
  • Реализован CSS-запрос "@container scroll-state(), позволяющий определять состояние прокрутки области. Поддерживаются состояния: "stuck" - контейнер, прикреплённый к одной из сторон области с прокруткой; "snapped" - контейнер, прикреплённый с выравниванием по горизонтали или вертикали; "scrollable" - контейнер, который можно прокручивать в указанном направлении.
  • Добавлены CSS-свойства "text-box", "text-box-trim" и "text-box-edge", позволяющие точно управлять отступами до и после текста. Свойство "text-box-trim" определяет область обрезки (верх, низ или с обоих сторон), а "text-box-edge" задаёт способ обрезки краёв. Свойство "text-box" объединяет возможности "text-box-trim" и "text-box-edge".
  • В CSS добавлен псевдо-класс ":open", позволяющий определить, когда для элементов <dialog> и <details> открыты диалоговые окна, а для элементов <select> и <input> показаны окна выбора.
  • Добавлен DOM-примитив moveBefore для перемещения элемента в DOM-дереве без сброса его состояния.
  • Добавлен интерфейс FileSystemObserver, позволяющий сайтам отслеживать изменения в файловой системе.
  • В API PublicKeyCredential добавлен метод getClientCapabilities() для определения возможностей WebAuthn, поддерживаемых браузером.
  • В объект Atomics добавлено свойство pause() для информирования о том, что код ожидает освобождения блокировки.
  • В API WebCrypto добавлена поддержка схемы согласования ключей X25519, которая может использоваться через программный интерфейс SubtleCrypto (методы generateKey, importKey, exportKey, deriveKey и deriveBits).
  • В WebAssembly реализована возможность использования 64-разрядных указателей (Memory64), позволяющих работать с линейными областями памяти, превышающими 4 ГБ. Изменение не добавляет новых инструкций WebAssembly, а лишь позволяет использовать в уже существующих инструкциях 64-разрядные индексы для таблиц и областей памяти. Работа в режиме Memory64 приводит к ощутимым накладным расходам - в зависимости от вида нагрузки наблюдается замедление от 10% до двух раз. Из-за снижения производительности использование Memory64 оправдано только в ситуациях, когда приложению требуется более 4 ГБ памяти.
  • Расширены возможности инструментов для web-разработчиков. Обеспечено сохранение истории чата с AI-ассистентом между сеансами. Добавлена панель "What's new" с обзором изменений в новой версии. Добавлена возможность помещения скриптов в список игнорирования, для исключения их показа на диаграмме профилирования производительности. В панели Performance во вкладке Insights обеспечено выделение изображений, размер которых можно оптимизировать, а во вкладке Summary показана трассировка стека JavaScript-вызовов (включая асинхронные вызовы).

Кроме нововведений и исправления ошибок в новой версии устранены 12 уязвимостей. Многие из уязвимостей выявлены в результате автоматизированного тестирования инструментами AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer и AFL. Двум проблемам, приводящим к обращению у уже освобождённой памяти в движке V8 и библиотеке Skia, присвоен высокий уровень опасности. Критических проблем, которые позволяют обойти все уровни защиты браузера и выполнить код в системе за пределами sandbox-окружения, не выявлено. В рамках программы по выплате денежного вознаграждения за обнаружение уязвимостей для текущего релиза компания Google выплатила 2 премии на сумму 9 тысяч долларов США (по одной премии в $7000 и $2000). Размер одного вознаграждения пока не определён.

  1. OpenNews: Выпуск web-браузера Chrome 132
  2. OpenNews: Инициатива по поддержке проектов, использующих движок Chromium
  3. OpenNews: Google передумал прекращать поддержку сторонних Cookie в Chrome
  4. OpenNews: Google экспериментирует со встраиванием в Chrome большой языковой модели
  5. OpenNews: В Chrome появилось предупреждение о скором прекращении поддержки uBlock Origin
Обсуждение (71 +11) | Тип: Программы |
Следующая страница (раньше) >>



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

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