The OpenNET Project / Index page

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

·13.06 Google переводит ChromeOS на компоненты платформы Android (73 +2)
  Компания Google объявила о работе по переводу операционной системы Chrome OS на вариант ядра Linux и фреймворки, используемые в платформе Android. Отмечается, что работа по переводу системного окружения Chrome OS на компоненты платформы Android находится на начальном этапе и потребует много времени, прежде чем новый вариант системы станет пригоден для работы конечных пользователей. Из уже предпринятых действий упоминается интеграция в ChromeOS 122 нового Bluetooth-стека Floss, основанный на Bluetooth-стеке Fluoride из платформы Android.

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

В текущем виде архитектура ChromeOS близка к атомарно обновляемым дистрибутивам Linux. Проектом используется ядро Linux со специфичными патчами, системный менеджер upstart и сборочный инструментарий ebuild/portage, созданный проектом Gentoo. Несмотря на то, что пользовательское окружение сосредоточено на использовании web-браузера, а вместо стандартных программ задействованы web-приложения, ChromeOS включает в себя полноценный многооконный интерфейс, рабочий стол и панель задач. Для запуска приложений, созданных для Linux и Android, используются виртуальные машины, запускаемые при помощи гипервизора CrosVM (основан на KVM).

По умолчанию в платформе применяется шифрование дисковых разделов c пользовательскими данными при помощи fscrypt, а системные разделы монтируются в режиме только для чтения, верифицируются по цифровой подписи и обновляются атомарно (два корневых раздела, рабочий и для установки обновления, которые меняются местами). Вывод на экран осуществляется при помощи графического стека Freon (ведётся работа по переходу на использование Wayland) и оконного менеджера Aura. Исходные тексты распространяются под свободной лицензией Apache 2.0.

  1. Главная ссылка к новости
  2. OpenNews: Google добавит в Chrome OS технологию облачного выполнения классических приложений
  3. OpenNews: Сведения о проекте Andromeda, расширяющем Android возможностями Chrome OS
  4. OpenNews: В ChromeOS намечено разделение браузера и системного интерфейса
  5. OpenNews: Google планирует осуществить слияние Chrome OS и Android
  6. OpenNews: Операционная система Chrome OS Flex готова для установки на любое оборудование
Обсуждение (73 +2) | Интересно


·12.06 Компания Valve выпустила Proton 9.0-2, пакет для запуска Windows-игр в Linux (154 +20)
  Компания Valve опубликовала новую версию проекта Proton 9.0-2, основанного на кодовой базе проекта Wine и нацеленного на обеспечение запуска в Linux игровых приложений, созданных для Windows и представленных в каталоге Steam. Наработки проекта распространяются под лицензией BSD.

Proton позволяет напрямую запускать в Linux-клиенте Steam игровые приложения, поставляемые только для Windows. Пакет включает в себя реализацию DirectX 9/10/11 (на базе пакета DXVK) и DirectX 12 (на базе vkd3d-proton), работающие через трансляцию вызовов DirectX в API Vulkan, предоставляет улучшенную поддержку игровых контроллеров и возможность использования полноэкранного режима независимо от поддерживаемых в играх разрешений экрана. Для увеличения производительности многопоточных игр поддерживаются механизмы "esync" (Eventfd Synchronization) и "futex/fsync".

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

  • Добавлена поддержка OpenXR 1.1.36 (стандарт Khronos) и OpenVR 2.2.3 (программный интерфейс от Valve) для работы со шлемами виртуальной реальности.
  • Улучшена совместимость с пакетом OpenComposite, позволяющим запускать игры, созданные для SteamVR, без SteamVR, используя реализацию OpenVR, транслирующую вызовы в OpenXR.
  • Выполнена синхронизация с выпуском Wine 9.1.
  • До версии 2.3.1 обновлена прослойка DXVK, транслирующая вызовы в API Vulkan.
  • VKD3D-Proton, ответвление от vkd3d, созданное Valve для улучшения поддержки Direct3D 12 в Proton, обновлено до версии 2.12.1.
  • Пакет Dxvk-nvapi с реализацией библиотеки NVAPI поверх DXVK обновлён до версии 0.7.0.
  • Движок Wine Mono с реализацией платформы .NET обновлён до выпуска 9.1.0.
  • Добавлена поддержка игр:
    • Alpha League
    • Battlezone Gold Edition (в режиме VR)
    • Black Desert Online
    • FreestyleFootball R
    • Helldivers 2
    • Hero's Land
    • Iragon
    • SimCity 3000 Unlimited
    • Warlords Battlecry III
  • При помощи Xalia реализована возможность использования игровых контроллеров для управления лаунчерами игр:
    • Clustertruck
    • Fallout 3 (standard and GOTY edition)
    • Fallout 4
    • Mugsters
    • The Elder Scrolls V: Skyrim (72850)
    • The Elder Scrolls V: Skyrim Special Edition
    • Tomb Raider: Anniversary
    • Tomb Raider: Legend
  • Решены проблемы с запуском игр "Call of Juarez: Gunslinger" и "Command & Conquer and The Covert Operations" на системах с большим числом ядер CPU.
  • Решены проблемы при запуске игр:
    • Akka Arrh
    • Alien Swarm: Reactive Drop
    • Apex Legends
    • Beat Saber
    • Bloons Monkey City
    • Brothers: A Tale of Two Sons
    • Call of Juarez: Bound in Blood
    • Cities: Skylines
    • Cosmoteer Starship Architect & Commander
    • Descent 3
    • Ghost of Tsushima
    • GRIS
    • Halo Infinite
    • Horizon Forbidden West
    • Idle Spiral
    • Marvel vs Capcom: Infinite
    • Nightingale
    • Shatterline
    • Simon the Sorcerer: 25th Anniversary Edition
    • Tekken 8
    • The Desolate Hope
    • The Finals
    • Tom Clancy's Ghost Recon: Future Soldier
    • Tower Princess
    • Viking: Battle for Asgard
    • We Love Katamari REROLL+ Royal Reverie

    1. Главная ссылка к новости
    2. OpenNews: Выпуск Proton-GE 9-5, пакета для запуска Windows-игр в Linux
    3. OpenNews: Компания Valve выпустила Proton 9.0, пакет для запуска Windows-игр в Linux
    4. OpenNews: Новые версии DXVK 2.3.1 и vkd3d-proton 2.12 c реализацией Direct3D поверх API Vulkan
Обсуждение (154 +20) | Тип: Программы |


·12.06 Выпуск загрузочных прошивок Libreboot 20240612 и Canoeboot 20240612 (62 +9)
  Доступен выпуск свободной загрузочной прошивки Libreboot 20240612. Проект развивает готовую сборку проекта Coreboot, предоставляющую замену проприетарным прошивкам UEFI и BIOS, отвечающим за инициализации CPU, памяти, периферийных устройств и других компонентов оборудования, с минимизацией бинарных вставок.

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

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

На 12% сокращён размер сборочного скрипта, написанного на POSIX sh. В GRUB добавлен драйвер для поддержки загрузки с накопителей NVMe. При работе на системах с CPU Intel Haswell (ThinkPad T440p, W541, Dell OptiPlex 9020 MT и Dell OptiPlex 9020) прекращено использование блоба для инициализации памяти (MRC), вместо которого задействована свободная реализация raminit.


Оборудование, поддерживаемое в Libreboot:

  • Серверные материнские платы:
    • ASUS KFSN4-DRE
    • ASUS KGPE-D16
  • Десктоп-системы:
    • Gigabyte GA-G41M-ES2L;
    • Acer G43T-AM3;
    • Intel D510MO / D410PT;
    • Apple iMac 5,2;
    • HP Elite 8200 SFF/MT;
    • HP Elite 8300 USDT;
    • ASUS KCMA-D8;
    • Dell Precision T1650.
    • Intel D945GCLF
    • Dell OptiPlex 7020 и 9020 серии SFF, XE2 SFF, MT и XE2 MT;
  • Ноутбуки:
    • ThinkPad X60 / X60S / X60 Tablet;
    • ThinkPad T60;
    • Lenovo ThinkPad X200 / X200S / X200 / X220 / X220 eDP / X230 Tablet;
    • Lenovo ThinkPad X301;
    • Lenovo ThinkPad R400;
    • Lenovo ThinkPad T400 / T400S / T420 / T420S / T430 / T440;
    • Lenovo ThinkPad T500 / T530;
    • Lenovo ThinkPad W530 / W541;
    • Lenovo ThinkPad R500;
    • HP EliteBook 2560p / 2570p / 2170p / 8470p / Folio 9470m;
    • HP EliteBook 820 G2;
    • HP Compaq Elite 8300 CMT;
    • HP EliteBook 8460p;
    • HP EliteBook 8560w;
    • Dell Latitute E6400 / E6430;
    • Dell Latitude E5420/E5520/E5530/E6520/E6530/E6420;
    • Apple MacBook1 и MacBook2;
    • ASUS Chromebook Flip C101 (ARM);
    • Samsung Chromebook Plus (ARM).

