Выпуск эмулятора FEX 2412, позволяющего запускать x86-программы на системах ARM64
Представлен выпуск проекта
FEX 2412, развивающего эмулятор для выполнения игр и приложений, собранных для архитектур x86 и x86-64, в Linux-окружении на системах с процессорами ARM64 (AArch64). Для загрузки уже сформированных проектом образов rootfs предложена утилита FEXRootFSFetcher. Среди прочего, эмулятор FEX применяется проектом Asahi для организации запуска в Linux-окружениях, работающих на системах с ARM-чипами Apple Silicon, игр класса AAA, доступных в каталоге Steam и собранных для архитектуры x86_64. Код проекта написан на языке С++ с ассемблерными вставками и распространяется под лицензией MIT.
Библиотеки, необходимые для запуска x86-приложений в системном окружении, собранном для архитектуры ARM64, подключаются в форме overlay-прослойки с образом корневой ФС (rootfs) в формате squashfs. Подобная прослойка даёт возможность обойтись без создания отельного chroot-окружения.
Для организации доступа к определённым возможностям хост-окружения, таким как средства для работы со звуком и 3D-графикой (OpenGL и Vulkan) в rootfs помещаются специальные thunk-библиотеки транслирующие обращения к библиотекам на стороне хост-системы. Подобные библиотеки также могут использоваться и на стороне хоста для трансляции вызовов в гостевое окружение.
Из изменений в новой версии отмечается решение проблем с запуском клиента Steam, перевод эмуляции x86-инструкции PAUSE на использование ARM-инструкции WFE вместо YIELD, обеспечение эмуляции системных вызовов для использования геймпадов, улучшение эмуляции CPUID и RDTSCP, реструктуризация FEXCore (бэкенд эмуляции CPU), устранение недоработок в эмуляции расширений AVX.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62340
В феврале в Переславле-Залесском состоится конференция "СПО в высшей школе"
Юбилейная XX конференция "Свободное программное обеспечение в высшей школе" (OSEDUCONF-2025) состоится 7-9 февраля 2025 года в Институте программных систем РАН в г.Переславле-Залесском Ярославской области. В мероприятии примут участие представители образовательного сообщества, использующие или создающие свободное ПО в учебном или научном процессе. Основной целью проведения конференции является налаживание личных контактов между специалистами, обсуждение перспектив и новинок области.
Участие в конференции для докладчиков и слушателей бесплатное, докладчикам оплачивается проживание в отеле (по одному человеку на доклад), всем участникам предоставляется трансфер из Москвы и обратно, а также от гостиницы "Переславль" до места проведения конференции: Ярославская область, Переславский район, с. Веськово, улица Петра Первого, д. 4А (Институт программных систем имени А.К. Айламазяна РАН).
Видеозаписи докладов и презентации будут размещены в открытом доступе в VK, на странице мероприятия и в 0x1.tv. Тезисы докладов выйдут отдельным сборником и будут опубликованы в национальной библиографической базе данных научного цитирования РИНЦ. Публикация программы конференции ожидается 22 января 2025 года.
Принимаются доклады по следующим темам:
- Использование свободного ПО в учебном процессе: разработка, внедрение, преподавание.
- Научные проекты, связанные с разработкой и использованием свободного программного обеспечения.
- Внедрение СПО в инфраструктуру образовательной организации: проблемы и решения.
- Социальные и экономико-правовые особенности применения свободного программного обеспечения в высшей школе.
- Студенческие проекты разработки СПО.
Доклады принимаются только по тематике свободного ПО. Доклады о бизнесе, рекламные и о проприетарном ПО запрещены. Если тема доклада связана с разработкой ПО, заявка должна содержать ссылку на сам код, опубликованный в любом общедоступном репозитории под любой свободной лицензией.
Доклады по вопросам свободного ПО приветствуются для всех форм образования: не только ВУЗы, но и среднее профессиональное образование, школы, курсы, кружки, группы по подготовке специалистов.
Для докладов о студенческих проектах настоятельно рекомендуется, чтоб доклад делали студенты, а не их научные руководители.
Сроки подачи заявок:
- в качестве докладчика — до 12 января 2025 года;
- приём тезисов — до 16 января 2025 года;
- от слушателей, которым необходим трансфер — до 3 февраля 2025 года;
- от слушателей, которым не нужен трансфер — до 5 февраля 2025 года.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62335
Атакующие внедрили вредоносный код в web3.js, официальный JavaScript-клиент для криптовалюты Solana
Выявлен факт подстановки вредоносного кода в библиотеку @solana/web3.js, насчитывающую в репозитории NPM 400-500 тысяч загрузок в неделю. Вредоносные изменения были включены в состав выпусков web3.js 1.95.6 и 1.95.7, и сводились к интеграции кода для отправки на внешний сервер закрытых ключей. Целостность проекта восстановлена в выпуске 1.95.8. Разбор причин инцидента пока не завершён, но по предварительным данным вредоносные релизы были размещены через компрометацию учётной записи сопровождающего, используя методы социального инжиниринга и фишинга.
Библиотека web3.js позиционируется как официальный JavaScript SDK для работы с криптовалютой Solana из приложений, запускаемых в браузере или использующих такие платформы, как Node.js и React Native. Проект развивает организация Solana Labs, которая также отвечает за разработку мобильного приложения и эталонную реализацию блокчейна Solana. Криптовалюта Solana занимает пятое место по размеру капитализации, уступая только Bitcoin, Ethereum, XRP и USDT.
Проведённая атака создаёт угрозу вывода злоумышленниками средств из приложений, использующих в зависимостях скомпрометированную версию web3.js. При этом отмечается, что кража средств может коснуться только децентрализованных приложений (dapps) и ботов, напрямую работающих с зарытыми ключами. Проблема не затрагивает клиентские кошельки, которые напрямую не используют закрытые ключи в транзакциях.
В настоящее время библиотека web3.js упоминается в качестве прямой зависимости у 3262 проектов в каталоге NPM, а также применяется в web-приложениях, работающих через браузер. Разработчикам dapps-приложений, использующих web3.js, необходимо убедиться в отсутствии среди зависимостей версий web3.js 1.95.6 и 1.95.7, которые распространялись через NPM во вторник 3 декабря c 18:20 по 23:25 (MSK).
В случае использования данных версий следует обновить web3.js до выпуска 1.95.8 или откатиться до версии 1.95.5. Также рекомендуется поменять приватные ключи, провести аудит своих систем, проинспектировать код и изучить содержимое каталога node_modules на предмет появления подозрительных зависимостей.
Анализ изменений в скомпрометированной версии 1.95.7 показал, что вредоносный код был внедрён в форме функции "addToQueue", которая отправляет закрытые ключи на сервер "sol-rpc.xyz". Вызов функции "addToQueue" был добавлен в различные места в коде, в которых осуществлялась манипуляция с ключами. Отправка осуществляется через кодирование ключа методом Base58 и распределения содержимого между HTTP-заголовками "x-session-id", "x-amz-cf-id" и "x-amz-cf-pop", применяемыми в CloudFlare. Домен "sol-rpc.xyz"
зарегистрирован 22 ноября и размещён на хостинге CloudFlare.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62339
Выпуск дистрибутива Nitrux 3.8.0 с пользовательским окружением NX Desktop
Опубликован выпуск дистрибутива Nitrux 3.8.0, построенного на пакетной базе Debian, технологиях KDE и системе инициализации OpenRC. Проект предлагает собственный рабочий стол NX Desktop, который представляет собой надстройку над KDE Plasma. На основе библиотеки Maui для дистрибутива развивается набор типовых пользовательских приложений, которые можно использовать как на настольных системах, так и на мобильных устройствах. Для установки дополнительных приложений продвигается система самодостаточных пакетов AppImages. Размер полного загрузочного образа составляет 3.3 ГБ. Наработки проекта распространяются под свободными лицензиями.
Рабочий стол NX Desktop предлагает иное стилевое оформление, собственную реализацию системного лотка, центра вывода уведомлений и различных плазмоидов, таких как конфигуратор сетевых соединений и мультимедийный апплет для регулирования громкости и управления воспроизведением мультимедийного контента. Из приложений, созданных при помощи фреймворка MauiKit, можно отметить файловый менеджер Index
(можно использовать и Dolphin), текстовый редактор Note, эмулятор терминала Station, музыкальный проигрыватель VVave, видеопроигрыватель Clip, центр управления приложениями NX Software Center и просмотрщик изображений Pix.
Основные новшества Nitrux 3.8:
- По умолчанию задействовано ядро Linux 6.12 с патчами Liquorix.
- Обновлены версии пакетов, среди которых Mesa 24.2.8, Firefox 132, NUTS 2.1.9 (Nitrux Update Tool System).
- Пользовательское окружение NX Desktop продолжает использовать KDE Plasma 5.27.11, KDE Frameworks 5.115 и Qt 5.15.13. Напомним, что NX Desktop представляет собой набор надстроек, сильно завязанных на ветку Plasma 5, поэтому дистрибутив не будет переходить на KDE 6, а ближе к концу года будет переведён по умолчанию на собственную оболочку Maui Shell, поддерживающую Qt6.
- В инсталляторе Calamares изменены настройки ядра для решения проблемы с дрейфом системных часов на некоторых ноутбуках.
- Выполнена сортировка сервисов OpenRC по уровням запуска (runlevel). Для ускорения загрузки удалены некоторые сервисы из уровней запуска "async" (отложенный параллельный запуск), "default" и "sysinit". Обновлён OpenRC-пакет для
Rsyslog.
- Обновлены скрипты для установки flatpak-пакетов Steam, Bottles и HGL, а также appimage-пакетов LibreOffice и Bauh.
- Файл desktop-config обновлён для отображения уведомлений при запуске дистрибутива в виртуальной машине.
- Обновлён Debian rootfs, используемый для генерации дистрибутива.
- Добавлен OpenRC-сервис для включения режима Dynamic Boost для GPU NVIDIA. Добавлена конфигурация D-Bus для NVIDIA Dynamic Boost. Добавлен исполняемый файл для создания файлов устройств NVIDIA, а также udev-правила для устройств NVIDIA.
- В состав включены пакеты devmem2, msr-tools и policycoreutils.
- В экранном интерфейсе мониторинга MangoHud реализовано отображение потребления энергии процессорами Intel. Добавлен модуль ядра zenergy для показа в MangoHud потребления энергии CPU AMD Zen.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62337
Выпуск EasyOS 6.5, самобытного дистрибутива от создателя Puppy Linux
Барри Каулер (Barry Kauler), основатель проекта Puppy Linux, опубликовал дистрибутив EasyOS 6.5, совмещающий технологии Puppy Linux с применением контейнерной изоляции для запуска компонентов системы. Управление дистрибутивом производится через развиваемый проектом набор графических конфигураторов. Размер загрузочного образа 950 МБ.
Особенности дистрибутива:
- Каждое приложение, а также сам рабочий стол, могут быть запущены в отдельных контейнерах, для изоляции которых используется собственный механизм Easy Containers.
- По умолчанию работа осуществляется с правами root со сбросом привилегий при запуске каждого приложения, так как EasyOS позиционируется как Live-система одного пользователя.
- Дистрибутив устанавливается в отдельный подкаталог и может сосуществовать с другими данными на накопителе (система устанавливается в /releases/easy-6.5, пользовательские данные сохраняются в каталоге /home, а дополнительные контейнеры с приложениями размещаются в каталоге /containers).
- Поддерживается шифрование отдельных подкаталогов (например, /home).
- Возможна установка мета-пакетов в формате SFS, представляющих собой монтируемые образы со Squashfs, объединяющие несколько обычных пакетов и по сути напоминающие форматы appimages, snaps и flatpak.
- Система обновляется в атомарном режиме (новая версия копируется в другой каталог и переключается активный каталог с системой) и поддерживает откат изменений в случае возникновении проблем после обновления.
- Имеется режим запуска из ОЗУ, в котором при загрузке система копируется в память и работает без обращения к дискам.
- Для сборки дистрибутива используется инструментарий WoofQ и исходные тексты пакетов от проекта OpenEmbedded.
- Рабочий стол основан на оконном менеджере JWM и файловом менеджере ROX.
- В базовую поставку входят такие приложения, как Firefox, LibreOffice, Scribus, Inkscape, GIMP, mtPaint, Dia, Gpicview, текстовый редактор Geany, менеджер паролей Fagaros, система управления личными финансами HomeBank, персональная Wiki DidiWiki, органайзер Osmo, менеджер проектов Planner, система заметок Notecase, Pidgin, музыкальный проигрыватель Audacious, медиаплееры Celluloid, VLC и MPV, видеоредактор LiVES, система потокового вещания OBS Studio.
- Для упрощения обмена файлами и организации совместного доступа к принтерам предлагается собственное приложение EasyShare.
В EasyOS 6.5 обновлены версии пакетов, например, ядро Linux обновлено до версии 6.6.61. Предложено две редакции: Scarthgap - сборка с использованием форка метаданных от проекта OpenEmbedded и Daedalus - сборка на основе пакетов из
Devuan 12. Расширены возможности запуска других дистрибутивов в контейнерах, среди прочего предоставлена поддержка запуска в окружении EasyOS Scarthgap (на базе пакетов OpenEmbedded) варианта дистрибутива EasyOS Daedalus (на базе пакетов Devuan/Debian).
Источник: https://www.opennet.ru/opennews/art.shtml?num=62336
Выпуск среды разработки Qt Creator 15
Представлен выпуск интегрированной среды разработки Qt Creator 15, предназначенной для создания кроссплатформенных приложений с использованием библиотеки Qt. Поддерживается как разработка классических программ на языке C++, так и использование языка QML, в котором для определения сценариев используется JavaScript, а структура и параметры элементов интерфейса задаются CSS-подобными блоками. Готовые сборки сформированы для Linux, Windows и maсOS.
В новой версии:
- Добавлены новые тёмные и светлые темы оформления ("Dark (2024)" и "Light (2024)" в Preferences > Environment > Interface > Theme), в которых повышена контрастность, задействован более тёмный акцентный цвет, оптимизированы отступы, обновлено оформление кнопок, унифицированы пиктограммы.
Переработан экран первого запуска, в котором выделены ключевые операции, такие как создание и открытие проектов, добавлено боковое меню для на навигации по проектам, примерам и руководствам, доработана функция поиска. Добавлена новая подборка ссылок на обучающие руководства и курсы.
- Продолжено развитие возможностей для управления дополнениями, расширяющими функциональность Qt Creator. В описании дополнений задействована разметка Markdown. Расширен API для разработки дополнений на языке Lua. В меню добавлена кнопка (Tools > Scripting > New Script) для прямого запуска Lua-скриптов, использующих API Qt Creator.
- В состав включён официальный плагин для интеграции с инструментарием Axivion, предоставляющим статический анализатор, средства для выявления проблем в коде, утилиты для оценки эффективности и анализа архитектуры.
- Улучшена работа с проектами, использующими сборочную систему CMake. Например, появилась возможность навигации по
CMakeLists.txt напрямую из интерфейса работы с проектом, а также автоматического открытия проекта при открытии файла CMakeLists.txt.
В меню "Build" и древовидный обзор содержимого добавлены операции сборки, пересборки и очистки вложенных проектов.
- В рабочих пространствах (Workspace, возможность открыть каталог как проект) появилась поддержка определения собственной сборочной конфигурации и реализовано автоматическое обновление представления проекта.
- В настройках компиляторов C/C++ предоставлена возможность указания разных компиляторов для С и С++.
- Повышена производительность интерфейсов для просмотра результатов работы приложения (Application Output) и сообщений компилятора (Compile Output). Добавлена опция для блокирования избыточного вывода.
- Расширены средства для работы с Git. В всплывающую подсказку Instant Blame добавлены кнопки для запуска команды "git blame" для выбранной или родительской ветки, просмотра текущей версии файла и отображения лога. Добавлена опция для показа связанных с Git визуальных меток в интерфейсе навигации по файлам проекта, а также обеспечено выделение цветом изменённых файлов.
- Для платформ Windows и macOS добавлена опция (Preferences > Environment > System > Enable Crash Reporting) для автоматической отправки отчётов об аварийном завершении, используя сервисы Google Crashpad и Sentry.io.
- Добавлена поддержка платформы Windows на системах с архитектурой ARM.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62334
Релиз FreeBSD 14.2
После шести месяцев разработки сформирован релиз FreeBSD 14.2. Установочные образы подготовлены для архитектур amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv7, aarch64 и riscv64. Дополнительно подготовлены сборки для систем виртуализации (QCOW2, VHD, VMDK, raw) и облачных окружений Amazon EC2, Google Compute Engine и Vagrant.
В рамках обновлённого цикла разработки следующий выпуск FreeBSD 14.3 будет сформирован в июне 2025 года.
Поддержка нынешнего выпуска FreeBSD 14.2 будет осуществляться до 30 сентября 2025 года, а прошлого выпуска FreeBSD 14.1 - до 31 марта 2025 года. В целом ветка FreeBSD 14 будет сопровождаться до 30 ноября 2028 года. Параллельно развивается ветка FreeBSD 13.x, следующий выпуск (13.5) в которой намечен на март 2025 года. Первый выпуск следующей значительной ветки FreeBSD 15, в которой будет прекращена поддержка 32-разрядных архитектур (кроме armv7 и режима COMPAT_FREEBSD32), запланирован на декабрь 2025 года.
Основные изменения во FreeBSD 14.2:
- В инсталлятор bsdinstall добавлена возможность загрузки и установки пакетов с прошивками к используемому аппаратному обеспечению.
- Началось формирование образов контейнеров в формате OCI (Open Container Initiative).
- Началось формирование компактного варианта системных образов для Amazon EC2, из которых исключены отладочные символы, тесты, 32-разрядные библиотеки, отладчик LLDB, Amazon SSM Agent и AWS CLI. В ARM64-сборках для Amazon EC2 реализована поддержка API "shutdown" и "reboot".
- Добавлена номинальная поддержка процессоров POWER10 и POWER11.
- Объявлена устаревшей утилита fdisk, вместо которой рекомендовано использовать gpart. Утилиту fdisk планируют исключить из поставки FreeBSD 15, В ветке FreeBSD 14 при запуске fdisk теперь будет выводиться предупреждение о необходимости миграции на gpart.
- С целью сокращения размера из загрузчика для систем с BIOS удалена поддержка графического режима, но возвращена поддержка алгоритмов сжатия gzip и bzip2. Загрузчик для EFI оставлен без изменения.
- Внесена порция улучшений в звуковой стек. Например, предложена новая утилита mididump (отслеживание событий MIDI) и добавлена поддержка горячего переключения между звуковыми устройствами в mixer.
- В инфраструктуре эмуляции окружения Linux (Linuxulator) улучшена совместимость с приложениями, собранными для платформы Linux (включено игнорирование флага AT_NO_AUTOMOUNT для всех вариантов вызова функции stat() в Linux-приложениях).
- Для всех архитектур включены драйвер nvme (NVM Express) и утилита nvmecontrol.
- Обновлены версии сторонних компонентов: Clang/LLVM 18.1.6 (было 18.1.5), OpenZFS 2.2.6 (было 2.2.4), OpenSSL 3.0.15 (было 3.0.12),
bc 7.0.2, libarchive 3.7.7, libcbor 0.11.0, libfido2 1.14.0, libpcap 1.10.5, tcpdump 4.99.5, unbound 1.22.0.
- В утилиту env добавлена опция "-C" для смены рабочего каталога, реализованная по аналогии с утилитой env из набора GNU coreutils.
- В стартовый скрипт nuageinit добавлена поддержка настройки сетевой конфигурации при запуске в виртуальной машине под управлением OpenStack.
- Обеспечено определение запуска в гостевой системе под управлением гипервизора NVMM, развиваемого проектом NetBSD.
- В используемом в гипервизоре Bhyve сервере VNC реализована корректная поддержка цветов, при подключении через клиент novnc.
- При работе под управлением гипервизора Hyper-V значительно (до 40%) повышена производительность работы с TLB (Translation Lookaside Buffer) за счёт задействования гипервызовов для сброса TLB.
- Проведена оптимизация производительности в сетевом стеке и устранены проблемы в стеке sctp.
- Повышена стабильность драйверов для беспроводных устройств, а также драйверов (например, iwlwifi), запускаемых при помощи прослойки linuxkpi, позволяющей использовать во FreeBSD драйверы из Linux.
- Решена проблема с выводом ошибки "madt_parse_apics:
I/O APIC ID 255 too high" при загрузке на системах с процессорами AMD (максимальное значение IOAPIC ID увеличено с 254 до 255).
- В драйверы igc (Intel Ethernet Controller I225) и lem/em/igb (Intel PRO/1000 Gigabit Ethernet) добавлена поддержка
алгоритма AIM (Adaptive Interrupt Moderation), позволяющего сократить задержки на каналах с низкой интенсивностью пакетов, а также уменьшить нагрузку на CPU и снизить частоту вызова прерываний при большой интенсивности пакетов. Изменение также позволило избавиться от проявляющейся начиная с FreeBSD 12.0 регрессии в производительности UDP, особенно заметной при использовании NFS поверх UDP.
- Обновлены драйверы устройств ena 2.8.0 (Amazon Elastic Network Adapter), ice_ddp 1.3.41.0 и ice 1.43.2-k (Intel Ethernet 800). В драйвер hda добавлена поддержка процессоров на базе микроархитектуры Intel Tiger Lake-H, а в драйверы ig4 и ichsmb - Intel Meteor Lake.
- Добавлен новый драйвер rtw89 для беспроводных адаптеров IEEE 802.11ax на чипах Realtek RTL8851BE, RTL8852AE, RTL8852BE и RTL8852CE. Поддержка чипов Realtek 8156/8156B перенесена из драйвера cdce в драйвер ure, что позволило добиться повышения производительности и надёжности.
- В состав пакетов, поставляемых на установочном носителе (dvd1), добавлен пакет wifi-firmware-kmod с прошивками для беспроводных карт.
- Запланированы для удаления в будущих выпусках драйверы syscons и agp.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62333
Опубликован графический стандарт Vulkan 1.4
После почти трёх лет работы консорциум Khronos, занимающийся разработкой графических стандартов, опубликовал спецификацию Vulkan 1.4, определяющую API для доступа к графическим и вычислительным возможностям GPU. Новая спецификация вобрала в себя накопившиеся расширения, которые ранее позиционировались как опциональные, а также предоставила ряд новых возможностей и повысила минимальные требования к оборудованию. Инструментарий Vulkan SDK планируют опубликовать в январе 2025 года.
Продукты с поддержкой Vulkan 1.4 готовятся выпустить компании AMD, Arm, Imagination, Intel, NVIDIA, Qualcomm и Samsung. Открытые драйверы для GPU AMD (radv), Apple M1/M2 (honeykrisp), Intel (anv), NVIDIA (nvk) и Qualcomm (tu), развиваемые проектом Mesa, уже прошли все тесты совместимости с Vulkan 1.4 из набора CTS (Khronos Conformance Test Suite) и включены в список сертифицированных драйверов. В список также включены драйверы
Samsung и Qualcomm для платформы Android, а также драйверы для GPU PowerVR D-Series DXT* от компании Imagination Technologies и проприетарные драйверы NVIDIA.
Основные новшества:
- Добавлена поддержка механизма "Streaming Transfers", предназначенного для обеспечения потоковой передачи больших объёмов данных между основной системой (хостом) и графическим устройством, не прерывая при этом рендеринг и не замедляя его производительность. Механизм реализован при помощи нового расширения VK_EXT_host_image_copy, поддержка которого является опциональной.
- Переведены в разряд обязательных возможности, нацеленные на повышение производительности:
- Push Descriptors - возможность записывать обновления дескрипторов непосредственно в буфер команд, вместо создания отдельных наборов дескрипторов и их привязки к буферу команд.
- VK_KHR_dynamic_rendering_local_read - позволяет выполнять чтение из вложенных буферов (attachments) и ресурсов, записанных предыдущими фрагментными шейдерами, в рамках динамических проходов рендеринга (render pass).
- VK_EXT_scalar_block_layout - позволяет использовать Си-подобную структуру для блоков SPIR-V, в которой можно выравнивать не скалярные типы на основе размера их компонентов.
- В состав включены расширения VK_KHR_maintenance5 и VK_KHR_maintenance6, предоставляющее вспомогательные команды и структуры для упрощения управления ресурсами и шейдерами.
- Гарантирована поддержка рендеринга с разрешением 8K (7680 x 4320 пикселей) и с использованием до 8 независимых буферов рендеринга.
- В состав включены расширения:
- Переведены в разряд обязательных многие возможности, ранее являвшиеся опциональными.
- Добавлена большая порция новых команд и структур.
API Vulkan примечателен кардинальным упрощением драйверов, выносом генерации команд GPU на сторону приложения, возможностью подключения отладочных слоёв, унификацией API для различных платформ и применением предкомпилированного промежуточного представления кода для выполнения на стороне GPU.
Для обеспечения высокой производительности и предсказуемости, Vulkan предоставляет приложениям средства для прямого управления операциями GPU и встроенную поддержку многопоточной обработки команд GPU, что минимизирует накладные расходы, вносимые драйвером, а реализуемые на стороне драйвера возможности заметно упрощаются и становятся более предсказуемыми. Например, такие операции, как управление памятью и обработка ошибок, реализуемые в OpenGL на стороне драйвера, в Vulkan вынесены на уровень приложения.
Vulkan охватывает все доступные платформы и предоставляет единый API для настольных, мобильных систем и Web, позволяя использовать один общий API для различных графических процессоров и областей применения. Благодаря многослойной архитектуре Vulkan, подразумевающей создание инструментов, работающих с любыми GPU, производители оборудования могут использовать при разработке типовые инструменты для проверки кода, отладки и профилирования.
Для создания шейдеров предлагается переносимое промежуточное представление SPIR-V, основанное на LLVM и использующее общие с OpenCL базовые технологии. C Vulkan также можно использовать язык шейдеров HLSL, применяемый в DirectX, через его трансляцию в SPIR-V. Для управления устройствами и экранами в Vulkan предлагается интерфейс WSI (Window System Integration), решающий примерно те же задачи, что и EGL в OpenGL ES. Поддержка WSI из коробки доступна в Wayland - все приложения, использующие Vulkan, могут запускаться в окружении немодифицированных серверов Wayland. Возможность работы через WSI также обеспечена для Android, X11 (c DRI3), Windows, Tizen, macOS и iOS.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62331
Выпуск платформы Lutris 0.5.18 для упрощения доступа к играм из Linux
Опубликован выпуск игровой платформы Lutris 0.5.18, предоставляющей инструменты для упрощения установки, настройки и управления играми в Linux. Код проекта написан на языке Python и распространяется под лицензией GPLv3. Готовые сборки доступны в формате flatpak.
Проектом поддерживается каталог для быстрого поиска и установки игровых приложений, позволяющий через единый интерфейс одним щелчком мыши запускать в Linux игры, не заботясь об установке зависимостей и настройках. Runtime-компоненты для запуска игр поставляются проектом и не привязываются к используемому дистрибутиву. Runtime представляет собой независимый от дистрибутива набор библиотек, включающий компоненты из SteamOS и Ubuntu, а также различные дополнительные библиотеки.
Предоставляется возможность установки игр, распространяемых через сервисы GOG, Steam, Epic Games Store, Battle.net, Amazon Games, Origin и Uplay. При этом сам по себе Lutris выступает лишь в роли посредника и не продаёт игры, поэтому для коммерческих игр пользователь должен самостоятельно приобрести игру в соответствующем сервисе (бесплатные игры можно запускать одним кликом из графического интерфейса Lutris).
Каждая игра в Lutris привязывается к сценарию загрузки и обработчику, описывающему окружение для запуска игры. В том числе предоставляются готовые профили с оптимальными настройками для запуска игр под управлением Wine. Кроме Wine игры могут запускаться при помощи эмуляторов игровых консолей, таких как RetroArch, Dosbox, FS-UAE, ScummVM, MESS/MAME и Dolphin.
Среди изменений в новой версии:
- По умолчанию активирована тёмная тема оформления.
- По умолчанию включено отображение узких картинок с обложками игр вместо отдельно подготовленных широких баннеров.
- В боковую панель добавлен режим просмотра без разделения на категории ('Uncategorized').
- Предоставлена возможность использования уточняющих тегов при поиске, например, 'installed:yes' и 'source:gog'. В область поиска добавлена отдельная кнопка для фильтрации вывода при помощи данных тегов.
- Улучшена интеграция с сервисами Itch.io, Flathub и Amazon. Для сервисов GOG и Itch.io реализована возможность выбора, какой из инсталляторов загружать при доступности для одной игры инсталляторов для Windows и Linux.
- При наличии в системе любой версии Wine обеспечена загрузка свежей сборки пакета GE-Proton.
- В конфигураторе на системах с Wayland скрыты опции, не работающие в подобных окружениях.
- Добавлена поддержка эмулятора терминала foot.
- Добавлена поддержка API DirectX 8, появившегося в DXVK v2.4.
- Добавлена поддержка отображения в панели индиакторов Ayatana.
- В конфигураторе во вкладке 'System' добавлена возможность просмотра лога работы Lutris.
- Добавлен профиль AppArmor для выпусков Ubuntu, начиная с 23.10.
- Добавлен runner для запуска игр с использованием Duckstation (эмулятор PlayStation 1). Обновлены ссылки для загрузки компонентов запуска игр (runner) с использованием
эмуляторов Atari800 и MicroM8.
Дополнительно можно отметить, что для игровой консоли Steam Deck, основанной на Linux, подтверждена поддержка 17 тысяч игр (для сравнения рубеж в 13000 был преодолён в январе 2024 года, а 2000 - в апреле 2022 года). 5678 игр помечены как проверенные вручную сотрудниками Valve (Verified), 11323 - как поддерживаемые (Playable), а 4432 как не поддерживаемые.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62326
Второй предварительный выпуск Xfce 4.20
Опубликован тестовый выпуск десктоп-окружения Xfce 4.20 Pre2, нацеленного на предоставление классической среды рабочего стола, требующей для своей работы минимальных системных ресурсов. Релиз ожидается 29 декабря, если будет принято решение опубликовать ещё один тестовый выпуск Xfce 4.20 Pre3, или 15 декабря, если разработчики сочтут кодовую базу достаточно стабильной.
Ветка Xfce 4.20 примечательна добавлением экспериментальной поддержки работы с использованием протокола Wayland. Для абстрагирования работы поверх Wayland и X11 задействована новая библиотека libxfce4windowing, предлагающая не зависящий от графической системы слой, в котором реализованы компоненты управления окнами (экраны, корневые окна, виртуальные рабочие столы и т.п.). Вместо libmutter в сеансе на базе Wayland задействована библиотека wlroots, развиваемая проектом Sway.
Одновременно объявлены победители конкурса на создание новых обоев для рабочего стола, работы которых войдут в состав релиза Xfce 4.20. К конкурсе приняли участие 18 пользователей, предоставивших 54 работы. В результате голосования участников сообщества выбраны следующие победители:
- Первое место (обои будут применяться по умолчанию в Xfce4.20):
- Второе место присуждено двум работам:
- Третье место:
Источник: https://www.opennet.ru/opennews/art.shtml?num=62330
Выпуск программы для перекодирования видео HandBrake 1.9.0
Опубликован релиз HandBrake 1.9.0, инструмента для многопоточного перекодирования видеофайлов из одного формата в другой. Программа доступна как в варианте, работающем в режиме командной строки, так и в виде GUI-интерфейса. Код проекта написан на языках Си (использует библиотеку GTK4 в Linux и .NET Desktop Runtime в Windows) и распространяется под лицензией GPL. Бинарные сборки подготовлены для Linux (Flatpak), macOS и Windows.
Программа может перекодировать видео с BluRay/DVD-дисков, копий каталогов VIDEO_TS и любых файлов, формат которых поддерживается библиотеками libavformat и libavcodec из состава FFmpeg. На выходе могут быть сформированы файлы в таких контейнерах, как WebM, MP4 и MKV, для кодирования видео могут быть применены кодеки AV1, H.266, H.265, H.264, MPEG-2, VP8, VP9 и Theora, для звука - AAC, MP3, AC-3, Flac, Vorbis и Opus. Из дополнительных функций присутствуют: калькулятор битрейта, предпросмотр в процессе кодирования, изменение размера и масштабирование картинки, интегратор субтитров, широкий набор профилей конвертации для заданных типов мобильных устройств.
В новом выпуске:
- Добавлена поддержка аппаратного ускорения декодирования видео H.266/VVC, используя технологию Intel QSV (Quick Sync Video).
- Добавлена поддержка кодирования видео в формате VP9 в режиме без потери качества (lossless).
- Добавлена опция для использования расширений AV1 SCC (Screen Content Coding) для кодирования записи содержимого экрана, используя аппаратный QSV-кодировщик AV1, доступный на системах с чипами Intel Lunar Lake.
- Добавлена возможность ограничения продолжительности титров для контента с дисков DVD и Blu-ray.
- Добавлена опция для сохранения дублирующихся титров с дисков Blu-ray.
- Добавлен кодировщик звука в формате ALAC (Apple Lossless Audio Codec).
- Добавлен режим "Vorbis Passthru" для копирования звука в формате Vorbis без перекодирования.
- Повышено качество интеграции в видео субтитров.
- Обновлены версии используемых библиотек: FFmpeg 7.1, AMF 1.4.35, FreeType 2.13.3, Fribidi 1.0.16, HarfBuzz 10.1.0, libdav1d 1.5.0, libdovi 3.3.1, libjpeg-turbo 3.0.4, libvpx 1.15.0, nv-codec-headers 12.2.72.0, oneVPL 2.13.0, SVT-AV1 2.3.0 и x265 4.1.
- В версии для платформы Windows на системах с архитектурой ARM повышена производительность фильтров, добавлена поддержка ускорения декодирования видео, используя API DirectX и кодировщик Media Foundation, а также добавлена поддержка кодировщика AV1 Media Foundation. Требование к .NET Desktop Runtime повышены до версии 8.0.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62329
Седьмая бета версия OrioleDB, высокопроизводительного движка хранения для PostgreSQL
Представлена бета-версия движка хранения OrioleDB beta7 и опубликованы результаты новых тестов, демонстрирующих значительное повышение производительности по сравнению с традиционным PostgreSQL. В версии beta7 были внедрены оптимизации, направленные на улучшение работы с многопоточными нагрузками и ускорение операций чтения и записи. Первый стабильный релиз OrioleDB планируется сформировать в 2025 году. Движок написан на языке Си и распространяется под лицензией PostgreSQL, похожей на лицензии BSD и MIT.
Проект ОrioleDB развивает альтернативный движок хранения для PostgreSQL, разработанный с целью преодоления ограничений стандартного механизма хранения и повышения общей эффективности системы. Например,
ОrioleDB позволяет обойтись без периодического выполнения операции VACUUM для сборки мусора, благодаря реализации механизма MVCC (Multi-Version Concurrency Control) на базе логов отката (undo logs), работающих на уровне отдельных блоков и строк, а также системы автоматического слияния страниц, содержащих данные. ОrioleDB также использует 64-разрядные идентификаторы транзакций, что решает проблему с переполнением счётчиков.
Для упрощения использования в распределённых системах и распараллеливания операций в OrioleDB организовано ведение
WAL-лога транзакций на уровне строк. При выполнении операции UPDATE поддерживается замена данных по месту (без освобождения текущей записи и создания новой), что положительно сказывается на производительности. В OrioleDB также реализованы такие возможности, как чтение страниц с данными без использования блокировок, прямое связывание страниц в оперативной памяти со страницами в постоянном хранилище, применение механизма CoW (copy-on-write) при фиксации контрольных точек для создания непротиворечивых снапшотов в любой момент времени, режим хранения данных в сжатом виде с использованием алгоритма ZSTD.
Из присутствующих в седьмой бета-версии OrioleDB ограничений отмечается возможность использования только индексов в формате B-tree (в будущем появится поддержка всех типов индексов PostgerSQL), а также отсутствие поддержки предварительно подготовленных транзакций (PREPARE TRANSACTION) и команды "REINDEX" в режиме "CONCURRENTLY". OrioleDB реализован в форме подключаемого расширения, требующего внесения изменений в основную кодовую базу PostgreSQL.
В тестах производительности TPC-C, которые моделируют нагрузку транзакционной обработки в реальных условиях, седьмая бета-версия OrioleDB показала значительное превосходство над штатным движком PostgreSQL. Тестирование проводилось с различным количеством одновременно работающих клиентов, чтобы оценить масштабируемость и производительность системы при увеличении нагрузки.
В тестах, оценивающих пропускную способность транзакций, движок OrioleDB достиг более высокой пропускной способности, измеряемой в транзакциях в минуту (tpmC). При увеличении числа клиентов производительность OrioleDB продолжала расти линейно, тогда как у движка Heap в PostgreSQL наблюдалась тенденция к стагнации и даже снижению после определенного порога.
В тестах на время отклика среднее время отклика транзакций в OrioleDB было заметно ниже по сравнению с PostgreSQL. Таким образом, системы на базе OrioleDB могут обрабатывать больше транзакций за тот же промежуток времени, обеспечивая при этом более быстрое обслуживание запросов. При измерении использования ресурсов движок OrioleDB продемонстрировал более эффективное использование CPU и памяти, благодаря оптимизированному управлению ресурсами.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62327
Выпуск Armbian 24.11, дистрибутива для одноплатных компьютеров
Опубликован выпуск Linux-дистрибутива Armbian 24.11, предоставляющего компактное системное окружение для различных одноплатных компьютеров с процессорами на базе архитектур ARM, RISC-V и x86, включая различные модели Raspberry Pi, Odroid, Orange Pi, Banana Pi, Helios64, pine64, Nanopi и Cubieboard на базе процессоров Allwinner, Amlogic, Actionsemi, Freescale / NXP, Marvell Armada, Rockchip, Radxa и Samsung Exynos.
Для формирования сборок используются пакетные базы Debian и Ubuntu, но окружение полностью пересобирается при помощи собственной сборочной системы с включением оптимизаций для уменьшения размера, увеличения производительности и применения дополнительных механизмов защиты. Например, раздел /var/log монтируется с использованием zram и хранится в ОЗУ в сжатом виде со сбросом данных на накопитель раз в день или при завершении работы. Раздел /tmp монтируется при помощи tmpfs.
Проектом поддерживается более 30 вариантов сборок ядра Linux для разных платформ ARM и ARM64. Для упрощения создания своих системных образов, пакетов и редакций дистрибутива предоставляется SDK. Для подкачки используется ZSWAP. При входе по SSH предоставляется опция для использования двухфакторной аутентификации. В состав входит эмулятор box64, позволяющий запускать программы, собранные для процессоров на базе архитектуры x86. Предлагаются готовые пакеты для запуска пользовательских окружений на базе KDE, GNOME, Budgie, Cinnamon, i3wm, Mate, Xfce и Xmonad.
Основные изменения в Armbian 24.11:
- Обновлён сборочный инструментарий (Armbian Build Framework), в котором проведена оптимизация процесса компиляции, ускорена сборка и упрощена поставка собственных прошивок
- Обновлены конфигурационные скрипты (Armbian Config Next Generation), в которых расширены возможности для управления оборудованием и сервисами.
- Обновлён пакет с ядром Linux для одноплатных компьютеров на чипах Rockchip. В новой версии улучшено управление энергопотреблением, повышена стабильность драйвера GPU и добавлена поддержка дополнительных периферийных устройств.
- Полностью переписана утилита для настройки системы - armbian-config. В новом варианте упрощён процесс настройки различных компонентов и расширены возможности по автоматизации выполнения задач.
Предоставлен новый консольный интерфейс для выполнения таких операций, как настройка сетевых подключений, изменение параметров SSH, управление оборудованием и установка/удаление пакетов.
- Упрощён процесс установки приложений, используя командную строку или интерфейс на базе меню. Например, используя конфигуратор armbian-config можно быстро установить такие пакеты, как Docker, Portainer, Pi-Hole, OpenHab и Kuma.
- Отдельно формируются готовые для установки системные образы с различными преднастроенными приложениями, которые включают минимально необходимое окружение, достаточное для работы конкретных приложений. Например, доступна сборка для развёртывания платформы домашней автоматизации Home Assistant, сборка с утилитами для проверки безопасности из Kali Linux и сборка для создания сетевых хранилищ на базе OpenMediaVault.
- Сборки для создания рабочих станций на базе одноплатных ПК сформированы с использованием сред рабочего стола KDE, GNOME и Xfce. Сборка с Xfce дополнительно оптимизирована для использования на маломощных платах. Во всех сборках используется 3D-ускорение на платах с его поддержкой, а на платах Rockchip дополнительно поддерживается воспроизведение видео с качеством 4K.
- Обеспечен платиновый уровень поддержки для плат Radxa Rock 5 ITX, Rock 5B+/5C и Bigtreetech CB1. Также представлена поддержка плат Khadas Edge2 (Allwinner), серии Khadas VIM, BananaPi CM40, BananaPi M7 (Rockchip RK3588), BananaPi F3 (RISC-V), FriendlyElec M6/T6/R6x (RK3588). Расширена поддержка устройств на чипах Mekotronics, Innovato, Libre Computer, Texas Instruments, JetHome, SmartNow и AlfredSmart.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62325
Выпуск дистрибутива NixOS 24.11, использующего пакетный менеджер Nix
Увидел свет дистрибутив NixOS 24.11, основанный на пакетном менеджере Nix и предоставляющий ряд собственных разработок, упрощающих настройку и сопровождение системы. Например, в NixOS вся настройка системы происходит посредством единого файла системной конфигурации (configuration.nix), предоставляется возможность быстрого отката системы на предыдущую версию конфигурации, присутствует поддержка переключения между различными состояниями системы, поддерживается установка индивидуальных пакетов отдельными пользователями, есть возможность одновременного использования нескольких версий одной программы, обеспечены воспроизводимые сборки. Для архитектур x86_64 и ARM64 подготовлены установочные образы с KDE (3.2 ГБ) и GNOME (2.5 ГБ), а также сокращённый консольный вариант (1.1 ГБ).
При использовании Nix результат сборки пакетов хранится в отдельном подкаталоге в /nix/store. Например, после сборки пакет firefox может записываться в /nix/store/1onlv5pc3ed6n5nskg8ew4twcfd0d5ae4ec5d4-firefox-133.0.0/, где "1onlv5pc3ed6n5nskg8ew4twcfd0d5ae4ec5d4" является хешем всех его зависимостей и инструкций сборки. Под установкой пакета подразумевается его сборка или скачивание уже собранного (при условии, что он был уже собран на Hydra - сервисе сборки проекта NixOS), а также формирование директории с символическими ссылками на все пакеты в профиле системы или пользователя, с последующим добавлении этой директории в список PATH. Аналогичный подход применяется в пакетном менеджере GNU Guix, который основан на наработках Nix. Коллекция пакетов представлена в специальном репозитории Nixpkgs.
Основные новшества:
- Добавлен 8141 пакет, удалено 3970 пакетов, обновлено 20975 пакетов. Добавлено 119 новых модулей, удалено 30 модулей. В разработке и сопровождении пакетов приняли участие 2669 разработчиков, подготовивших 49079 изменений.
- Предложены выпуски пользовательских окружений KDE Plasma 6.2 и GNOME 47. В состав включён композитный сервер Niri, использующий Wayland.
- Добавлено 63 новых сервисов, среди которых Cyrus IMAP,
Collabora Online, Music Assistant, Suricata, Apache Tika, OpenGFW, saunafs, obs-studio, Zapret, Glances, cryptpad, Pingvin Share, wg-access-server.
- В большинстве графических сеансов по умолчанию вместо PulseAudio задействован мультимедийный сервер PipeWire.
- В репозитории Nixpkgs значительно улучшена поддержка платформы macOS. Сборочное окружение переработано для поддержки родного инструментария Xcode, упрощения сборочных правил, использования штатных SDK из различных версий macOS (от macOS 10.12 до macOS 15) и избавления от лишних патчей при сборке приложений. Выпуск Nixpkgs 24.11 будет последним с поддержкой ветки macOS 10.x, начиная со следующей версии в качестве минимальной будет заявлена ветка macOS 11.
- Обновлены версии программ, например, LLVM 19, PostgreSQL 16, grafana 11.3, knot dns 3.4, qBittorrent 5, драйвер NVIDIA 560, FFmpeg 7.1, openssl 3.3, Docker 27, Xen 4.19.
- Пакетный менеджер Nix обновлён до версии 2.24, в которой улучшено извлечение кода из Git-репозиториев и добавлена поддержка документирующих комментариев.
- Добавлена поддержка Vulkan-драйвера для GPU AMD (hardware.amdgpu.amdvlk)
- В клиент для стриминга игр Moonlight добавлена возможность использования HDR в Linux.
- Добавлен сервис services.scx для использования планировщиков задач на базе подсистемы ядра sched_ext.
- Добавлена поддержка монтирования файловых систем с блочных устройств, для которых используется контроль целостности данных на базе модуля dm-verity.
- Добавлена опция virtualisation.xen для виртуализации с использованием гипервизора Xen.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62324
Выявлен UEFI-буткит Bootkitty, подставляющий вредоносный код в загружаемое ядро Linux
Исследователи из компании ESET выявили новый буткит "Bootkitty", устанавливаемый после взлома системы вместо загрузчика GRUB и применяемый для подстановки в ядро Linux вредоносных компонентов, которые затем позволяют атакующему скрыто контролировать систему и выполнять в ней свои действия. Утверждается, что это первый UEFI-буткит, нацеленный на поражение систем Linux.
Bootkitty размещается в файле grubx64.efi в системном разделе EFI (EFI system partition, /boot/efi/EFI/ubuntu) вместо штатного загрузчика GRUB. После активации UEFI-прошивкой буткит загружает в память реальный загрузчик GRUB2 и вносит в размещённый в памяти код GRUB2 изменения, отключающие проверку целостности компонентов, загружаемых в дальнейшем, а также добавляет обработчик, вызываемый после распаковки образа ядра Linux в память. Указанный обработчик вносит изменения в загруженные в память функции ядра (отключает проверку модулей по цифровой подписи), а также изменяет строку запуска процесса инициализации с "/init" на "LD_PRELOAD=/opt/injector.so /init)".
Библиотека injector.so перехватывает некоторые операции SELinux и функцию init_module, которая затем используется для загрузки модуля ядра /opt/dropper.ko. Модуль ядра dropper.ko создаёт и запускает исполняемый файл /opt/observer, затем скрывает себя в списке модулей ядра и выставляет обработчики системных вызовов, таких как getdents и tcp4_seq_show, для скрытия файла /opt/observer и определённого сетевого трафика. Исполняемый файл /opt/observer загружает модуль ядра /opt/rootkit_loader.ko, который является загрузчиком руткита /opt/rootkit.
Для установки буткита требуется привилегированный доступ к системе и обычно подобные виды вредоносного ПО используются атакующими после успешного взлома или компрометации системы для закрепления своего дальнейшего присутствия и скрытия осуществляемой вредоносной активности. Библиотека injector.so и вредоносные модули ядра помещаются в образ начального RAM-диска или файловую систему атакующим. Загрузчик grubx64.efi размещается в раздел с файлами для UEFI.
В варианте Bootkitty, попавшем в руки исследователей, модификация функций в памяти ядра производилась по заранее определённым смещениям без проверки корректности этих смещений для загруженной версии ядра. используемые в Bootkitty смещения были применимы лишь к версиям ядра и GRUB, поставляемым в определённых выпусках Ubuntu, а в остальных системах приводили к сбою при загрузке. Для верификации загрузчика Bootkitty (grubx64.efi) использовался самоподписанный сертификат, что не позволяло применять буткит на системах с включённым режимом UEFI Secure Boot без установки сертификата атакующего в список заслуживающих доверия сертификатов в UEFI. Подобные особенности натолкнули исследователей на мысль, что Bootkitty лишь прототип буткита, пока не применяемый для реальных атак.
Изучив опубликованную ESET информацию исследователи из компании Binarly REsearch заметили среди связанных с Bootkitty артефактов BMP-изображения, используемые для эксплуатации уязвимости LogoFAIL, позволяющей выполнить код на уровне UEFI-прошивки и обойти механизм UEFI Secure Boot. В контексте Bootkitty эксплуатация уязвимости LogoFAIL применялась для добавления в список одобренных сертификатов UEFI самоподписанного сертификата атакующего, которым заверен загрузчик буткита grubx64.efi, что позволяло запустить буткит на системах c активным UEFI Secure Boot без добавления сертификата вручную.
Атака осуществляется через размещение в разделе ESP (EFI System Partition) специально оформленного изображения в формате BMP для его вывода UEFI-прошивкой в качестве логотипа производителя. Из-за использования в UEFI-прошивках уязвимых библиотек для работы с изображениями, обработка специально оформленного изображения может привести к переполнению буфера и выполнению кода с привилегиями прошивки UEFI. Уязвимость LogoFAIL была выявлена год назад и затрагивала UEFI-прошивки, среди прочего используемые на ноутбуках Acer, HP, Fujitsu и Lenovo. В новых версиях UEFI-прошивок проблема устранена, но многие находящиеся в обиходе устройства продолжают работать с уязвимыми версиями прошивок.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62321
Обнаружено вредоносное ПО, использующее игровой движок Godot как платформу для запуска
Компания Checkpoint сообщила о выявлении вредоносного ПО GodLoader, написанного на языке GDScript и использующего открытый игровой движок Godot для своего выполнения (движок Godot применяется как платформа для запуска). Написание кода на GDScript позволило распространять вредоносные программы среди любителей компьютерных игр под видом модов к играм и игровых ресурсов в формате pck, обрабатываемых движком Godot. Использование GDScript также дало возможность не зависеть от операционной системы, которая установлена у пользователя (Windows, macOS, Linux, Android и iOS).
Так как для выполнения программ на GDScript требуется наличие движка Godot, основной целью атаки были пользователи игр на данном движке. Самые ранние варианты нового вредоносного ПО датированы 29 июня. Всего зафиксировано более 17 тысяч систем поражённых GodLoader. Как правило жертвы атаки загружали со сторонних ресурсов и подставных репозиториев на GitHub непроверенные pck-архивы c интегрированным GodLoader. После выполнения размещённого в архиве скрипта на языке GDScript, GodLoader осуществлял загрузку и запуск дополнительных вредоносных компонентов, совершающих такие действия как майнинг криптовалюты и отправку с системы пользователя сохранённых паролей и ключей доступа.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62323
Выпуск интегрированной среды разработки Red Panda C++ 3.2
Опубликован выпуск проекта Red Panda C++ 3.2, легковесной интегрированной среды разработки для языков C, C++ и GNU Assembly. Red Panda C++ продолжает развитие IDE Dev-C++, которая была переписана с Delphi на С++ с использованием библиотеки Qt. Код проекта
распространяется под лицензией GPLv3. Изначально среда разработки Dev-C++ поддерживала только платформу Windows, но в Red Panda C++ добавлена поддержка платформ Linux и macOS.
Из особенностей Red Panda C++ можно отметить автодополнение кода, проверку синтаксиса во время редактирования, возможность сворачивания блоков кода, автоформатирование; отладчик с поддержкой стека вызовов и интерфейсом для просмотра содержимого памяти; использование тем оформления и цветовых схем; наличие тёмного режима интерфейса; интерфейс для ведения списков задач (TODO) и закладок; гибкие функции поиска и замены; возможности для проведения рефакторинга (переименования переменных, классов, методов и функций).
Среди изменений в новой версии:
- Реализована поддержка строковых литералов с префиксами LR/UR/uR/u8R.
- Улучшено определением информации об установленном наборе компиляторов GCC.
- Улучшены операции копирования и экспорта в формате HTML, добавлена возможность указания номеров строк при экспорте.
- Добавлена поддержка копирования содержимого, используя комбинацию Ctrl+Drag/Drop.
- В настройки добавлена кнопка "Copy Compiler Set" для копирования состава набора инструментов компилятора.
- В отладчике реализовано автоматическое переключение фокуса на панель трассировки стека в случае остановки выполнения на позиции, не связанной с файлами с исходным кодом.
- Изменены отступы в диалоге поиска и замены. Обеспечено выставление фокуса на поле ввода при открытии диалога поиска и замены.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62322
В KDE повышена надёжность работы при наличии сбойных виджетов
Нейт Грэм (Nate Graham), разработчик, занимающийся контролем качества в проекте KDE, опубликовал очередной отчёт о разработке KDE. В кодовую базу, на основе которой будет сформирован корректирующий выпуск KDE Plasma 6.2.5, внесено изменение, нацеленное на предотвращение аварийного завершения всей оболочки в случае сбоев в отдельных виджетах. Некоторые проблемы в виджетах, из-за которых ранее происходили крахи оболочки KDE Plasma, теперь ограничиваются выводом ошибки. Кроме того, проведена работа по повышению надёжности обработки некорректно оформленных файлов с расширением ".desktop". В композитном менеджере KWin обеспечена устойчивость к крахам из-за отправки приложениями некорректных метаданных HDR.
Из исправленных ошибок отмечается решение проблемы в Plasma, приводившей к аварийному завершению в случае отклонения пользователем уведомления об изменении состоянии сети, а также устранение краха KWin после исчерпания доступных файловых дескрипторов на системах с драйверами для GPU, отличных от Intel. Кроме того, устранён крах конфигуратора, возникавший в случае подключения мыши при открытой странице настройки мыши.
Среди улучшений, подготовленных на этой неделе для KDE 6.3.0 и KDE Frameworks 6.9:
- В конфигураторе на странице с настройками KWin предоставлена возможность временного отключения правил с переопределением атрибутов окон приложений (KWin Window Rules). Ранее для прекращения действия подобных правил их можно было только удалить.
- В виджете, показывающем в панели список открытых окон (Task Manager), реализована возможность показа обычных текстовых всплывающих подсказок, в случае отключения в настройках показа эскизов содержимого окна.
- В виджете "Power and Battery" реализован вывод уведомления о низком заряде аккумулятора беспроводных наушников, предоставляющих корректную информацию о состоянии аккумулятора.
- Длительность эффекта "выезжающих окон" в KWin ("Slide Back") приближена к другим эффектам и анимациям. Кроме того, поведение эффекта сделано более предсказуемым при выставлении нестандартных настроек скорости анимации.
- В дистрибутивах на базе Ubuntu при использовании темы Breeze задействована символьная пиктограмма с информацией о наличии обновлений в системе, соответствующая по стилю другим пиктограммам. Изменение внесено в ветку KDE Frameworks 6.9.
- В кодовую базу на основе которой формируется выпуск Qt 6.9.0 добавлена возможность отображения цветных emoji в сочетании с черно-белым текстом при выставленных в KDE Plasma настройках шрифта по умолчанию. Улучшена визуализация операции изменения размера окон приложений на базе Qt Quick.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62320
Оценка потребления памяти при одновременном запуске миллиона задач
Опубликованы результаты тестирования потребления памяти при выполнении кода, создающего миллион параллельно выполняемых сопрограмм. Тестирование проведено для типовой программы, реализованной на языках программирования Rust, C#, Go, Java, Python и JavaScript.
В Rust задачи создавались с использованием фреймворка Tokio и на базе библиотеки async_std, в C# - API List‹Task›(), JavaScript - async/await в Node.js, Python - asyncio, Go - goroutine, Java - сопрограммы. Используемые версии и конфигурация: Rust 1.82, .NET 9.0.100 с NativeAOT,
Go 1.23.3, OpenJDK/GraalVM 23.0.1, NodeJS 23.2.0, Python 3.13.0.
Результаты:
- Запуск одной задачи для оценки потребления памяти в runtime.
- Запуск 10 тысяч задач.
- Запуск 100 тысяч задач.
- Запуск миллиона задач.
- Похожий прошлогодний тест с запуском миллиона задач.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62314
Релиз мобильной платформы Ubuntu Touch OTA-7 Focal
Проект UBports, который взял в свои руки разработку мобильной платформы Ubuntu Touch, после того как от неё отстранилась компания Canonical, представил прошивку OTA-7 Focal (over-the-air). Это седьмой выпуск Ubuntu Touch, основанный на пакетной базе Ubuntu 20.04. Проектом также развивается экспериментальный порт рабочего стола Unity 8, который переименован в Lomiri. Обновление Ubuntu Touch OTA-7 Focal в ближайшие дни будет сформировано для устройств
Asus Zenfone Max Pro M1, F(x)tec Pro1 X, Fairphone 3/3+/4, Google Pixel 3a/3a XL, JingPad A1, Oneplus 5/5T/6/6T, OnePlus Nord N10 5G/N100, Sony Xperia X, Vollaphone X/22/X23 и Xiaomi Poco X3 NFC / X3.
Выпуск Ubuntu Touch OTA-7 Focal сформирован вне графика и содержит только исправления ошибок и устранение уязвимости, затрагивающей звуковой сервер PulseAudio. Уязвимость даёт возможность изолированным приложениям обойти ограничения, получить доступ к микрофону и организовать скрытую от пользователя запись звука. Вторая проблема позволяет вызвать аварийное завершение PulseAudio через изменение громкости виртуального устройства, если к системе подключены Bluetooth-наушники. Обе проблемы вызваны ошибками в патчах к PulseAudio, специфичных для Ubuntu Touch.
В новом выпуске также предложены исправления к libgbinder, в конфигураторе lomiri-system-settings обеспечен показ панель настройки печати при наличии работающего сервера CUPS и решены проблемы с переподключением внешнего монитора.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62319
Выпуск Rust 1.83. Развитие инструментария Xen и табличного процессора на Rust
Опубликован релиз языка программирования общего назначения Rust 1.83, основанного проектом Mozilla, но ныне развиваемого под покровительством независимой некоммерческой организации Rust Foundation. Язык сфокусирован на безопасной работе с памятью и предоставляет средства для достижения высокого параллелизма выполнения заданий, при этом обходясь без использования сборщика мусора и runtime (runtime сводится к базовой инициализации и сопровождению стандартной библиотеки).
Методы работы с памятью в Rust избавляют разработчика от ошибок при манипулировании указателями и защищают от проблем, возникающих из-за низкоуровневой работы с памятью, таких как обращение к области памяти после её освобождения, разыменование нулевых указателей, выход за границы буфера и т.п. Для распространения библиотек, обеспечения сборки и управления зависимостями проектом развивается пакетный менеджер Cargo. Для размещения библиотек поддерживается репозиторий crates.io.
Безопасная работа с памятью обеспечивается в Rust во время компиляции через проверку ссылок, отслеживание владения объектами, учёт времени жизни объектов (области видимости) и оценку корректности доступа к памяти во время выполнения кода. Rust также предоставляет средства для защиты от целочисленных переполнений, требует обязательной инициализации значений переменных перед использованием, лучше обрабатывает ошибки в стандартной библиотеке, применяет концепцию неизменяемости (immutable) ссылок и переменных по умолчанию, предлагает сильную статическую типизацию для минимизации логических ошибок.
Основные новшества:
- Добавлены новые возможности для кода в контексте "const", вычисляемого на этапе компиляции и пригодного для использования вместо констант. Добавлена возможность определения с признаком "const" ссылок на значения, инициализированные с признаком "static", при условии, что ссылка выставляется на не изменяемые статические переменные (без признака "mut"). При этом возможно использование в качестве констант raw-указателей, указывающих на изменяемый элемент. Например:
static S1: i32 = 25;
static mut S2: i32 = 64;
const C1: &i32 = &S1; // Ok
const C2: i32 = unsafe { S2 }; // ошибка
const C3: &i32 = unsafe { &S2 }; // ошибка
const C4: *mut i32 = &raw mut S2; // Ok
- Разрешено использование в контексте констант изменяемых ссылок и указателей (c признаком "mut"), но подобные изменяемые ссылки и указатели допускаются только внутри блока для вычисления константы, но не могут указываться в финальном значении константы. Например:
const fn inc(x: &mut i32) {
*x += 1;
}
const C1: i32 = {
let mut c = 41;
inc(&mut c);
c
};
const C2: &mut i32 = &mut 4; // ошибка, использование в финальном значении запрещено
- Стабилизировано применение &Cell и *const Cell в контексте констант.
- Признак "const" применён в функциях:
- В разряд стабильных переведена новая порция API, в том числе стабилизированы методы и реализации типажей:
- Реализован третий уровень поддержки для платформ
aarch64_unknown_nto_qnx700,
arm64e-apple-tvos,
armv7-rtems-eabihf,
loongarch64-unknown-linux-ohos,
riscv32-wrs-vxworks and riscv64-wrs-vxworks,
riscv32{e|em|emc}-unknown-none-elf,
x86_64-unknown-hurd-gnu и
x86_64-unknown-trusty. Третий уровень подразумевает базовую поддержку, но без автоматизированного тестирования, публикации официальных сборок и проверки возможности сборки кода.
- Требования к минимальной внешней версии LLVM подняты до ветки 18. Прекращена поддержка компилятора Visual Studio 2013.
Дополнительно можно отметить несколько проектов на языке Rust:
- Разработчики платформы XCP-ng, развиваемой проектом Xen, опубликовали отчёт о развитии проекта по созданию нового низкоуровневого инструментария для гипервизора Xen, написанного на языке Rust и идущего на смену libxl. Инструментарий планируют задействовать в платформе XCP-ng для низкоуровневого управления хост-окружением и гостевыми системами. В настоящее время работа сосредоточена на создании crate-пакетов на языке Rust, способных заменить Си-библиотеки из пакета xen-libs. Например, ведётся работа над созданием Rust-аналогов библиотек xenctrl и xeneventchan с реализацией интерфейса для гипервызовов Xen и каналов обработки событий.
- Проект IronCalc развивает движок для создания табличных процессоров, написанный на языке Rust, а также сопутствующий инструментарий для работы с электронными таблицами. Движок рассчитан на встраивание в приложения на языках программирования Rust, Python и JavaScript (возможно появится поддержка R, Julia и Go). Поддерживается встраивание как пользовательского интерфейса для создания и редактирования электронных таблиц (стиль и оформление настраивается по желанию разработчиков), так и средств автоматизации работы с электронными таблицами. Предоставляются компоненты для манипуляции электронными таблицами в графическом режиме, консоли и в web-приложениях. Заявлено стремление к обеспечению полной совместимости с файлами в формате Microsoft Excel. Код проекта распространяется под лицензиями MIT и Apache 2.0. Доступна online-демонстрация, работающая в браузере.
На текущем этапе развития IronCalc можно рассматривать как рабочий прототип, формирующий интерфейс для работы через браузер,
поддерживающий около 200 функций, позволяющий управлять стилем и форматированием ячеек, обеспечивающий импорт и экспорт в формате xlsx, поддерживающий интеграцию с программами на Rust и Python. В версии IronCalc 1.0 планируется добиться 90% совместимости с Excel.
- Опубликован выпуск проекта uutils coreutils 0.0.28, развивающего аналог пакета GNU Coreutils, переписанный на языке Rust. В состав coreutils входит более ста утилит, включая sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln и ls. Целью проекта является создание кроссплатформенной альтернативной реализации Coreutils, способной работать в том числе на платформах Windows, Redox и Fuchsia. В отличие от GNU Coreutils реализация на Rust распространяется под пермиссивной лицензией MIT, вместо копилефт-лицензии GPL.
В новой версии uutils улучшена совместимость с эталонным тестовым набором GNU Coreutils, при прохождении которого успешно выполнено 476 тестов (на 21 больше, чем в прошлой версии), 94 тестов пока не удаётся пройти. Проведена оптимизация утилит cksum, mkdir и tr. Расширены возможности, улучшена совместимость и добавлены недостающие опции для утилит basenc, cat, cksum, cp, date, dd, dircolors, echo, hashsum, hostname, join, ls, ln, mkdir, mv, od, paste, printf, runcon, sort, sync, test, uptime, users, tr, tsort, uucore.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62317
Выпуск OpenMoHAA 0.80.0, первой бета-версии открытого движка для игры Medal of Honor: Allied Assault
Доступен выпуск проекта OpenMoHAA 0.80.0, воссоздающего движок для игры "Medal of Honor: Allied Assault", используя в качестве основы открытый движок ioquake3. Для вывода графики задействован бэкенд на базе библиотеки SDL2, а для вывода звука поддерживается OpenAL или SDL. Код проекта распространяется под лицензией GPLv2. Готовые сборки сформированы для платформ Linux и Windows.
Релиз OpenMoHAA 0.80.0 отмечен как первый, достигший достаточного уровня готовности для перехода проекта в стадию бета-выпусков - заявляется, что однопользователськая компания оригинальной игры и двух её дополнений Spearhead и Breakthrough полностью проходимы. На стороне сервера поддерживаются боты, блокировка по IP, подключение по IPv6, защита от флуда и возможность использования текстового и голосового чата.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62313
Выпуск Snek 1.10, Python-подобного языка программирования для встраиваемых систем
Кит Паккард (Keith Packard), активный разработчик Debian, лидер проекта X.Org и создатель множества X-расширений, включая XRender, XComposite и XRandR, опубликовал новый выпуск языка программирования Snek 1.10, позиционируемого как упрощённый вариант языка Python, адаптированный для использования на встраиваемых системах, на которых недостаточно ресурсов для использования MicroPython и CircuitPython. Snek не претендует на полноценную поддержку языка Python, но может использоваться на чипах, имеющих всего 2КБ ОЗУ, 32 КБ Flash-памяти и 1КБ EEPROM. Код проекта распространяется под лицензией GPLv3. Сборки подготовлены для Linux, Windows и macOS.
В языке Snek используется семантика и синтаксис Python, но поддерживается лишь ограниченное подмножество возможностей. Одной из целей, которая учитывается при разработке, является сохранение обратной совместимости - программы на Snek могут выполняться с использованием полноценных реализаций Python 3.
Для разработки приложений на Snek может использоваться редактор кода Mu (патчи для поддержки) или собственная консольная интегрированная среда разработки Snekde, которая написана с использованием библиотеки Curses и предоставляет интерфейс для редактирования кода и взаимодействия с устройством через USB-порт (можно сразу сохранять программы в eeprom устройства и загружать код с устройства).
Snek портирован для различных встраиваемых устройств, включая платы Arduino, Feather/Metro M0 Express, Adafruit Crickit, Adafruit ItsyBitsy, Lego EV3 и µduino, предоставляет доступ к GPIO и периферийным устройствам. Проектом также разработан собственный открытый микроконтроллер Snekboard (ARM Cortex M0 с 256КБ Flash и 32КБ ОЗУ), рассчитанный на использование со Snek или CircuitPython, и нацеленный на обучение и создание роботов с использованием деталей LEGO.
В новом выпуске:
- Добавлена поддержка использования 512-байтового загрузчика ubaboot на платах ATmega 32u4.
- В глобальное пространство имён перенесены функции, связанные с математическими вычислениями, временем и генерацией псевдослучайных чисел (модули "math", "time" и "random"), которые теперь можно использовать без префиксов "math.", "time." и "random.".
- Компоненты для поддержки микроконтроллеров AVR адаптированы для новой avr libc и компилятора gcc-avr на базе gcc 14.
- Для всех поддерживаемых устройств предложены унифицированные реализации генераторов псевдослучайных чисел snek-random.c и snek-random-small.c (вариант без 64-разрядной арифметики для маломощных устройств).
Источник: https://www.opennet.ru/opennews/art.shtml?num=62315
В пакетном менеджере APT 2.9.15 прекращено использование apt-key
Опубликован выпуск инструментария для управления пакетами APT 2.9.15 (Advanced Package Tool). Ветка 2.9.x является экспериментальной и используется для разработки функциональности будущей стабильной версии APT 3.0, которая после стабилизации будет интегрирована в Debian Testing и войдёт в следующий значительный релиз Debian, а также будет добавлена в пакетную базу Ubuntu.
Ключевым изменением в новой версии стало окончательное прекращение использования утилиты apt-key для управления ключами, применяемыми для верификации цифровых подписей пакетов. Утилита apt-key несколько лет назад была объявлена устаревшей в связи с уходом от старой модели проверки целостности пакетов, в которой использовалось общее хранилище ключей (/etc/apt/trusted.gpg) и отсутствовала привязка ключей к репозиториям, т.е. ключ, добавленный для какого-то стороннего репозитория, подходил для проверки пакетов во всех репозиториях. Пришедший на смену apt-key метод работы с ключами подразумевает разделение хранилищ ключей для каждого репозитория (/etc/apt/trusted.gpg.d/ или /etc/apt/keyrings/).
Другие изменения:
- В список путей для вызова gpg добавлена написанная на языке Rust утилита gpg-sq, принимающая те же аргументы, что и утилита gpg, но имитирующая её работу через Sequoia, реализацию OpenPGP на языке Rust. Вызов gpg-sq является более приоритетным, чем gpg, т.е. для использования gpg-sq вместо gpg достаточно установить соответствующий пакет.
- Обеспечена привязка типов ключей к расширениям файлов: расширение ".asc" связано с ascii-armored ключами, ".gpg" - всегда с бинарными ключами, а все остальные файловые расширения вызовут ошибку "The key(s) in the keyring ... are ignored as the file has an unsupported filetype". Например, при использовании файла с ключом "/etc/apt/keyrings/winehq-archive.key", его нужно будет переименовать в "/etc/apt/keyrings/winehq-archive.gpg" и исправить путь в файле в "/etc/apt/sources.list.d/".
- Многие функции переведены на использование класса "std::string" вместо "const char *" (определённый в стандарте С++17 класс std::string_view, более эффективно работающий со строками за счёт использования ссылок на существующие данные и исключения лишнего копирования данных, пока не задействован в коде).
- Реализована поддержка самостоятельной проверки хранилищ ключей (keyring) и выполнения операции dearmor (преобразование ключа в формате ASCII-armored в бинарный формат) без обращения к apt-key.
- Добавлена функция Base64Decode.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62312
Выпуск среды рабочего стола Cinnamon 6.4
После 6 месяцев разработки сформирован релиз среды рабочего стола Cinnamon 6.4, в рамках которой сообществом разработчиков дистрибутива Linux Mint развивается форк оболочки GNOME Shell, файлового менеджера Nautilus и оконного менеджера Mutter, нацеленный на предоставление окружения в классическом стиле GNOME 2 с поддержкой удачных элементов взаимодействия из GNOME Shell. Cinnamon основывается на компонентах GNOME, но эти компоненты поставляются как периодически синхронизируемый форк, не связанный внешними зависимостями с GNOME. Новый выпуск Cinnamon будет предложен в дистрибутиве Linux Mint 22.1, который планируется выпустить во второй половине декабря.
Основные новшества:
- Предложена новая тема оформления, которая отличается использованием более тёмных цветов, более выраженным контрастом, скруглением элементов интерфейса и увеличенными отступами между апплетами и панелью.
- Изменено оформление апплета с календарём.
- Изменено оформление диалоговых окон. Добавлена возможность использования цветных кнопок в диалогах.
- Для отрисовки ключевых всплывающих диалоговых окон задействована библиотека Clutter.
- Переделан диалог для принудительного завершения работы приложений, показываемый в случае зависания программы и прекращения её реагирования на действия пользователя.
- Модернизирован внешний вид экранных индикаторов (OSD), используемых при изменении яркости и громкости медиа-кнопками, а также при переключении виртуальных рабочих столов.
- Интегрирован режим ночной подсветки ("Night Light"), который меняет цветовую температуру в зависимости от времени суток и может использоваться в окружениях на базе X11 и Wayland. Например, при работе в ночное время автоматически уменьшается интенсивность синего цвета на экране, что делает цветовую гамму более тёплой для снижения напряжения глаз и сокращения факторов возникновения бессонницы при работе перед сном.
- Переработано оформление диалогов системы уведомлений. Сокращены горизонтальные отступы между кнопками. Добавлена опция для показа уведомлений в полноэкранном режиме.
- Улучшен интерфейс смены задач по Alt-tab. Добавлена опция для показа только окон, размещённых на текущем мониторе. Переделана работа со свёрнутыми окнами.
- Обновлён стиль и увеличены отступы в основном меню. Добавлена поддержка навигации по меню с использованием клавиш управления курсором на цифровой клавиатуре. Упрощена анимация при работе с меню.
- Налажен предпросмотр изображений в формате JPEG-XL.
- Предложен новый апплет статусной строки.
- Добавлен новый виджет ввода пароля.
- В модуле power реализована поддержка профилей энергопотребления.
Добавлена поддержка DBus-интерфейса для управления профилями энергопотребления.
- Добавлена опциональная возможность установки сессионных файлов для Wayland.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62310
Доступен дистрибутив Proxmox Backup Server 3.3
Компания Proxmox, известная разработкой продуктов Proxmox Virtual Environment и Proxmox Mail Gateway, опубликовала выпуск дистрибутива Proxmox Backup Server 3.3, который преподносится как готовое решение для резервного копирования и восстановления виртуальных окружений, контейнеров и начинки серверов. Установочный ISO-образ доступен для свободной загрузки. Специфичные для дистрибутива компоненты открыты под лицензией AGPLv3. Для установки обновлений доступен как платный репозиторий Enterprise, так и два бесплатных репозитория, которые отличаются уровнем стабилизации обновлений.
Системная часть дистрибутива базируется на пакетной базе Debian и OpenZFS. Программный стек для управления резервным копированием написан на языке Rust и поддерживает инкрементальные бэкапы (на сервер передаются только изменившиеся данные), дедупликацию (при наличии дубликатов хранится только одна копия), сжатие (используется ZSTD) и шифрование резервных копий. Система спроектирована на базе клиент-серверной архитектуры - Proxmox Backup Server может использоваться как для работы с локальными резервными копиями, так и в качестве централизованного сервера для резервного копирования данных с разных хостов. Предоставляются режимы быстрого выборочного восстановления и синхронизации данных между серверами.
Proxmox Backup Server поддерживает интеграцию с платформой Proxmox VE для резервного копирования виртуальных машин и контейнеров. Управление резервными копиями и восстановление данных осуществляется через web-интерфейс. Имеется возможность разграничения доступа пользователей к своим данным. Весь передаваемый трафик от клиентов к серверу шифруется с использованием AES-256 в режиме GCM, а сами резервные копии передаются уже зашифрованными при помощи асимметричного шифрования по открытым ключам (шифрование производится на стороне клиента, и компрометация сервера с резервными копиями не приведёт к утечке данных). Целостность резервных копий контролируется при помощи хэшей SHA-256.
В новом выпуске:
- Осуществлена синхронизация с пакетной базой Debian 12.8. Ядро Linux обновлено до выпуска 6.8.12. В качестве опции добавлен пакет с ядром 6.11. Реализация файловой системы ZFS обновлена до версии OpenZFS 2.2.6.
- Добавлена поддержка режима "push" для синхронизированных работ (sync jobs), позволяющего копировать снапшоты с резервными копиями из локального хранилища во внешнее хранилище на базе Proxmox Backup Server, что полезно в ситуациях, когда внешний сервер не может инициировать соединение к локальному. В ранее поддерживаемом режиме "pull" внешний сервер забирал резервные копии с локального хранилища, а в новом режиме "push" локальный сервер сам отправляет бэкапы на внешний.
- Добавлена поддержка хранилищ на извлекаемых носителях информации. Среди прочего извлекаемое хранилище, созданное на одном сервере, может быть подключено к другим серверам на базе Proxmox Backup Server. Монтирование и отмонтирование извлекаемых хранилищ может осуществляться как через web-интерфейс, так и из командной строки.
- Добавлена поддержка отправки HTTP-запросов для передачи на другой сервер событий из системы уведомлений. Например, подобные запросы могут содержать сведения о синхронизированных работах, верификации бэкапов и удалении устаревших бэкапов. Форма HTTP-запроса для передачи метаданных о событии может быть настроена пользователем.
- Добавлены новые режимы определения изменений, позволяющие ускорить операции резервного копирования. Данные и метаданные снапшотов резервных копий теперь разделены по разным архивам, что позволяет на основе архива с метаданными быстро определять файлы, изменившиеся со времени создания прошлой резервной копии, и исключать не изменившиеся файлы при создании новой резервной копии.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62308
Выпуск дистрибутива Tails 6.10
Представлен релиз специализированного дистрибутива Tails 6.10 (The Amnesic Incognito Live System), развиваемого в составе проекта Tor. Дистрибутив основан на пакетной базе Debian 12, поставляется с рабочим столом GNOME 43 и предназначен для анонимного выхода в сеть при помощи инструментария Tor. Все соединения, кроме трафика через сеть Tor, по умолчанию блокируются пакетным фильтром. Для хранения пользовательских данных в режиме сохранения пользовательских данных между запусками применяется шифрование. Для загрузки подготовлен iso-образ, способный работать в Live-режиме, размером 1 ГБ.
В новой версии обновлены Tor Browser 14.0.3 и почтовый клиент Thunderbird 128.4.3 (ранее использовалась ветка 115.x). В Thunderbird отключено сохранение данных телеметрии. В
bitcoin-кошельке Electrum налажена поддержка аппаратных криптокошельков Trezor. Решены проблемы с запуском рабочего стола на системах с небольшим объёмом оперативной памяти.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62309
Выпуск fheroes2 1.1.4, открытого движка Heroes of Might and Magic 2
Доступен выпуск проекта fheroes2 1.1.4, который воссоздаёт движок игры Heroes of Might and Magic II с нуля. Код проекта написан на C++ и распространяется под лицензией GPLv2. Для запуска игры требуются файлы с игровыми ресурсами, которые можно получить из оригинальной игры Heroes of Might and Magic II.
Основные
изменения:
- Добавлена виртуальная цифровая клавиатура для ввода количества существ в диалогах разделения стека.
- Исправлена логика передвижения героев вокруг некоторых объектов на карте, чтобы соответствовать оригинальной игре.
- В редакторе карт была добавлена новая разновидность объекта "навес", чтобы её можно было размещать на других типах территорий. Ранее, он был только в заснеженном исполнении.
- ИИ в бою перестал гоняться за летающими и быстрыми существами, фокусируясь больше на стрелковых отрядах.
- Стрелковые отряды под управлением ИИ больше не будут врукопашную атаковать блокирующий ослеплённый отряд, отдавая предпочтение маневрированию.
- Для "злого" стиля интерфейса было добавлено окно описания сценария в нужной цветовой схеме, которое изначально было только в "добрых" тонах (коричневом и бежевом).
- Улучшены переводы на многие языки и добавлена виртуальная клавиатура со спецсимволами для белорусского языка.
Команда fheroes2 сейчас в активных поисках помощи от художников, способных работать в стиле "пиксель-арт". В игре есть множество задач на разный уровень сложности, от небольших иконок или кнопок, до крупных объектов и полноценных анимированных объектов или существ.
Желающие поучаствовать в разработке и помочь проекту могут написать в личные сообщения в discord или на почту проекта - fhomm2@gmail.com.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62306
Уязвимость в tuned, позволяющая выполнить код с правами root
В развиваемом компанией Red Hat фоновом процессе tuned, выполняющем автоматическую оптимизацию настроек оборудования и ядра в зависимости от текущей нагрузки, выявлена уязвимость (CVE-2024-52336), позволяющая локальному непривилегированному пользователю выполнить любые команды с правами root.
Проблема присутствует в реализации DBus-метода "com.redhat.tuned.instance_create", применяемого для создания экземпляров плагинов, в который можно передать параметры "script_pre" и "script_post" для указания скриптов, выполняемых перед или после создания экземпляра плагина. Проблема в том, что настройки Polkit позволяют любому вошедшему в систему локальному пользователю без аутентификации отправить DBus-запрос к данному методу, в то время как сам процесс tuned выполняется с правами root и запускает отмеченные в параметрах "script_pre" и "script_post" скрипты тоже с правами root. Например, для запуска скрипта /path/to/myscript.sh с правами root пользователю достаточно выполнить команду:
gdbus call -y -d com.redhat.tuned -o /Tuned \
-m com.redhat.tuned.control.instance_create cpu myinstance \
'{"script_pre": "/path/to/myscript.sh", "devices": "*"}'
В DBus-методе "com.redhat.tuned.instance_create" также присутствует менее опасная уязвимость (CVE-2024-52337), вызванная отсутствием чистки значения с именем экземпляра плагина при его выводе в лог. Атакующий может добавить имя, содержащее перевод строки и escape-символы для эмулятора терминала, которые могут использоваться для нарушения структуры лога и выполнения действий при отображении вывода команды "tuned-adm get_instances" в терминале.
EVIL=`echo -e "this is\nevil\033[?1047h"`
gdbus call -y -d com.redhat.tuned -o /Tuned -m com.redhat.tuned.control.instance_create cpu "$EVIL" '{"devices": "*"}'
Уязвимости проявляются начиная с версии tuned 2.23, сформированной в начале июня 2024 года, и устранены в выпуске tuned 2.24.1. Из крупных дистрибутивов проблемы исправлены в RHEL 9, Fedora 40, Arch Linux и Gentoo. В стабильных ветках Ubuntu, Debian и SUSE/openSUSE уязвимости не проявляются, так как в них поставляются старые версии tuned (‹2.23), не подверженные уязвимостям.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62307
Проект OpenStreetMap перевёл серверную инфраструктуру с Ubuntu на Debian
Проект OpenStreetMap объявил о переводе серверов в своей инфраструктуре на Debian GNU/Linux. До этого в течение 18 лет на серверах проекта использовался дистрибутив Ubuntu. Миграция производилась постепенно начиная с августа и привела к замене имеющихся установок Ubuntu 20.04 и 22.04 на Debian 12. Переход также позволил обновить язык Ruby с версии 3.0 до версии 3.1, и задействовать более новый выпуск фрейворка Ruby on Rails, что привело к ускорению работы сервиса www.openstreetmap.org.
Среди причин миграции:
- Проблемы с сопровождением в Ubuntu некоторых пакетов, импортируемых из Debian, таких как Apache2, что требовало бэкпортирования новой версии для решения проблем в MPM-модуле (Multi-Processing Modules) event.
- Возникновение проблем из-за того, что некоторые пакеты в Ubuntu поставляются только в формате snap.
- Сопровождение Debian в течение 5 лет с более качественной поддержкой полной экосистемы пакетов (в Ubuntu обновления для некоторых пакетов из репозитория universe доступны только по подписке Ubuntu Pro).
- Возможность использования в Debian пакетов из бэкпортов с новыми версиями ядра Linux, решающими имеющиеся проблемы с производительностью ввода/вывода на система с накопителями NVMe.
- Желание быть ближе к мэйнейнерам пакетов из сообщества Debian, используемых в проекте OpenStreetMap, таких как osm2pgsql и osmium-tool.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62305
Firefox перешёл на использование формата XZ для распространения Linux-сборок
Разработчики Firefox объявили о переходе на использование формата XZ, базирующегося на алгоритме сжатия LZMA, для распространения сборок браузера для платформы Linux. Отмечается, что по сравнению с архивами
".tar.bz2" поставка сборок в формате ".tar.xz" даст возможность значительно сократить размер загружаемых данных и уменьшить время распаковки. Начиная со вчерашнего дня формирование ночных сборок Firefox в формате bz2 прекращено, а сборки релизов и бета-версий будут переведены на формат xz в ближайшие недели. Мэйнтейнерам пакетов в дистрибутивах рекомендовано внести изменения в свои сборочные системы и обеспечить в них поддержку загрузки архивов ".tar.xz".
При использовании XZ размер сборок Firefox в среднем уменьшился на 25%, а операции распаковки выполняются более чем в два раза быстрее. В качестве варианта также рассматривался переход на формат Zstandard (.zst), но выбор был сделан в пользу формата XZ, который немного медленнее при распаковке, но при этом обеспечивает более высокий уровень сжатия и более распространён в дистрибутивах Linux.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62304