В дополнение к Libreboot сформирован выпуск проекта Canoeboot 20240612, который позиционируется как полностью свободная сборка Libreboot, соответствующая требованиям Фонда СПО к полностью свободным дистрибутивам. Выпуск Canoeboot основан на версии Libreboot 20240612, из которой удалены компоненты и изменения, не соответствующие критериям Фонда СПО.

Необходимость в создании отдельной сборки Libreboot объясняется тем, что сформированные Фондом СПО требования к свободным дистрибутивам не допускают поставку бинарных прошивок (firmware) и любых бинарных компонентов драйверов. При этом начиная с 2022 года проект Libreboot перешёл на более прагматичные правила использования бинарных компонентов, позволившие заметно расширить спектр поддерживаемого аппаратного обеспечения. Новой целью проекта Libreboot стала поддержка всего оборудования, поддерживаемого в coreboot, за исключением бинарных компонентов, влияющих на безопасность и надёжность (например, в Libreboot используется me_cleaner для отключения Intel ME). При таком подходе Libreboot потерял статус полностью свободного дистрибутива с позиции Фонда Свободного ПО.

Устройства, поддерживаемые в Canoeboot:

  1. Главная ссылка к новости
  2. OpenNews: Выпуск Coreboot 24.05
  3. OpenNews: Выпуск загрузочных прошивок Libreboot 20240504 и Canoeboot 20240504
  4. OpenNews: Доступны загрузочные прошивки Coreboot 24.02 и Libreboot 20240225
  5. OpenNews: Выпуск загрузочной прошивки Libreboot 20240126
  6. OpenNews: Удалённая уязвимость в прослойке Shim, позволяющая обойти UEFI Secure Boot
Обсуждение (62 +9) | Тип: Программы |


·12.06 В программу защиты Linux от патентных претензий включено 800 новых пакетов (115 +14)
  Организация Open Invention Network (OIN), ставящая перед собой цель защиты экосистемы Linux от патентных претензий, объявила о расширении списка пакетов, на которые распространяется соглашение о невыдвижении патентных претензий и предоставлении возможности безвозмездного использования некоторых запатентованных технологий.

Список компонентов дистрибутивов, подпадающих под определение системы Linux ("Linux System"), на которую распространяется соглашение между участниками OIN, расширен на 800 пакетов. Из внесённых в список новых пакетов можно выделить компоненты платформы AGL (Automotive Grade Linux), Android Wear, Apache Solr, Apache Atlas, ash, bacula, bazel, сhromium, сinnamon, сouchdb, cups-filters, Dolphin, dotnet, eudev, fltk, FuseSoc, grafana, icewm, istio, falco, jenkins, kate, kernel-rt, ldb, libadwaita, libcamera, mbedtls, nano, openchange, opensearch, openthread, scipy, sddm, spire, terraform, tesseract, vagrant, verilator, vulkan-tools, wayland-utils, xwayland и zlib-ng.

В итоге определение системы Linux теперь охватывает 4530 пакетов, в том числе ядро Linux, платформу Android, KVM, Git, nginx, CMake, PHP, Python, Ruby, Go, QEMU, Kubernetes, KVM, Lua, LLVM, OpenJDK, WebKit, KDE, GNOME, QEMU, Firefox, LibreOffice, OpenStack, Qt, systemd, X.Org, Wayland, PostgreSQL, MySQL и т.д. Число участников OIN, подписавших лицензионное соглашение о совместном использовании патентов, преодолело отметку в 3800 компаний, сообществ и организаций.

Участники OIN обязуются не выдвигать патентные претензии и безвозмездно разрешают использовать запатентованные технологии в проектах, связанных с экосистемой Linux. В число участников OIN входит более 3800 компаний, сообществ и организаций, подписавших лицензионное соглашение о совместном использовании патентов. Среди основных участников OIN, обеспечивающих формирование защищающего Linux патентного пула, такие компании как Google, Amazon, IBM, NEC, Toyota, Renault, SUSE, Philips, Red Hat, Alibaba, HP, AT&T, Juniper, Facebook, Cisco, Casio, Huawei, Fujitsu, Sony и Microsoft.

Подписавшие соглашение компании получают доступ к имеющимся в руках OIN патентам в обмен на обязательство не предъявлять судебных претензий за использование технологий, применяемых в экосистеме Linux. В том числе в рамках присоединения к OIN компания Microsoft передала участникам OIN право на использование более 60 тысяч своих патентов, обязавшись не использовать их против Linux и открытого ПО.

Патентный пул OIN включает более 1300 патентов. В том числе в руках OIN находится группа патентов, в которых фигурируют одни из первых упоминаний технологий создания динамического web-контента, которые предвосхитили появление таких систем как ASP от Microsoft, JSP от Sun/Oracle и PHP. Другим существенным вкладом является приобретение в 2009 году 22 патентов Microsoft, которые до этого были проданы консорциуму AST как патенты, затрагивающие "open source" продукты. Все участники OIN имеют возможность использовать данные патенты безвозмездно. Действенность соглашения OIN была подтверждена решением Министерства юстиции США, потребовавшим учесть интересы OIN в условиях сделки о продаже патентов Novell.

  1. Главная ссылка к новости
  2. OpenNews: Инициативой OS Zone аннулировано 54 патента, направленных против открытого ПО
  3. OpenNews: Компания Foxconn присоединилась к инициативе по защите Linux от патентных претензий
  4. OpenNews: В программу защиты Linux от патентных претензий включено 337 новых пакетов
  5. OpenNews: OIN скооперировался с IBM, Linux Foundation и Microsoft для защиты открытого ПО от патентых троллей
  6. OpenNews: OIN поможет признать недействительным патент, используемый для атаки на GNOME
Обсуждение (115 +14) | Тип: К сведению |


·12.06 Релиз дистрибутива openSUSE Leap 15.6 (55 +15)
  После года разработки состоялся релиз дистрибутива openSUSE Leap 15.6. Выпуск сформирован на основе единого с SUSE Linux Enterprise 15 SP 6 набора бинарных пакетов c некоторыми пользовательскими приложениями из репозитория openSUSE Tumbleweed. Использование одних и тех же бинарных пакетов в SUSE и openSUSE упрощает переход между дистрибутивами, экономит ресурсы на сборку пакетов, распространение обновлений и тестирование, унифицирует различия в spec-файлах и позволяет отойти от диагностики разных сборок пакетов при разборе сообщений об ошибках. Для загрузки доступна универсальная DVD-сборка, размером 4.4 ГБ (x86_64, aarch64, ppc64les, 390x), урезанный образ для установки с загрузкой пакетов по сети (200 МБ) и Live-сборки (~900 МБ) с KDE, GNOME и Xfce для архитектур X86_64 и ARM64.

Предполагается, что openSUSE Leap 15.6 станет последним выпуском в серии 15.x, а в 2025 году на платформе ALP будет сформирован релиз openSUSE Leap 16. Ключевым отличием ALP является разделение базовой основы дистрибутива на две части: урезанную "host OS" для работы поверх оборудования и слой для поддержки приложений, ориентированный на запуск в контейнерах и виртуальных машинах.

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

Обсуждение (55 +15) | Тип: Программы |


·12.06 В ядре Linux появится возможность использования eBPF для создания планировщиков задач (58 +22)
  Линус Торвальдс выразил готовность принять в состав ядра Linux 6.11, релиз которого ожидается в конце сентября, патчей с реализацией механизма "sched_ext" (SCX), позволяющего использовать eBPF для создания планировщиков CPU, охватывающих практически все аспекты планирования выполнения задач и распределения ресурсов CPU. Подобные планировщики могут загружаться динамически и выполняться внутри ядра Linux в виртуальной машине eBPF, в которой, благодаря применению JIT-компиляции, байткод транслируется в машинные инструкции и выполняется с производительностью скомпилированного кода.

Предложенные патчи реализуют новый класс планирования SCHED_EXT, для которого выставлен приоритет вызова ядром между классами SCHED_IDLE и SCHED_NORMAL, что не позволяет в BPF-обработчиках, привязанных к SCHED_EXT, повлиять на задачи, уже прикреплённые к штатному планировщику задач (SCHED_NORMAL), но даёт возможность прикрепления к SCHED_EXT отдельных задач или перемещения для обработки с его помощью всех процессов, имеющих приоритет ниже выполнения в режиме реального времени. Если к SCHED_EXT не привязаны BPF-обработчики, то все процессы, перемещённые в класс SCHED_EXT, будут обрабатываться при помощи планировщика SCHED_NORMAL. Работа BPF-обработчиков сводится с разбору очередей задач, ожидающих выполнения на CPU (одна глобальная очередь и по одной очереди на ядро CPU), и выбора задачи, которой следует предоставить ресурсы CPU при освобождении очередного ядра CPU.

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

В настоящее время уже развивается около десятка планировщиков на базе sched_ext, логика планирования задач в которых определяется в пространстве пользователя и загружается в ядро в форме BPF-программ:

  • scx_layered - гибридный планировщик задач, разделяющий задачи на слои, для каждого из которых применяется своя стратегия планирования. Например, scx_layered позволяет выделить в отдельный слой некоторые задачи, для которых будет предоставлены определённые гарантированные ресурсы CPU, или повысить приоритет отдельных приложений. Планировщик развивается компанией Meta. Работающая в пространстве пользователя логика генерации BPF написана на языке Rust.
  • scx_rustland - планировщик оптимизирован для повышения приоритета интерактивных задач на фоне задач, интенсивно нагружающих CPU. Например, в тесте запуска игрового приложения Terraria одновременно со сборкой ядра планировщик scx_rustland позволил добиться в игре более высокого FPS, чем при использовании штатного планировщика EEVDF. Проект развивается сотрудником компании Canonical. Работающая в пространстве пользователя логика генерации BPF написана на языке Rust.
  • scx_lavd - реализации алгоритма планирования задач LAVD (Latency-criticality Aware Virtual Deadline), учитывающего актуальность снижения задержек для конкретных задач и использующего информацию о ходе выполнения процессов при принятии решений о распределении ресурсов CPU. Планировщик развивается компаниями Igalia и Valve для снижения задержек в компьютерных играх и интерактивных задачах. Работающая в пространстве пользователя логика генерации BPF написана на языке Rust.
  • scx_rusty, scx_rlfifo, scx_mitosis - примеры планировщиков с компонентами в пространстве пользователя на языке Rust, реализующие балансировку между группами задач в зависимости от нагрузки, простейший FIFO-планировщик и планировщик для привязки групп задач к ядрам CPU.
  • scx_central, scx_flatcg, scx_nest, scx_pair, scx_qmap, scx_simple, scx_userland - примеры планировщиков c компонентами в пространстве пользователя на языке Си, иллюстрирующие различные возможности sched-ext.

Изначально механизм sched_ext был предложен для рассмотрения разработчиками ядра в 2022 году, после чего было опубликовано шесть редакций патча. Несмотря на отсутствие поддержки в основном составе ядра, для дистрибутивов Ubuntu, Arch Linux, Fedora и NixOS предоставлена возможность установки sched_ext через дополнительные пакеты. Компания Canonical рассматривает возможность включения компонентов sched-ext в состав Ubuntu 24.10, а компания Valve работает над интеграцией sched_ext в Steam Deck. В компании Meta планировщик на базе sched_ext уже применяется в рабочей инфраструктуре.

Компания Google экспериментирует с использованием собственного фреймворка ghOSt, позволяющего влиять на решения планировщика задач при помощи BPF-программ. В настоящее время началась работа по портированию ghOSt на sched_ext. Google также развивает порт sched_ext для ChromeOS с намерением использовать его для задействования гибридного планировщика scx_layered для сокращения задержек без использования расширений для работы в режиме реального времени. Компания Oculus развивает порт sched_ext для Android.

  1. Главная ссылка к новости
  2. OpenNews: Использование BPF-программ для решения проблем в устройствах ввода
  3. OpenNews: Netflix опубликовал код утилиты bpftop
  4. OpenNews: Проект bpftime развивает реализацию eBPF, работающую в пространстве пользователя
  5. OpenNews: BumbleBee - инструментарий для упрощения создания и распространения eBPF-программ
  6. OpenNews: В состав GCC принят бэкенд для компиляции в eBPF
Обсуждение (58 +22) | Тип: К сведению |


·12.06 Выпуск системного менеджера systemd 256 с утилитой run0 для замены sudo (330 +15)
  После полугода разработки представлен релиз системного менеджера systemd 256. Ключевые изменения: утилита run0 для замены sudo, утилита importctl для работы с дисковыми образами, возможность версионированного доступа к ресурсам, концепция капсул для запуска дополнительных сервисных менеджеров, режим перенаправления логов systemd-journald в произвольный сокет, поддержка протокола Varlink в systemd-networkd, systemd-machined, bootctl, systemd-creds и systemd-hostnamed, генератор юнитов "systemd-ssh-generator" и утилита "systemd-ssh-proxy".

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

  • В состав включена утилита run0 для выполнения процессов под идентификаторами других пользователей, которая позиционируется как более безопасная замена программы sudo, реализованная в форме надстройки над командой systemd-run. В run0 вместо использования SUID осуществляется обращение к системному менеджеру с запросом запуска процесса, создания нового псевдотерминала (PTY) и пересылки данных между ним и текущим терминалом (TTY). Привилегированный процесс запускается в изолированном контексте, который порождается процессом PID 1, а не процессом пользователя, т.е. не наследует свойства окружения пользователя. Для авторизации и определения возможностей пользователя применяется Polkit. При работе с повышенными привилегиями в заголовок добавляется индикатор в виде красной точки, а оттенок фона в терминале меняется на красный.
  • Добавлена новая утилита командной строки importctl, предназначенная для загрузки, импорта и экспорта дисковых образов с использованием сервиса systemd-importd. В importctl реализованы команды pull-tar, pull-raw, import-tar, import-raw, import-fs, export-tar, export-raw, list-transfers и cancel-transfer, функциональность которых выделена в отдельную утилиту из программы machinectl.
  • Добавлен исполняемый файл systemd-vpick c реализацией протокола vpick, обеспечивающего версионированный доступ к ресурсам, таким как дисковые образы. Systemd-vpick позволяет загружать ресурсы из каталогов "*.v/", в которых может храниться несколько версий определённых файлов. Номер версии указывается в имени файлов, например, "mymachine_2.1.5.raw". Если при запросе явно не указывается номер версии, то автоматически будет использован файл с наиболее свежей версией. Поддержка версионированной загрузки ресурсов реализована в командах "systemd-nspawn --image=/--directory=", systemd-dissect и systemd-portabled, а также в настройках юнитов "RootDirectory=", "RootImage=", "ExtensionImages=" и "ExtensionDirectories=".
  • Реализована концепция капсул ("capsules"), позволяющих запускать дополнительные отдельные сервисные менеджеры для управления группой процессов, работающих под временными пользователями, создаваемыми динамически и удаляемыми после завершения работы сервисного менеджера. Капсулы позволяют обойтись без создания учётных записей пользователей для запуска групп сервисов, используют домашний каталог "/var/lib/capsules/<имя_капсулы>" и набор типовых сервисов. Для запуска капсулы достаточно выполнить команду "systemctl start capsule@<имя>.service". Для работы в контексте капсул в различные утилиты, такие как systemctl и systemd-run, добавлена опция "--capsule="/"-C".
  • В systemd-journald добавлена возможность перенаправления потока записей в сетевой или локальный сокет (AF_INET, AF_INET6, AF_UNIX, AF_VSOCK), указанный через параметр ForwardToSocket в journald.conf или через свойство 'journald.forward_to_socket'. Для ограничения отправляемых данных уровнем логгирования предложен параметр MaxLevelSocket. Для приёма логов может использоваться процесс systemd-journal-remote, в который добавлена поддержка сокетов AF_VSOCK и AF_UNIX.

    В systemd-vmspawn добавлена опция "--forward-journal" для перенаправления логов из виртуальной машины в хост-окружение, используя сокет AF_VSOCK. В systemd-journal-gatewayd добавлена возможность ограничения периодов времени, в которые будут приниматься логи. В утилиту journalctl добавлена опция "-T" ("--exclude-identifier") для игнорирования определённых идентификаторов syslog, а также опция "--list-namespaces" для показа списка доступных пространств имён.

  • Расширены возможности по интеграции с sshd. Добавлена поддержка использования при авторизации входящих соединений ключей, полученных через userdbctl. Добавлен новый генератор юнитов "systemd-ssh-generator", который при наличии исполняемого файла sshd позволяет настроить его активацию в привязке к различным сокетам (например, в контейнерах можно настроить вызов sshd при обращении к 22 порту через AF_VSOCK). Добавлен "systemd-ssh-proxy" - плагин к утилите ssh (включается через ProxyCommand/ProxyUseFdpass), позволяющий подключаться через сокеты AF_VSOCK и AF_UNIX (например, можно использовать ssh вместо sudo для организации доступа локальных пользователей к ресурсам).
  • В рамках инициативы по сокращению зависимостей у libsystemd реализована динамическая загрузка библиотек liblz4, libzstd, liblzma, libkmod и libgcrypt при помощи вызова dlopen() в ситуациях, когда их функции действительно необходимы.


  • Помимо каталога /etc, различные компоненты systemd теперь пытаются загрузить основной файл конфигурации из каталогов /usr/lib, /usr/local/lib и /run. Например, systemd-logind будет определять файл конфигурации в следующей последовательности: /etc/systemd/logind.conf, /run/systemd/logind.conf, /usr/local/lib/systemd/logind.conf и /usr/lib/systemd/logind.conf. В systemd-udevd аналогичным способом реализовано переопределние файла udev.conf.
  • Непривилегированным пользователям предоставлена возможность доступа к зашифрованным учётным данным сервисов. Для шифрования и расшифровки учётных данных для определённого пользователя в утилиту systemd-creds добавлены опции "--user" и "--uid".
  • Реализована возможности сборки systemd из исходных текстов при отключении всех устаревших возможностей в OpenSSL 3.0.
  • В системный менеджер добавлена настройка "ProtectSystem=", позволяющая управлять монтированием частей ФС в режиме только для чтения на уровне всей системы, а не только отдельных unit-ов. По умолчанию параметр ProtectSystem активирован для initrd для запрета записи в каталог /usr во время загрузки.
  • Для unit-ов предложены новые настройки "WantsMountsFor=" для определения монтирования раздела как необязательной зависимости и "MemoryZSwapWriteback=" для управления параметром memory.zswap.write, появившемся в ядре Linux 6.8. В unit-ах .mount и .swap разрешено использование настройке "What=" идентификаторов в стиле fstab, таких как "UUID=…" и "LABEL=…". В настройке "RestrictNetworkInterfaces=" разрешено использование альтернативных имён сетевых интерфейсов.
  • В юниты ".socket" с опцией "Accept=yes" добавлена настройка "MaxConnectionsPerSource=", позволяющая задать лимит на число одновременных соединений с одного IP-адреса или UID (для UNIX-сокетов).
  • В процесс "systemd-bsod", реализующий аналог "синего экрана смерти", добавлена опция "--tty" для выбора терминала, на котором будет показано полноэкранное уведомление в случае возникновения критических ошибок (LOG_EMERG).
  • В каталоге /dev обеспечено создание символических ссылок, сочетающих информацию на основе пути (by-path) и меток (by-{label,uuid}): "/dev/disk/by-path/<path>/by-<label|uuid|…>/<label|uuid|…>", что позволяет выделить одинаковые разделы на разных устройствах хранения (например, после клонирования содержимого диска на другое устройство). Для мультимедийных контроллеров systemd-udevd теперь создаёт символические ссылки "/dev/media/by-path/*" (например, "/dev/media/by-path/pci-0000:04:00.3-usb-0:1:1.0-media-controller").
  • Добавлен сервис systemd-udev-load-credentials.service для загрузки udev-правил из базы учётных записей (credential).
  • В процессах systemd-networkd и systemd-hostnamed реализован интерфейс Varlink. В systemd-hostnamed добавлена поддержка отдачи идентификаторов системы и загрузки через D-Bus, а также всех данных из файлов os-release и machine-info через D-Bus и Varlink. В systemd-networkd реализован экспорт свойств NamespaceId и NamespaceNSID через D-Bus и Varlink, а также перебор пиров LLDP, используя API на базе Varlink.
  • В systemd-networkd реализованы настройки IPv6RetransmissionTimeSec и UseRetransmissionTime для управлением временем повторной отправки NS-сообщений (Neighbor Solicitation), применяемых для определения соседних хостов IPv6. Добавлена поддержка получения ключей для VPN Wireguard из базы учётных записей (credential). В link-файлы добавлен параметр ReceivePacketSteeringCPUMask для организации привязки обработчиков входящих пакетов к определённым CPU.
  • В утилиту networkctl добавлены параметры 'mask' и 'unmask' для игнорирования файлов конфигурации (.network). Реализована команда 'networkctl edit --runtime' для редактирования временных файлов конфигурации в /run/systemd/network/.
  • В systemd-nspawn добавлена поддержка переноса в контейнер сетевых интерфейсов для Wi-Fi-устройств.
  • В systemd-resolved добавлена поддержка расширенных кодов ошибок DNS (Extended DNS Errors, RFC 8914), а также DNS-записей SVCB, NAPTR и HTTPS (RFC 9460, RFC 2915). Добавлена поддержка команды "systemctl reload systemd-resolved" для перезагрузки конфигурации systemd-resolved без перезапуска сервиса.
  • Добавлен режим 'systemctl edit --stdin', позволяющий создавать и изменять unit-файлы на основе содержимого, передаваемого через стандартный входной поток (например, для создания unit-ов из скриптов).
  • Добавлена команда 'systemd-analyze architectures' для вывода списка известных архитектур CPU.
  • Добавлена команда 'systemd-tmpfiles --purge' для удаления всех временных файлов и каталогов, созданных через настройки в tmpfiles.d, а также команда "systemd-tmpfiles --dry-run" для отображения журнала действий без их фактического выполнения. В portablectl добавлена опций "--clean" для очистки всех данных, связанных переносимыми сервисами (кэш, логи, состояние, runtime-данные и fdstore), после их отключения.
  • В hostnamectl, resolvectl и loginctl добавлена опция '-j' для вывода в формате JSON.
  • В утилите systemd-dissect реализована опция "--make-archive" для создания архивного файла (например, tar.gz) из дискового образа.
  • Расширены возможности по запуску виртуальных машин. В утилиту systemd-vmspawn, предназначенную для запуска виртуальных машин, добавлены опции: "--firmware" для настройки прошивки, "--tpm" для включения программной реализации TPM, "--linux" для указания загружаемого ядра, "--initrd" для указания образа initrd, "-D" для задания корневого каталога, "--private-users" для включения пространства имён для пользователей, "--bind=" и "--bind-ro" для проброса частей ФС их хост-окружения в гостевую систему, "--extra-drive" для подключения дополнительных устройств хранения, "-n/--network-tap/--network-user-mode" для настройки сети, "--console/--background" для выбора метода взаимодействия с VM, "--pass-ssh-key/--ssh-key-type" для размещения SSH-ключей в VM. В команде "machinectl start" помимо возможности пуска контейнеров через systemd-nspawn добавлена поддержка запуска виртуальных машин через systemd-vmspawn.
  • В systemd-homed реализована возможность разблокировки домашнего каталога пользователя после его входа через SSH. В утилиту homectl добавлен режим "--offline", позволяющий изменять свойства учётной записи без разблокировки домашнего каталога.
  • Переработаны компоненты для обработки дисковых квот в ФС XFS и EXT4, что позволило реализовать возможность включения квот во время работы, а не только на стадии загрузки.
  • В файл конфигурации sleep.conf добавлен параметр MemorySleepMode для настройки спящего режима.
  • В утилиту varlinkctl добавлена поддержка нового транспорта "ssh:", который можно использовать с OpenSSH 9.4 и более новыми выпусками.
  • Время хранения core-дампов увеличено с 3 дней до 2 недель.

  1. Главная ссылка к новости
  2. OpenNews: Леннарт Поттеринг представил run0, замену sudo, интегрированную в systemd
  3. OpenNews: Инициатива по сокращению зависимостей у libsystemd
  4. OpenNews: GNOME OS переходит на организацию атомарных обновлений при помощи systemd-sysupdate
  5. OpenNews: Проект postmarketOS представил сборки на базе systemd
  6. OpenNews: Выпуск системного менеджера systemd 255
Обсуждение (330 +15) | Тип: Программы | Интересно


·11.06 Релиз Firefox 127 (135 +10)
  Состоялся релиз web-браузера Firefox 127 и сформировано обновление ветки с длительным сроком поддержки - 115.12.0. На стадию бета-тестирования переведена ветка Firefox 128, релиз которой намечен на 9 июля.

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

  • В меню "V" со списком всех открытых вкладок и в контекстное меню вкладки добавлена кнопка для закрытия всех дублирующихся вкладок в текущем окне.
  • Включена автоматическая замена протокола HTTP на HTTPS для ресурсов в тегах <img>, <audio> и <video>, если эти теги используются на странице, открытой по HTTPS. Если загружаемые ресурсы недоступны по HTTPS, то они теперь не будут показаны со страниц, открытых по HTTPS.
  • Добавлена поддержка упреждающего определения IP-адресов хостов, не дожидаясь перехода пользователя по ссылке или запроса указанного на странице ресурса. Домены, которые нужно заранее отрезолвить в DNS, следует перечислить через элемент "link" с атрибутом 'rel="dns-prefetch"'.
  • С целью сокращения информации, которая может использоваться для косвенной идентификации пользователей, для 32-разрядных систем x86 в заголовке User-Agent, а также в JavaScript API navigator.platform и navigator.oscpu, теперь будет указываться архитектура x86_64.
  • В инструменте для сохранения снимков экрана появилась поддержка создания скриншотов для файлов в формате SVG и XML, а также для служебных страниц " about:". Добавлена возможность управления созданием скриншотов с использованием клавиатурных комбинаций, реализована совместимость в темами оформления и режимом отображения с повышенной контрастностью (HCM, High Contrast Mode). Повышена производительность сохранения больших областей экрана.
  • В about:config добавлены настройки toolkit.scrollbox.pagescroll.maxOverlapPercent и toolkit.scrollbox.pagescroll.maxOverlapLines, позволяющие изменить сдвиг страницы при прокрутке, указываемый в процентах и строках.
  • На платформе Windows реализована возможность автоматического запуска Firefox после загрузки компьютера. Благодаря предварительной загрузке пользователю не нужно ждать при первом запуске приложения - браузер будет готов к работе мгновенно. Режим включается в секции настроек General/Startup или через уведомление, показываемое по аналогии с приглашением задействовать Firefox в качестве браузера по умолчанию.
  • На платформах macOS и Windows реализована дополнительная защита доступа при использовании функции автозаполнения сохранённых паролей или при просмотре информации о паролях в менеджере паролей. Подобные операции с менеджером паролей потребуют подтверждения аутентификации в системе (например, ввод системного пароля, проверка отпечатка пальца, аутентификация по голосу или лицу).
  • На платформе macOS по умолчанию включена навигация по элементам ввода клавишей табуляция, вместо использования специфичного для macOS режима клавиатурной навигации, не соответствующего поведению для других платформ (в настройках можно вернуть старый режим).
  • В текстах для которых используется формат WebVTT (Web Video Text Tracks Format), добавлена поддержка символов, допустимых в разметке HTML. WebVTT применяется для организации вывода текста в определённые моменты времени, например, для показа субтитров.
  • В API Clipboard включён по умолчанию интерфейс ClipboardItem и поддержка методов navigator.clipboard.read() и navigator.clipboard.write(), позволяющих web-приложению читать и записывать данные в буфер обмена. При попытке чтения данных из буфера обмена, записанных не текущим web-приложением, перед выполнением операции пользователю будет показан запрос на подтверждение действия.
  • Реализована экспериментальная поддержка выставления симметричного межбуквенного интервала через CSS-свойство letter-spacing. В новом режиме интервал выставляется не между текущим и следующим символом, а делится на две части, которые применяются до и после символа. Режим включается через настройку layout.css.letter-spacing.model в about:config.
  • В атрибуте "href" тега "<base>", используемого для задания базового пути для относительных ссылок, запрещено использование схем "data:" и "javascript:".
  • В градиентах, созданных при помощи CSS-функций conic-gradient(), linear-gradient(), radial-gradient(), repeating-conic-gradient(), repeating-linear-gradient() и repeating-radial-gradient(), разрешено использовать тип "<color-interpolation-method>".
  • В объект Set, определяющий коллекцию значений, добавлены методы с реализацией типовых операций работы с множествами: Set.prototype.intersection(), Set.prototype.union(), Set.prototype.difference(), Set.prototype.symmetricDifference(), Set.prototype.isSubsetOf(), Set.prototype.isSupersetOf() и Set.prototype.isDisjointFrom().
  • Запрещена установка дополнений, XPI-файлы которых подписаны с использованием небезопасных алгоритмов (настройка PREF_XPI_WEAK_SIGNATURES_ALLOWED по умолчанию выставлена в значение false).
  • В WebRTC включена поддержка протокола DTLS 1.3, основанного на TLS 1.3.
  • В версии для платформы Android:
    • Добавлена поддержка перевода содержимого с одного языка на другой. Как и в настольной версии Firefox для перевода задействована встроенная в приложение система перевода, которая выполняет перевод на локальной системе пользователя без обращения к внешним облачным сервисам.
    • В меню "..." добавлен новый элемент "Пароли".
    • Разрешено использование клавиши Enter на боковой цифровой панели стационарных клавиатур для подтверждения введённого в адресной строке URL.
    • Включены дополнительные оптимизации на этапе компиляции, позволившие увеличить отзывчивость интерфейса, сократить время запуска и продлить автономную работу устройства.
    • Секция со списком недавно сохранённых страниц перенесена в раздел закладок. Элементы списка теперь не исчезают после устаревания.

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

  1. Главная ссылка к новости
  2. OpenNews: Релиз Firefox 126
  3. OpenNews: В Firefox предложена дополнительная защита от отслеживания с использованием редиректов
  4. OpenNews: Mozilla начала формирование ночных сборок Firefox для Linux-систем на архитектуре ARM64
  5. OpenNews: Опубликован список идей по развитию Firefox, над которыми ведётся работа
  6. OpenNews: Mozilla добавит в Firefox 130 AI-возможность для генерации описаний изображений
Обсуждение (135 +10) | Тип: Программы |


·11.06 Анализ безопасности 100 бесплатных VPN-приложений для платформы Android (146 +30)
  Издание Top10VPN, занимающееся рецензированием и проверкой VPN-сервисов, провело тестирование 100 самых популярных бесплатных VPN-приложений для платформы Android, суммарно насчитывающих более 2.5 миллиарда установок (для проверки были взяты 100 бесплатных VPN-приложений, для которых в каталоге Google Play зафиксировано наибольшее число загрузок). Основные выводы:
  • 88 из протестированных программ имеют те или иные проблемы, приводящие к утечке информации. В 83 приложениях утечки происходили из-за обращения к сторонним DNS-серверам (не серверам VPN-провайдера), например в 40 случаях использовался DNS Google, а в 14 - Cloudflare. В 79 приложениях не была исключена возможность отправки трафика в обход VPN. В 17 приложениях выявлено сразу несколько типов утечек (раскрытие сайтам исходных IPv4 и IPv6 пользователя, утечки через DNS и WebRTC).
  • В 11 приложениях выявлено использование устаревших генераторов псевдослучайных чисел. В одном из приложений вообще не использовалось шифрование трафика. В 35 приложениях использовались неактуальные криптоалгоритмы (только в 20 программах применялись надёжные методы хэширования). В 23 приложениях на стадии создании VPN-туннеля для обращения к внешнему серверу допускалось использование старых версий TLS (старее TLSv3), а в 6 приложениях использовали SSLv2.
  • В 69 программах запрашивались избыточные полномочия, например, 20 приложений требовали доступа к данным о местоположении (ACCESS_*_LOCATION), 46 - к списку установленных программ (QUERY_ALL_PACKAGES), 9 - доступ к состоянию телефона (READ_PHONE_STATE, среди прочего позволяет узнать IMEI и IMSI), 82 - запрашивали уникальные идентификаторы для идентификации в рекламных сетях (ACCESS_ADVERTISEMENTS_ID), 10 - пытались получить доступ к камере.
  • В 53 приложениях выявлено использование сторонних проприетарных функций, например, 13 программ использовало код для отслеживания местоположения, 31 - для получения идентификаторов для рекламных сетей, 22 - для проверки других установленных приложений. 80 программ использовали сторонние библиотеки, среди которых 15 использовали библиотеки компаний Bytedance (TikTok), а 11 - библиотеки Yandex.
  • 84 приложения включали компоненты SDK от маркетинговых платформ или социальных сетей, при этом 16 приложений включало 10 и более подобных компонентов.
  • В 32 приложениях выявлено обращение к аппаратным возможностям и датчикам, которые могут привести к нарушению конфиденциальности. Например, 15 приложений обращаются к камере, 7 - к микрофону, а 14 к механизмам определения местоположения, таким как GPS, 14 к датчикам (гироскоп, датчик приближения и т.п.).
  • 71 приложение отправляло персональные данные в сторонние сервисы, такие как Facebook (47), Yandex (13) и VK (11). 37 программ раскрывали сторонним сервисам идентификаторы устройств, 23 - IP-адреса, 61 - уникальные идентификаторы для отслеживания. 19 приложений отправляли телеметрию с информацией об устройстве и системе на серверы VPN-провайдера, а 56 - в сторонние сервисы, такие как Google (39), Facebook (17) и Yandex (9).
  • В 19 приложениях при проверке в сервисе VirusTotal, использующем более 70 антивирусов, было определено вредоносное ПО. В 18 приложениях выявлено подключение к доменам, а в 13 к IP-адресам, занесённым в чёрные списки вредоносных хостов и адресов.
  • В 93 приложениях выявлено расхождение заявленных меток соблюдения конфиденциальности с фактическим состоянием. 75 приложений неверно информировали о методах сбора данных о пользователе, 64 - об отправке данных сторонним сервисам, 32 - об используемых методах обеспечения безопасности. Из 65 приложений с меткой "No Data Sharing" только 20 не допускали отправку данных сторонним сервисам, а из 32 приложений с меткой "No Data Collection" лишь два соответствовали связанным с ней требованиям.

  1. Главная ссылка к новости
  2. OpenNews: Анализ уязвимостей в Android-приложениях с открытыми сетевыми портами
  3. OpenNews: Анализ запроса ненадлежащих полномочий в VPN-приложениях для Android
  4. OpenNews: Большинство VPN-приложений для Android не заслуживают доверия
  5. OpenNews: Анализ несанкционированной записи звука и видео в Android-приложениях
  6. OpenNews: Результаты анализа бэкдоров в приложениях для Android
Обсуждение (146 +30) | Тип: Тема для размышления |


·11.06 Компания LG опубликовала платформу webOS Open Source Edition 2.26 (104 +7)
  Представлен выпуск открытой платформы webOS Open Source Edition 2.26, которая может применяться на различных портативных устройствах, платах и автомобильных информационно-развлекательных системах. В качестве эталонной аппаратной платформы рассматриваются платы Raspberry Pi 4. Платформа развивается в публичном репозитории под лицензией Apache 2.0, а разработку курирует сообщество, придерживаясь совместной модели управления разработкой.

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

  • Добавлена поддержка установки самодостаточных web-приложений (PWA, Progressive Web Application). При открытии сайтов, поддерживающих PWA, в в панели браузера появляется кнопка для их установки. После установки ярлык для вызова PWA-приложения отображается в штатном интерфейсе запуска программ, рядом с обычными приложениями.
  • В интерфейсе записи мультимедийного контента появились функции приостановки и возобновления записи, а также записи только звука. Для видео предоставлена возможность выбора частоты кадров и разрешения (FHD/20 FPS или HD/30 FPS).
  • В API для работы со звуком добавлена возможность прекращения и приостановки воспроизведения системных звуков, а также управления их громкостью.
  • В web-браузере Enact добавлена возможность открытия сайтов через прокси. Работу через прокси можно привязывать к отдельным сайтам.
  • Добавлена поддержка защищённой отрисовки с использованием DMABUF.
  • Обновлены шрифты Noto.
  • Для GStreamer задействован декодировщик UnifiedDecodebin, написанный на языке Rust.
  • В браузерный движок добавлена поддержка механизма WEb Push с использованием сервера FCM (Google Firebase Cloud Messaging).
  • Перенесены изменения из платформы Yocto 5.0.

Платформа webOS была изначально разработана компанией Palm в 2008 году и использовалась на смартфонах Palm Pre и Pixie. В 2010 году после поглощения компании Palm платформа перешла в руки Hewlett-Packard, после чего HP пыталась использовать данную платформу в своих принтерах, планшетах, ноутбуках и ПК. В 2012 году компания HP анонсировала перевод webOS в независимый открытый проект и в 2013 году начала открытие исходных текстов его компонентов. В 2013 году платформа была выкуплена у Hewlett-Packard компанией LG и теперь применяется на более чем 70 миллионах телевизоров и потребительских устройств LG. В 2018 году был основан проект webOS Open Source Edition, через который компания LG попыталась вернуться к открытой модели разработки, привлечь других участников и расширить спектр поддерживаемых в webOS устройств.

Системное окружение webOS формируется с использованием инструментария и базовых пакетов OpenEmbedded, а также сборочной системы и набора метаданных от проекта Yocto. Ключевыми компонентами webOS являются менеджер системы и приложений (SAM, System and Application Manager), отвечающий за выполнение приложений и сервисов, и Luna Surface Manager (LSM), формирующий интерфейс пользователя. Компоненты написаны с использованием фреймворка Qt и браузерного движка Chromium.

Отрисовка осуществляется через композитный менеджер, применяющий протокол Wayland. Для разработки пользовательских приложений предлагается использовать web-технологии (CSS, HTML5 и JavaScript) и фреймворк Enact, основанный на React, но возможно и создание программ на С и C++ с интерфейсом на базе Qt. Пользовательская оболочка и встроенные графические приложения в основном реализованы как нативные программы, написанные с использованием технологии QML. По умолчанию предлагается оболочка Home Launcher, оптимизированная для управления с сенсорных экранов и предлагающая концепцию сменяющих друг друга карт (вместо окон).

Для хранения данных в структурированном виде с использованием формата JSON применяется хранилище DB8, использующее в качестве бэкенда БД LevelDB. Для инициализации используется bootd на основе systemd. Для обработки мультимедийного контента предлагаются подсистемы uMediaServer и Media Display Controller (MDC), в качестве звукового сервера применяется PulseAudio. Для автоматического обновления прошивки применяется OSTree и атомарная замена разделов (создаются два системных раздела, один из которых является активным, а второй используется для копирования обновления).

  1. Главная ссылка к новости
  2. OpenNews: Компания LG опубликовала платформу webOS Open Source Edition 2.24
  3. OpenNews: Уязвимости в webOS, позволяющие перезаписать файлы на телевизорах LG
  4. OpenNews: Обновление мобильной платформы LuneOS, продолжившей развитием webOS
  5. OpenNews: Компания HP представила релиз открытой мобильной платформы Open webOS 1.0
  6. OpenNews: Компания LG выкупила мобильную платформу webOS у Hewlett-Packard и намерена использовать её в телевизорах
Обсуждение (104 +7) | Тип: Программы |


·11.06 Mozilla опубликовала сервис для AI-генерации сайтов Solo 1.0 (129 +6)
  Компания Mozilla опубликовала первый значительный выпуск проекта Solo, развивающего платформу для создания сайтов, в которой для автоматической генерации типовых элементов интерфейса задействованы механизмы машинного обучения. Solo позиционируется как инструмент, позволяющий быстро создать стильный и современный персональный или корпоративный сайт, не имея навыков web-разработки.

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

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

  1. Главная ссылка к новости
  2. OpenNews: Mozilla добавит в Firefox 130 AI-возможность для генерации описаний изображений
  3. OpenNews: Mozilla уволит около 60 сотрудников и сосредоточит внимание на AI-технологиях в Firefox
  4. OpenNews: Mozilla представила встраиваемый в браузер AI-бот MemoryCache
  5. OpenNews: Mozilla запустила проект Mozilla.ai для развития открытых систем машинного обучения
Обсуждение (129 +6) | Тип: К сведению |


·11.06 Выпуск Winlator 7.0, окружения для запуска Windows-приложений в Android (50 +4)
  Опубликован выпуск Android-приложения Winlator 7.0, предоставляющего обвязку над Wine и эмуляторами Box86/Box64 для выполнения Windows-приложений на платформе Android. Winlator разворачивает Linux-окружение на базе Ubuntu с Mesa, DXVK, D8VK, Vkd3d и CNC DDraw, в котором при помощи эмулятора и Wine на ARM-устройствах с Android выполняются Windows-приложения, собранные для архитектуры x86. Код проекта распространяется под лицензией MIT. Размер APK-пакета 251 МБ.

В новой версии Winlator:

  • В состав включён пакет vkd3d с реализацией Direct3D 12, работающей через трансляцию вызовов в графический API Vulkan.
  • Добавлен экспериментальный режим WoW64 (Container Settings -> Advanced Tab), позволяющей выполнять 32-разрядные Windows-приложения в 64-разрядных системах.
  • Обновлены версии Wine и Box86/Box64.
  • Из кодовой базы Mesa перенесены свежие версии драйверов Turnip (GPU Qualcomm Adreno), Zink (реализация OpenGL поверх Vulkan) и VirGL (виртуальный GPU Virgil3D для QEMU/KVM).
  • Улучшено управление вводом и повышена стабильность работы через XInput.
  • Улучшен менеджер задач.
  • Расширены настройки контейнера (привязка к CPU, показ FPS, имя GPU, Windows-компоненты и переменные окружения).
  • Добавлена опция для ведения логов.
  • Проведена оптимизация производительности.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск Wine 2.10 с начальной поддержкой платформы Android
  3. OpenNews: Для платформы Android развивается средство для запуска Windows-приложений на базе Wine
  4. OpenNews: В рамках проекта Darling развивается аналог Wine для запуска программ Mac OS X
  5. OpenNews: Проект Hangover для запуска Windows-приложений на системах ARM64 c Linux и Android
  6. OpenNews: Microsoft прекращает поддержку прослойки WSA для запуска Android-приложений в Windows
Обсуждение (50 +4) | Тип: Программы |


·10.06 Выпуск AROS One 2.5, дистрибутива ОС AROS, продолжающей развитие AmigaOS (73 +22)
  Опубликован выпуск проекта AROS One 2.5, развивающего дистрибутив операционной системы AROS, позволяющий запустить на своей системе десктоп-окружение в стиле AmigaOS. Для установки на системах x86 подготовлены iso-образ и загрузочное окружение для записи на USB-накопитель. Операционная система AROS развивается с 1995 года и распространяется под открытой лицензией AROS Public License, основанной на Mozilla Public License 1.1.

Проект AROS совместим с AmigaOS 3.1 на уровне API, предоставляет возможность запуска приложений, созданных для AmigaOS (после перекомпиляции для AROS), предоставляет стек TCP/IP, звуковую подсистему и инструментарий для разработки графических приложений. AROS также предлагает графический интерфейс пользователя в стиле AmigaOS и развивает дополнительную функциональность, расширяющую возможности AmigaOS. AROS One представляет собой готовый для запуска на современном оборудовании дистрибутив, включающий кастомизированную операционную систему AROS и набор различных пользовательских приложений.

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

  • Предложена новая Си-библиотека, синхронизированная с 64-разрядной ОС AROS.
  • При запуске AROS поверх Linux реализована возможность работы с использованием WSL (Windows Subsystem for Linux), прослойки для запуска Linux-приложений в Windows.
  • Заменено используемое по умолчанию изображение курсора мыши.
  • Расширена функциональность загрузочного меню и сокращено время загрузки.
  • В файловом менеджере и рабочем столе Wanderer добавлена поддержка удаления файлов и каталогов нажатием клавиши Del.
  • Добавлен скрипт SMB2-Start для организации совместного доступа к файлам по сети.
  • Обновлены версии приложений, собранных для AROS, например, эмуляторы классических игр ScummVM 1.9.1 и ResidualVM 0.3.1.1, графическая библиотека GLFW (Graphics Library Framework) 3.4, браузер AmiFox 0.6, конвертер изображений Image2PDF 2.6, интерфейс выбора тем оформления ThemeList 1.0, просмотрщик изображений LoView 2.024, приложение для чистки системы WitchCleaner 3.20, а также различные демонстрации и игры.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск Icaros Desktop 2.3, дистрибутива операционной системы AROS
  3. OpenNews: Выпуск свободного эмулятора классических квестов ScummVM 2.8.0
Обсуждение (73 +22) | Тип: Программы |


·10.06 Компания Mozilla начала блокировать доступ из РФ к дополнениям для обхода блокировок (53 –12 )
  Пользователи Firefox столкнулись с невозможностью загрузить из каталога addons.mozilla.org (AMO) дополнения, позволяющие обойти блокировки Роскомнадзора. На страницах четырёх популярных дополнений, обеспечивавших обход блокировок, при попытке открытия из РФ теперь показывается страница с информацией о запрете доступа из региона пользователя. Разработчик одного из заблокированных дополнений попросил представителей Mozilla назвать причину блокировки, при том, что формально дополнение не нарушает никаких правил каталога AMO. Представители Mozilla пока не указали причин блокировки, но, вероятно, они сделали это после получения требований от Роскомнадзора.

При этом блокировки дополнений, нарушающих законы отдельных стран, не новы, например, в 2022 году Mozilla заблокировала доступ к дополнениям uBlock Origin, AdGuard, AdNauseam и AdBlock из Китая, что было сделано после возникновения угрозы блокировки всего каталога addons.mozilla.org на территории данной страны. Примечательно, что подобные блокировки явно расходятся с принципами, определёнными в манифесте Mozilla, а также идут вразрез с общей политикой компании, в соответствии с которой два года назад сервисы Yandex и Mail.ru были удалены из списка доступных поисковых систем с указанием в качестве мотива преобладания в поисковой выдаче материалов, отражающих предвзятую точку зрения.

Заблокированные для РФ дополнения не могут быть названы в новости из-за действующего с 1 марта запрета на популяризацию средств обхода блокировок. Первое дополнение распространяется под лицензией MIT и нацелено на общий обход ограничений, действующих в России, Украине, Беларуси, Казахстане, Кыргызстане, Узбекистане и других странах. Второе дополнение распространяется под лицензией GPLv3 и специально рассчитано на обход блокировок из Единого реестра запрещённых сайтов РФ, при этом не проксируя остальные ресурсы. Третье дополнение обеспечивает работу VPN-сервиса, не осуществляющего блокировку по спискам Роскомнадзора для пользователей из РФ. Четвёртое дополнение выборочно включает использование прокси для сайтов, заблокированных Роскомнадзором.

Дополнение 1: На профильном форуме NTC, посвящённом интернет-цензуре по всему миру, обратили внимание на то, что при запросе страниц заблокированных дополнений возвращается ответ с HTTP-кодом 451, означающим ограничение доступа по требованию государственных органов или правообладателя.

Дополнение 2: На момент написания статьи страницы заблокированных Mozilla дополнений остаются доступны из России в каталоге Chrome Web Store для браузеров на основе Chromium и в совокупности имеют более 2 миллионов установок по всему миру.

Дополнение 3: Представители Mozilla подтвердили изданию "Коммерсантъ", что блокировка была выполнена в ответ на требование Роскомнадзора. При этом уточняется, что ограничение выставлено временно и окончательное решение будет принято после анализа сложившейся ситуации.

Дополнение 4: Mozilla пересмотрела своё решение и восстановила доступ к дополнениям. Доступ к дополнениям восстановлен.

  1. Главная ссылка к новости
  2. OpenNews: Обновление Firefox 98.0.1 с удалением поисковых систем Yandex и Mail.ru
  3. OpenNews: Mozilla внедрила в Firefox показ навязчивой всплывающей рекламы VPN
  4. OpenNews: Mozilla использует Google Analytics в менеджере дополнений Firefox
  5. OpenNews: Mozilla развивает механизм передачи телеметрии рекламным сетям
  6. OpenNews: Mozilla воспользовалась push-уведомлениями для распространения политической рекламы в Firefox
Обсуждение (53 –12 ) | Тип: Тема для размышления |


·10.06 Доступен язык программирования Perl 5.40.0 (138 +20)
  После 11 месяцев разработки опубликован релиз новой стабильной ветки языка программирования Perl - 5.40. При подготовке нового выпуска было изменено около 160 тыс. строк кода (без документации и автоматически сгенерированного кода - 110 тысяч), изменения затронули 1500 файлов, в разработке приняли участие 75 разработчиков.

Ветка 5.40 выпущена в соответствии с утверждённым одиннадцать лет назад фиксированным графиком разработки, подразумевающим выпуск новых стабильных веток раз в год и корректирующих релизов - раз в три месяца. Примерно через месяц планируется выпустить первый корректирующий релиз Perl 5.40.1, в котором будут исправлены наиболее значительные ошибки, выявленные в процессе внедрения Perl 5.40.0. Одновременно с выходом Perl 5.40 прекращена поддержка ветки 5.36, для которой обновления могут быть выпущены в будущем только в случае выявления критических проблем с безопасностью. 20 июня начнётся процесс разработки экспериментальной ветки 5.41, на базе которой в мае или июне 2025 года будет сформирован стабильный релиз Perl 5.42, если не будет принято решение перейти к нумерации 7.x.

Ключевые изменения:

  • Расширены возможности, связанные с появившемся в прошлой версии экспериментальным синтаксисом для создания классов. Добавлено новое ключевое слово "__CLASS__", которое при вызове из методов, блоков ADJUST или при инициализации полей возвращает имя текущего класса по аналогии с тем как ключевое слово __PACKAGE__ возвращает имя пакета. В отличие от выражения ref($self) ключевое слово __CLASS__ может применяться при инициализации полей для доступа к методам класса на этапе до завершения создания экземпляра класса. Для базового класса значение __CLASS__ идентично значению __PACKAGE__, но будет отличаться при создании подклассов.
    
       use feature 'class';
       class Example1 {
           field $f = __CLASS__->default_f;
           sub default_f { 10 }
       }
    
  • Для определяемых внутри класса полей реализован атрибут ":reader", применяемый для автоматического создания метода, возвращающего значение переменной из поля в текущем экземпляре класса. Например, указание ":reader" после определения поля "field $s;" эквивалентно созданию метода "method s () { return $s; }". При необходимости можно задать не совпадающее имя метода при помощи конструкции вида "field $name :reader(get_name);".
  • Объявлен стабильным синтаксис обработки исключений try/catch, который можно использовать вместо неочевидных манипуляций с "eval". Блок "try" включает блок с выполняемым кодом, а блок "catch" с кодом для обработки любого исключения, которое может возникнуть при выполнении первого блока. В "catch" определяется переменная, содержащая данные, переданные при формировании исключения (например, при срабатывании исключения на вызов "die" будет передана указанная в качестве аргумента строка). Внутри блоков "try" и "catch" разрешены операторы переходов, включая return, goto, next, last и redo.
    
       try {
           my $x = call_a_function();
           $x < 100 or die "Too big";
           send_output($x);
       }
       catch ($e) {
           warn "Unable to output a value; $e";
       }
       print "Finished\n";
    
  • Стабилизирован синтаксис "for my (VAR, VAR) (LIST)" и "foreach my (VAR, VAR) (LIST)", применяемый для перебора списков с единовременным извлечением сразу нескольких значений в одной итерации цикла. Например, теперь можно указывать:
    
       foreach my ($key, $value) (%hash) { ... }
       for my ($left, $right, $gripping) (@moties) { ... }
    
  • Объявлен стабильным модуль builtin, включающий всегда доступные функции, встроенные в интерпретатор. В настоящее время в модуле предложены функции true, false, weaken, unweaken, is_weak, blessed, refaddr, reftype, ceil, floor, is_tainted, trim и indexed.
  • Добавлены новые экспериментальные встроенные функции inf и nan, доступные в пространстве имён "builtin::" ("builtin::inf" и "builtin::nan"). Данные функции можно использовать в качестве констант, определяющих бесконечность и нечисловое значение.
  • Добавлен новый логический оператор "^^", соответствующий операции XOR и дополняющий битовый оператор "^" (в Perl предоставляет три базовых битовых оператора "&", "|" и "^", соответствующих операциям AND, OR и XOR, но для логических операций до сих пор были доступны только варианты AND ("&&") и OR ("||")). Логическое выражение "$x ^^ $y" вернёт TRUE, когда либо "x", либо "y" имеют значение TRUE, но не одновременно.
  • Прекращена поддержка симуляции версий до 5.11. Использование директивы "use номер_версии", отключающей дополнительные возможности, добавленные в интерпретаторе после указанной версии, с номером версии меньше 5.11 (например, "use v5.8") теперь будет приводить к выводу ошибки, а не предупреждения. Аналогично добавлен вывод предупреждения при использовании в "use" версии меньше 5.39 (предупреждения будут заменены на ошибку в выпуске 5.44).
  • Разрешено использование пробела между опцией командной строки "-M" и именем модуля, например "perl -M Data::Dumper=Dumper -E 'say Dumper [1,2,3]'" (раньше нужно было писать "perl -MData::Dumper...").
  • Объявлено устаревшим использование оператора "goto" для перехода из внешней области видимости во внутреннюю. Поддержка данной возможности будет прекращена в версии Perl 5.42.
  • В основной состав включены модули Term::Table и Test2::Suite, предназначенные для создания unit-тестов. Обновлены версии модулей Archive::Tar, Compress::Raw::Bzip2, Compress::Raw::Zlib, Data::Dumper, DB_File, File::Compare, File::Find, Getopt::Long, Hash::Util, HTTP::Tiny, IO, Math::BigInt, PerlIO::encoding, Tie::File, Time::HiRes и т.п.
  • Добавлена поддержка операционной системы Serenity OS.
  • Устранены две уязвимости:
    • CVE-2023-47038 - запись за границу буфера при обработке некорректных Unicode-свойств, определённых пользователем. Проблема может привести к переполнению буфера на 1 байт при обработке специально оформленных регулярных выражений.
    • CVE-2023-47039 - возможность подмены исполняемого файла на платформе Windows из-за поиска cmd.exe в путях с использованием переменной окружения PATH, в которой текущий рабочий каталог является более приоритетным, чем системный каталог с исполняемым файлом cmd.exe.

  1. Главная ссылка к новости
  2. OpenNews: Доступен язык программирования Perl 5.38.0 с поддержкой классов
  3. OpenNews: Анализ рисков при воплощении в жизнь инициативы Perl 7
  4. OpenNews: Perl 7 плавно продолжит развитие Perl 5 без нарушения обратной совместимости
  5. OpenNews: Язык Perl 6 переименован в Raku
  6. OpenNews: Опубликован разбор инцидента с потерей контроля над доменом perl.com
Обсуждение (138 +20) | Тип: Программы |


<< Предыдущая страница (позже)
Следующая страница (раньше) >>



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

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