home tags events about rss login

Things happen.

opennet honked 08 May 2024 22:00 +0200

Red Hat представил дистрибутив RHEL AI и режим сборки RHEL на базе OSTree и bootc

Компания Red Hat представила дистрибутив Red Hat Enterprise Linux AI (RHEL AI), который специально адаптирован для выполнения задач машинного обучения и призван упростить создание серверных решений, использующих большие диалоговые модели. В состав входит подборка инструментов и фреймворков для машинного обучения, а также драйверы для использования различных аппаратных ускорителей AMD, Intel и NVIDIA, и компоненты для задействования возможностей серверов Dell, Cisco, HPE, Lenovo и SuperMicro, оптимизированных для AI-систем.

RHEL AI предназначен для разработки, тестирования и выполнения систем машинного обучения на базе большой языковой модели Granite, открытой компанией IBM под лицензией Apache 2.0, способной учитывать при генерации текста до 4 тысячи токенов и охватывающей 7 миллиардов параметров. Для взаимодействия с моделью Granite в дистрибутив интегрирован открытый инструментарий InstructLab, поддерживающий методологию LAB (Large-scale Alignment for chatBots) для подгонки под свои нужды и оптимизации моделей, а также для добавления дополнительных знаний и реализации новых навыков в предварительно натренированных моделях.

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

Кроме того, компания Red Hat представила новый режим для создания и управления системными образами на базе Red Hat Enterprise Linux - "image mode", который позволяет использовать для развёртывания операционной системы инструменты и технологии, применяемые для создания и запуска контейнеров приложений. Новый режим манипулирует монолитными системными образами, формируемыми при помощи инструментария rpm-ostree и обновляемыми атомарно без разбивки на отдельные пакеты.

Сборки могут формироваться в виде образов в форматах OCI (как в Docker), ISO, QCOW2, AMI, VMI и VMDK. Содержимое образа выбирается через редактирование файла Containerfile. Для создания и управления образами могут использоваться стандартные инструменты управления контейнерами, такие как Podman и OpenShift Container Platform. Для установки образов может применяться как штатный инсталлятор Anaconda, так и инструментарий bootc-image-builder, позволяющий сконвертировать образ контейнера в загрузочный дисковый образ. Для обновления загрузочных образов контейнеров, которые поставляются с ядром Linux и способны загружаться по аналогии с обычными сборками системы, применяется инструментарий bootc.

Источник: https://www.opennet.ru/opennews/art.shtml?num=61140

opennet honked 08 May 2024 15:00 +0200

Выпуск 9front 10522, ответвления от операционной системы Plan 9

Представлен новый выпуск операционной системы 9front, который опубликован под кодовым именем "DO NOT INSTALL" (приуроченная к релизу песня). В рамках проекта 9front с 2011 года сообществом развивается независимый от компании Bell Labs форк распределённой операционной системы Plan 9. Готовые установочные сборки сформированы для архитектур i386, x86_64 и плат Raspberry Pi 1-4. Код проекта распространяется под открытой лицензией Lucent Public License, основанной на IBM Public License, но отличающейся отсутствием требования публикации исходных текстов для производных работ.

Из особенностей 9front отмечается реализация дополнительных механизмов защиты, расширение поддержки оборудования, улучшение работы в беспроводных сетях, добавление новых файловых систем, реализация звуковой подсистемы и кодировщиков/декодировщиков звуковых форматов, поддержка USB, создание web-браузера Mothra, замена загрузчика и системы инициализации, применение шифрования данных на диске, поддержка Unicode, наличие эмулятора реального режима, поддержка архитектуры AMD64 и 64-разрядного адресного пространства.

Основная идея Plan 9 связана со стиранием различий между локальными и удалёнными ресурсами. Система представляет собой распределенную среду, базирующуюся на трех базовых принципах: все ресурсы можно рассматривать как иерархический набор файлов; нет различия в доступе к локальным и внешним ресурсам; каждый процесс имеет собственное изменчивое пространство имен. Для создания единой распределенной иерархии файлов-ресурсов используется протокол 9P.

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

  • Предложен новый драйвер Ext4srv с реализацией файловой системы Ext4, который заменил собой ранее применявшийся драйвер с ФС Ext2.
  • Расширена поддержка звуковых адаптеров с интерфейсом USB. Добавлена поддержка звуковых карт с частотой дискретизации, отличной от 44.1kHz.
  • Добавлена поддержка DNS over TLS.
  • Для плат Raspberry Pi портирован код для поддержки Wi-Fi.
  • Добавлена поддержка шины I2C и улучшена поддержка UART для MT7688.
  • Добавлена программа Vdiff, позволяющая просматривать отличия между файлами в графическом режиме.
  • В Mixfs разрешено переключение между звуковыми устройствами.
  • Изменено поведение IP-стека - выставленные маршруты теперь привязываются к сетевому интерфейсу и удаляются при его отключении.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61139

opennet honked 08 May 2024 12:00 +0200

Опубликован Fedora Asahi Remix 40, дистрибутив для ARM-чипов Apple

Представлен дистрибутив Fedora Asahi Remix 40, предназначенный для установки на компьютеры Mac, оснащённые ARM-чипами, разработанными компанией Apple. Fedora Asahi Remix 40 базируется на пакетной базе Fedora Linux 40 и оснащён инсталлятором Calamares. Это второй выпуск, опубликованный после перехода проекта Asahi с Arch на Fedora, который помог команде Asahi Linux сфокусировать усилия на обратном инжиниринге оборудования, не расходуя ресурсы на поддержку дистрибутива, которым теперь занимается рабочая группа Fedora Asahi SIG.

В Fedora Asahi Remix обеспечена возможность работы на системах Apple MacBook Air, MacBook Pro, Mac Mini, Mac Studio и iMac, оснащённых ARM-чипами Apple M1 и M2. В качестве основного пользовательского окружения поставляется KDE Plasma 6, но опционально доступен вариант на базе GNOME 46. В обеих редакциях используется Wayland, а для запуска X11-приложений применяется DDX-сервер XWayland. В графических драйверах обеспечена поддержка OpenGL 4.6 и OpenGL ES 3.2, которая официально сертифицирована консорциумом Khronos (в родных графических драйверах для чипов M1 от компании Apple реализована только спецификация OpenGL 4.1).

Полностью поддерживается звуковая подсистема компьютеров Apple, а также камера, Wi-Fi, Bluetooth и устройства ввода. Пока не поддерживаются: подключение экрана через USB-C, Thunderbolt / USB4, микрофон и Touch ID.

Источник: https://www.opennet.ru/opennews/art.shtml?num=61138

opennet honked 08 May 2024 12:00 +0200

Представлен Raspberry Pi Connect, сервис для подключения к Raspberry Pi OS из браузера

Разработчики проекта Raspberry Pi представили сервис Raspberry Pi Connect, предназначенный для удалённого подключения к рабочему столу дистрибутива Raspberry Pi OS через web-браузер. Сервис может использоваться в окружениях Raspberry Pi OS для плат Raspberry Pi 4, Raspberry Pi 400 и Raspberry Pi 5, построенных на базе Debian 12 и переведённых на графический стек на базе Wayland.

Для использования сервиса достаточно установить пакет "rpi-connect", после чего в системном лотке появится новый индикатор, через который можно активировать сервис. После регистрации подключиться к устройству из браузера можно через страницу connect.raspberrypi.com, которая используется только для координации подключений, а связь устанавливается между браузером и операционной системой напрямую при помощи протокола WebRTC. При невозможности установить прямое соединение опционально поддерживается проброс шифрованного туннеля через серверы организации Raspberry Pi Foundation (для обычных пользователей сервис обещают сохранить бесплатным). На стороне устройства для обработки соединений запускается фоновых процесс rpi-connect, который запускает VNC-сервер, к которому осуществляется подключения из VNC-клиента, оформленного для работы из браузера.

Источник: https://www.opennet.ru/opennews/art.shtml?num=61137

contrinitiator honked 08 May 2024 11:22 +0200

А Паустовский вообще крутейший! Часто тёплые моря как раз воспринимаются как пошлый "отдых", но поглядеть на какие-нибудь именитые ветра и послушать Чёрное море - такого бы я хотел! По теме погоды и разговоров:

У вас, сухопутных, разговоры о погоде считаются признаком пошлости и дурного тона. Когда в так называемом обществе совершенно не о чем говорить, вы краснеете и бормочете несколько слов, что «вот, мол, идет дождь» или «удивительно, какая стоит в этом году холодная весна». Окружающие смотрят на вас с сожалением, как на отпетого идиота. И они правы. Это действительно глупо. Такие разговоры я считаю насмешкой над сложными явлениями, происходящими в земной атмосфере. Если бы от погоды зависела ваша работа, жизнь и судьба ваших товарищей, как это бывает у моряков, вы бы не вели разговоры о ней так банально и невежественно. Поучитесь у рыбаков беседам на эту тему. Каждый рыбак расскажет вам о ветре или цвете неба такое, что вы закачаетесь!

#литература #погода

opennet honked 08 May 2024 11:00 +0200

Выпуск пакетного менеджера pacstall 5.0, развивающего аналог AUR для Ubuntu

Доступен выпуск пакетного менеджера pacstall 5.0, развивающего аналог концепции AUR для Ubuntu Linux и собственный репозиторий, в котором присутствует 518 пакетов, позволяющих установить в текущем окружении Ubuntu наиболее свежие версии интересующих программ, параллельно с имеющимися в системе программами. Пакеты оформляются в формате pacscript, похожем на PKGBUILD в AUR и также включающем сведения о загрузке, зависимостях, сборке и установке. Код утилиты написан на Shell и распространяется под лицензией GPLv3.

Среди особенностей инструментария:

  • Поддержка как сборки программ из исходных текстов архивов с релизами и срезов из git-репозиториев, так и установки готовых сборок и пакетов в форматах Appimage и deb.
  • Возможность ускорения загрузки пакетов при помощи утилиты axel, поддерживающей распараллеливание потоков и загрузку порций данных одновременно с нескольких серверов.
  • При обновлении возможна загрузка самых свежих коммитов из Git, без необходимости ожидания обновления пакета.
  • Возможность установки программ из нескольких репозиториев.
  • Возможность отслеживания обновлений Pacstall из любых веток и форков.
  • Поддержка автодополнения команд в оболочках bash, ZSH и fish.

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

  • В формат pacscript внесён ряд изменений, нарушающих совместимость, например, переименованы некоторые параметры (name -› pkgname, homepage -› url и т.п.).
  • Добавлена возможность ограничения версий в массивах с определением зависимостей.
  • Добавлена функция check() и связанные с ней флаги -Nc/--nocheck.
  • Добавлены функции {pre,post}_upgrade и pre_remove для запуска перед или после обновления и удаления пакета.
  • Предоставлена возможность определения конфликтующих пакетов.
  • Добавлен параметр со списком лицензий.
  • Добавлены флаги -Qa/--quality-assurance и Q/--quiet.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61136

opennet honked 08 May 2024 10:00 +0200

Проект GNOME опубликовал финансовый отчёт за 2023 год

Организация GNOME Foundation опубликовала финансовый отчёт за 2023 финансовый год, который охватывает показатели с октября 2022 года по сентябрь 2023 года. В отчёте также упомянуты основные события этого периода (релизы GNOME 44 и 45, назначение нового директора) и проведённые конференции разработчиков (GUADEC 2023 в Риге, GNOME Asia 2022 в Куала-Лумпуре, Linux App Summit в Брно).

Что касается финансовых показателей, то расходы за отчётный период заметно превысили поступление средств - получено 556 тысяч долларов, израсходовано 676 тысяч долларов (перерасход за счёт прошлых накоплений - $120 тысяч). При этом стоит отметить, что перерасход наблюдался и в прошлые периоды: в 2022 году проект получил $363 тысяч, а израсходовал $649 тысяч (перерасход $286 тысяч), в 2021 году проект получил $287 тысяч, а израсходовал $927 тысяч (перерасход $640 тысяч), в 2020 году проект получил $925 тысяч, а израсходовал $789 тысяч (остаток $136 тысяч), в 2019 году проект получил $915 тысяч, а израсходовал $608 тысяч (остаток $307 тысяч), в 2018 году проект получил 1.073 млн долларов, а израсходовал $365 тысяч (остаток $708 тысяч). В ноябре 2023 года проект также получил миллион евро от фонда Sovereign.

Что касается источников поступления средств в 2023 году, то из полученных 556 тысяч долларов, $422 тысячи связаны с пожертвованиями и спонсорской помощью, $47 тысяч заработаны при проведении конференций, $80 тысяч связаны с проектом GIMP. По расходам $283 тысячи потрачены на проведение конференций, $105 тысяч на поддержку и инфраструктуру, $96 тысяч на программу Outreach (оплата стажировок женщин и меньшинств), $30 тысяч передано проекту GIMP, $121 тысяча потрачена на административные расходы и $39 тысяч передано на финансирование других проектов.

Источник: https://www.opennet.ru/opennews/art.shtml?num=61135

opennet honked 08 May 2024 08:00 +0200

Выпуск NetBSD 8.3

Спустя четыре года с момента прошлого обновления ветки 8.x опубликован релиз операционной системы NetBSD 8.3, который завершил цикл сопровождения ветки netbsd-8. Таким оборазом, ветка NetBSD 8.x получала обновления на протяжении 6 лет. Выпуск отнесён к категории корректирующих обновлений и включает в исправления накопившихся проблем, связанных со стабильностью и безопасностью, выявленных с момента публикации NetBSD 8.2 в апреле 2020 года. Для тех, кому важна новая функциональность в марте был выпущен значительный релиз NetBSD 10.0, а в апреле предложено обновление NetBSD 9.4. Для загрузки подготовлены установочные образы размером 750 МБ, доступные в сборках для 57 системных архитектур и 16 различных семейств CPU.

Среди заметных изменений в NetBSD 8.3:

  • Обновлены версии libX11 1.6.10, xterm 366 и tmux 3.1c.
  • Актуализированы данные о часовых поясах и корневых серверах DNS.
  • В утилиты audioplay и audiorecord добавлена поддержка новых вариантов формата WAV.
  • В утилиту ftp перенесена поддержка относительных редиректов при использовании HTTP.
  • В httpd на 32-разрядных системах налажена обработка файлов, размером больше 4ГБ.
  • На системах с большим объёмом ОЗУ увеличен лимит, определяющий максимально допустимое число открытых файлов.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61134

continue honked 07 May 2024 17:04 +0200

=> gemini://any-key.press/forth/introduction.gmi Моё знакомство с Forth

TL;DR Книга "Starting FORTH" (в переводе "Начальный курс программирования на языке ФОРТ") от Leo Brodie это то, что нужно для знакомства со вселенной #Forth.

#gemini

continue bonked 07 May 2024 14:10 +0200
original: opennet@honk.any-key.press

Релиз набора компиляторов GCC 14

После года разработки опубликован релиз свободного набора компиляторов GCC 14.1, первый значительный выпуск в новой ветке GCC 14.x. В соответствии с новой схемой нумерации выпусков, версия 14.0 использовалась в процессе разработки, а незадолго до выхода GCC 14.1 уже ответвилась ветка GCC 15.0, на базе которой будет сформирован следующий значительный релиз GCC 15.1.

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

  • Значительно расширены возможности для статического анализа кода на языке Си, доступные через опцию "-fanalyzer" (статический анализ для языка С++ пока не доведён до должного вида). Усилен анализ операций со строками и проверка наличия завершающего строку нулевого символа. Добавлено новое предупреждение "-Wanalyzer-infinite-loop" для выявления бесконечных циклов. Добавлена серия предупреждений "-Wanalyzer-tainted-*" для выявления проблем с проверкой входных данных. Расширены возможности предупреждения "-Wanalyzer-out-of-bounds" для выявления переполнений буфера, например, добавлена возможность отображения диаграммы с визуализацией состояния, приводящего к переполнению.
  • Добавлена новая сборочная опция "--enable-host-pie" для сборки исполняемых файлов компилятора в режиме PIE (Position Independent Executable), а также опция "--enable-host-bind-now" для связывания с опциями "-Wl,-z,now".
  • Добавлена новая опция "-fhardened", включающая флаги для усиления безопасности (-D_FORTIFY_SOURCE=3 -D_GLIBCXX_ASSERTIONS -ftrivial-auto-var-init=zero -fPIE -pie -Wl,-z,relro,-z,now -fstack-protector-strong -fstack-clash-protection -fcf-protection=full).
  • Добавлена опция "-fharden-control-flow-redundancy" для добавления в конец функций кода для выявления некоторых форм неопределённого поведения, которые потенциально могут привести к нарушению нормального порядка выполнения (control flow) в результате применения эксплоитов, изменяющих хранимые в памяти указатели на функции и передающих управление в середину функций.
  • Добавлен новый атрибут типов "hardbool", позволяющий переопределить значения, сопоставленные с признаками true и false для затруднения некоторых видов атак.
  • Добавлен новый атрибут типов strub для управление обнулением кадров стека с данными функций и переменных после выхода из функции или срабатывания исключения.
  • Добавлена опция -finline-stringops для включения inline-раскрытия функций memcmp, memcpy, memmove и memset, даже когда это не нужно для оптимизации.
  • Добавлен новый атрибут функций null_terminated_string_arg(PARAM_IDX) для пометки параметров, которые следует трактовать как строки, заканчивающиеся нулевым символом.
  • В векторизаторе реализована поддержка векторизации циклов, содержащих выражения "break".
  • Добавлена начальная поддержка предварительной версии спецификации OpenMP 6.0 (Open Multi-Processing) и продолжена реализация стандартов OpenMP 5.0, 5.1 и 5.2, определяющих API и способы применения методов параллельного программирования на многоядерных и гибридных (CPU+GPU/DSP) системах с общей памятью и блоками векторизации (SIMD).
  • Улучшена реализация спецификаций параллельного программирования OpenACC 2.7 и 3.2, определяющих средства для выноса операций (offloading) на GPU и специализированные процессоры, такие как NVIDIA PTX.
  • Для C, C++ и Objective-C реализована поддержка расширений "__has_feature" и "__has_extension", применяемых в Clang.
  • Реализованы возможности, определённые в будущем Си-стандарте C23, такие как типы "_BitInt (N)" и "unsigned _BitInt (N))". Структуры, объединения и перечисления разрешено определять более одного раза в одной области видимым с одним и тем же содержимым и повторяющимся тегом. Добавлена поддержка заголовочного файла stdckdint.h. Для включения поддержки элементов C23 предложены флаги "-std=c23", "-std=gnu23" и "-Wc11-c23-compat".
  • Для языка Си добавлено выражение "#pragma GCC novector", отключающее векторизацию анотированных циклов.
  • Добавлены возможности, связанные со стандартом C++23. Добавлена поддержка механизма "Deducing this", позволяющего использовать в шаблоне параметры с признаком "this" и дающего возможность из функции класса узнать категорию выражения (например, является ли константой), для которого эта функция вызвана. Реализовано требование, в соответствии с которым все функции, вызывающие функции с признаком consteval тоже становятся consteval, т.е. выполняются при компиляции. Ослаблены некоторые требования к "constexpr".
  • Добавлены возможности, связанные с будущим стандартом C++2с (C++26). Например, предоставлена возможность использования строковых литералов в контексте, в котором они не используются для инициализации массива символов и не попадают в результирующий код, а применяются только во время компиляции для диагностических сообщений и препроцессинга. Добавлена возможность использования сразу нескольких переменных-заполнителей с именем "_" в одной области видимости. Переведено в разряд устаревших выполнение неявных преобразований перечисляемых значений в арифметических вычислениях.
  • В libstdc++ улучшена поддержка стандартов C++20, C++23 и C++26.
  • В компиляторе для языка Fortran началась работа над поддержкой стандарта Fortran 2023 (-std=f2023).
  • Объявлена устаревшей поддержка расширения GCC, позволяющего указывать гибкий элемент-массив (массив неопределённого размера, например, "int b[]") не в самом конце структуры (Flexible Array Members). Массив неопределённого размера в дальнейшем можно будет использовать только в конце структуры.
  • В бэкенде для архитектуры AArch64 реализована поддержка CPU Ampere-1B (ampere1b), Arm Cortex-A520 (cortex-a520), Arm Cortex-A720 (cortex-a720), Arm Cortex-X4 (cortex-x4) и Microsoft Cobalt-100 (cobalt-100). Для использования в опциях "-mcpu=" и "-mtune=" добавлены новые идентификаторы CPU generic, generic-armv8-a и generic-armv9-a. Добавлена поддержка расширений Arm SME и SME2 (Streaming Matrix Extensions). Реализованы специфичные для архитектуры AArch64 оптимизации.
  • В бэкенде для архитектуры ARM добавлена поддержка CPU Cortex-M52 (cortex-m52 в опциях "-mcpu=" и "-mtune=").
  • В бэкенде генерации кода для GPU AMD Radeon (GCN) реализована поддержка GPU AMD Radeon gfx90c (GCN5), gfx1030, gfx1036 (RDNA2), gfx1100 и gfx1103 (RDNA3). Повышена производительность для устройств AMD серий MI100 и MI200. По умолчанию активирована архитектура устройств gfx900 (Vega).
  • В бэкенд для архитектуры x86 добавлена поддержка расширений архитектуры набора команд Intel AVX10.1, Intel APX (частично), Intel AVX-VNNI-INT16, Intel SHA512, Intel SM3, Intel SM4, Intel USER_MSR.

    Добавлена поддержка CPU AMD на базе ядра Zen 5 (-march=znver5), а также процессоров Intel Clearwater Forest (-march=clearwaterforest), Arrow Lake (-march=arrowlake), Arrow Lake S (-march=arrowlake-s), Lunar Lake (-march=lunarlake) и Panther Lake (-march=pantherlake). Добавлена опция "-m[no-]evex512" для управления задействованием 512-битных векторов (по умолчанию включается при поддержке AVX512F. Объявлена устаревшей поддержка CPU Intel Xeon Phi.

  • Расширены возможности бэкендов для платформ LoongArch, AVR и RISC-V.
  • Расширены возможности вывода диагностики в формате SARIF, основанном на JSON. Формат SARIF можно использовать для получения результатов статического анализа (GCC -fanalyzer), а также для получения сведений о предупреждениях и ошибках.
  • Переведена в разряд устаревших и будет удалена в следующем релизе GCC поддержка целевых архитектур ia64 и nios2, применяемых в процессорах Intel Itanium и Nios II.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61132

opennet honked 07 May 2024 14:00 +0200

Релиз набора компиляторов GCC 14

После года разработки опубликован релиз свободного набора компиляторов GCC 14.1, первый значительный выпуск в новой ветке GCC 14.x. В соответствии с новой схемой нумерации выпусков, версия 14.0 использовалась в процессе разработки, а незадолго до выхода GCC 14.1 уже ответвилась ветка GCC 15.0, на базе которой будет сформирован следующий значительный релиз GCC 15.1.

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

  • Значительно расширены возможности для статического анализа кода на языке Си, доступные через опцию "-fanalyzer" (статический анализ для языка С++ пока не доведён до должного вида). Усилен анализ операций со строками и проверка наличия завершающего строку нулевого символа. Добавлено новое предупреждение "-Wanalyzer-infinite-loop" для выявления бесконечных циклов. Добавлена серия предупреждений "-Wanalyzer-tainted-*" для выявления проблем с проверкой входных данных. Расширены возможности предупреждения "-Wanalyzer-out-of-bounds" для выявления переполнений буфера, например, добавлена возможность отображения диаграммы с визуализацией состояния, приводящего к переполнению.
  • Добавлена новая сборочная опция "--enable-host-pie" для сборки исполняемых файлов компилятора в режиме PIE (Position Independent Executable), а также опция "--enable-host-bind-now" для связывания с опциями "-Wl,-z,now".
  • Добавлена новая опция "-fhardened", включающая флаги для усиления безопасности (-D_FORTIFY_SOURCE=3 -D_GLIBCXX_ASSERTIONS -ftrivial-auto-var-init=zero -fPIE -pie -Wl,-z,relro,-z,now -fstack-protector-strong -fstack-clash-protection -fcf-protection=full).
  • Добавлена опция "-fharden-control-flow-redundancy" для добавления в конец функций кода для выявления некоторых форм неопределённого поведения, которые потенциально могут привести к нарушению нормального порядка выполнения (control flow) в результате применения эксплоитов, изменяющих хранимые в памяти указатели на функции и передающих управление в середину функций.
  • Добавлен новый атрибут типов "hardbool", позволяющий переопределить значения, сопоставленные с признаками true и false для затруднения некоторых видов атак.
  • Добавлен новый атрибут типов strub для управление обнулением кадров стека с данными функций и переменных после выхода из функции или срабатывания исключения.
  • Добавлена опция -finline-stringops для включения inline-раскрытия функций memcmp, memcpy, memmove и memset, даже когда это не нужно для оптимизации.
  • Добавлен новый атрибут функций null_terminated_string_arg(PARAM_IDX) для пометки параметров, которые следует трактовать как строки, заканчивающиеся нулевым символом.
  • В векторизаторе реализована поддержка векторизации циклов, содержащих выражения "break".
  • Добавлена начальная поддержка предварительной версии спецификации OpenMP 6.0 (Open Multi-Processing) и продолжена реализация стандартов OpenMP 5.0, 5.1 и 5.2, определяющих API и способы применения методов параллельного программирования на многоядерных и гибридных (CPU+GPU/DSP) системах с общей памятью и блоками векторизации (SIMD).
  • Улучшена реализация спецификаций параллельного программирования OpenACC 2.7 и 3.2, определяющих средства для выноса операций (offloading) на GPU и специализированные процессоры, такие как NVIDIA PTX.
  • Для C, C++ и Objective-C реализована поддержка расширений "__has_feature" и "__has_extension", применяемых в Clang.
  • Реализованы возможности, определённые в будущем Си-стандарте C23, такие как типы "_BitInt (N)" и "unsigned _BitInt (N))". Структуры, объединения и перечисления разрешено определять более одного раза в одной области видимым с одним и тем же содержимым и повторяющимся тегом. Добавлена поддержка заголовочного файла stdckdint.h. Для включения поддержки элементов C23 предложены флаги "-std=c23", "-std=gnu23" и "-Wc11-c23-compat".
  • Для языка Си добавлено выражение "#pragma GCC novector", отключающее векторизацию анотированных циклов.
  • Добавлены возможности, связанные со стандартом C++23. Добавлена поддержка механизма "Deducing this", позволяющего использовать в шаблоне параметры с признаком "this" и дающего возможность из функции класса узнать категорию выражения (например, является ли константой), для которого эта функция вызвана. Реализовано требование, в соответствии с которым все функции, вызывающие функции с признаком consteval тоже становятся consteval, т.е. выполняются при компиляции. Ослаблены некоторые требования к "constexpr".
  • Добавлены возможности, связанные с будущим стандартом C++2с (C++26). Например, предоставлена возможность использования строковых литералов в контексте, в котором они не используются для инициализации массива символов и не попадают в результирующий код, а применяются только во время компиляции для диагностических сообщений и препроцессинга. Добавлена возможность использования сразу нескольких переменных-заполнителей с именем "_" в одной области видимости. Переведено в разряд устаревших выполнение неявных преобразований перечисляемых значений в арифметических вычислениях.
  • В libstdc++ улучшена поддержка стандартов C++20, C++23 и C++26.
  • В компиляторе для языка Fortran началась работа над поддержкой стандарта Fortran 2023 (-std=f2023).
  • Объявлена устаревшей поддержка расширения GCC, позволяющего указывать гибкий элемент-массив (массив неопределённого размера, например, "int b[]") не в самом конце структуры (Flexible Array Members). Массив неопределённого размера в дальнейшем можно будет использовать только в конце структуры.
  • В бэкенде для архитектуры AArch64 реализована поддержка CPU Ampere-1B (ampere1b), Arm Cortex-A520 (cortex-a520), Arm Cortex-A720 (cortex-a720), Arm Cortex-X4 (cortex-x4) и Microsoft Cobalt-100 (cobalt-100). Для использования в опциях "-mcpu=" и "-mtune=" добавлены новые идентификаторы CPU generic, generic-armv8-a и generic-armv9-a. Добавлена поддержка расширений Arm SME и SME2 (Streaming Matrix Extensions). Реализованы специфичные для архитектуры AArch64 оптимизации.
  • В бэкенде для архитектуры ARM добавлена поддержка CPU Cortex-M52 (cortex-m52 в опциях "-mcpu=" и "-mtune=").
  • В бэкенде генерации кода для GPU AMD Radeon (GCN) реализована поддержка GPU AMD Radeon gfx90c (GCN5), gfx1030, gfx1036 (RDNA2), gfx1100 и gfx1103 (RDNA3). Повышена производительность для устройств AMD серий MI100 и MI200. По умолчанию активирована архитектура устройств gfx900 (Vega).
  • В бэкенд для архитектуры x86 добавлена поддержка расширений архитектуры набора команд Intel AVX10.1, Intel APX (частично), Intel AVX-VNNI-INT16, Intel SHA512, Intel SM3, Intel SM4, Intel USER_MSR.

    Добавлена поддержка CPU AMD на базе ядра Zen 5 (-march=znver5), а также процессоров Intel Clearwater Forest (-march=clearwaterforest), Arrow Lake (-march=arrowlake), Arrow Lake S (-march=arrowlake-s), Lunar Lake (-march=lunarlake) и Panther Lake (-march=pantherlake). Добавлена опция "-m[no-]evex512" для управления задействованием 512-битных векторов (по умолчанию включается при поддержке AVX512F. Объявлена устаревшей поддержка CPU Intel Xeon Phi.

  • Расширены возможности бэкендов для платформ LoongArch, AVR и RISC-V.
  • Расширены возможности вывода диагностики в формате SARIF, основанном на JSON. Формат SARIF можно использовать для получения результатов статического анализа (GCC -fanalyzer), а также для получения сведений о предупреждениях и ошибках.
  • Переведена в разряд устаревших и будет удалена в следующем релизе GCC поддержка целевых архитектур ia64 и nios2, применяемых в процессорах Intel Itanium и Nios II.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61132

continue bonked 07 May 2024 11:30 +0200
original: grunfink@comam.es

I'm glad to announce the release of version 2.52 of #snac, the simple, minimalistic #ActivityPub instance server written in C. It includes the following changes:

Posts that were liked or boosted can now be unliked and unboosted.

Outgoing message timeouts are no longer hardcoded and can be configured (see snac(8) for more information).

Fixed a bug that caused some incorrect unfollows under special conditions (with shared inboxes enabled and users from the same instance that follow each other, the internal message distributor was confused).

Mastodon API: Added support for lists.

Added a header to avoid over-zealous caching in some browsers (contributed by louis77).

Added support for running and federating inside hidden networks like Tor, I2P or Loki (contributed by iwojima).

Fixed an error processing polls coming from Pleroma instances.

https://comam.es/what-is-snac

If you find #snac useful, please consider buying grunfink a coffee: https://ko-fi.com/grunfink

Usage tips: Use social media as little as possible. Go for a walk. Meet with friends. Read a good book.

#snacAnnounces

opennet honked 07 May 2024 11:00 +0200

Атака TunnelVision, позволяющая перенаправить VPN-трафик через манипуляции с DHCP

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

Суть атаки в том, что атакующий может запустить свой DHCP-сервер и использовать его для передачи клиенту информации для изменения маршрутизации. В частности, атакующий может воспользоваться предоставляемой в протоколе DHCP опцией 121 (RFC-3442, принят в 2002 году), предназначенной для передачи сведений о статических маршрутах, для внесения изменений в таблицу маршрутизации на машине жертвы и направления трафика в обход VPN. Перенаправление осуществляется через выставления серии маршрутов для подсетей с префиксом /1, которые имеют более высокий приоритет, чем применяемый по умолчанию маршрут с префиксом /0 (0.0.0.0/0), соответственно трафик вместо выставленного для VPN виртуального сетевого интерфейса, будет направлен через физический сетевой интерфейс на хост атакующего в локальной сети.

Атака может быть осуществлена в любых операционных системах, поддерживающих 121 опцию DHCP, включая Linux, Windows, iOS и macOS, независимо от используемого протокола VPN (Wireguard, OpenVPN, IPsec) и набора шифров. Платформа Android атаке не подвержена, так как не обрабатывает опцию 121 в DHCP. При этом атака позволяет получить доступ к трафику, но не даёт возможность вклиниться в соединения и определить содержимое, передаваемое с использованием защищённых протоколов уровня приложений, таких как TLS и SSH, например, атакующий не может определить содержимое запросов по HTTPS, но может понять к каким серверам они отправляются.

Для защиты от атаки можно запретить на уровне пакетного фильтра отправку пакетов, адресованных в VPN-интерфейс, через другие сетевые интерфейсы; блокировать DHCP-пакеты с опцией 121; использовать VPN внутри отдельной виртуальной машины (или контейнера), изолированной от внешней сети, или применять специальные режимы настройки туннелей, использующие пространства имён в Linux (network namespace). Для экспериментов с проведением атаки опубликован набор скриптов.

<iframe src="https://www.youtube.com/embed/ajsLmZia6UU?si=AT5NmHQjMy9D6vWF">

Можно отметить, что идея локального изменения маршрутизации не нова и ранее обычно использовалась в атаках, нацеленных на подмену DNS-сервера. В похожей атаке TunnelCrack, в которой перенаправление трафика осуществлялось через замену шлюза по умолчанию, проблема затрагивала все проверенные VPN-клиенты для iOS, в 87.5% VPN-клиентов для macOS, 66.7% для Windows, 35.7% для Linux и 21.4% для Android. В контексте VPN и DHCP метод также упоминался ранее, например, ему посвящён один из докладов на прошлогодней конференции USENIX 2023 (исследование показало, что 64.6% из 195 протестированных VPN-клиентов подвержены атаке).

Для подстановки маршрутов ранее также предлагалось использовать специально оформленный USB-брелок, симулирующий работу сетевого адаптера, который при подключении к компьютеру при помощи DHCP объявляет себя в качестве шлюза. Кроме того, при наличии контроля за шлюзом (например, при подключении жертвы к контролируемой атакующим беспроводной сети) была разработана техника подстановки пакетов в туннель, воспринимаемых в контексте сетевого интерфейса VPN.

Потоки данных при использовании VPN:

Потоки данных после совершения атаки:



Источник: https://www.opennet.ru/opennews/art.shtml?num=61130

opennet honked 07 May 2024 09:00 +0200

Выпуск PortableGL 0.98, реализации OpenGL 3 на языке Си

После более года разработки подготовлен выпуск проекта PortableGL 0.98, развивающего программную реализацию графического API OpenGL 3.x, написанную целиком на языке Си (C99). Теоретически PortableGL может быть использован в любых приложениях, принимающих текстуру или фреймбуфер в качестве входных данных. Код оформлен в виде одного заголовочного файла и распространяется под лицензией MIT.

Проектом определены такие цели, как переносимость, соответствие API OpenGL, простота использования, простой код и высокая производительность. Из областей применения упоминаются обучение концепциям построения графических API, использование для работы с 3D-графикой на системах без GPU и интеграция поддержи OpenGL в специфичные операционные системы, для которых не перенесён пакет Mesa3D. Из готовых проектов, использующих PortableGL, отмечается порт Minecraft-подобной игры Craft.

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

  • Реализована новая стандартная библиотека шейдеров.
  • Добавлена поддержка дополнительных форматов текстур и их автоматической конвертации в формат RGBA.
  • Добавлена поддержка использования для атрибутов вершин с типами, отличными от float.
  • Предложен новый улучшенный алгоритм формирования широких линий.
  • Расширен API. Добавлено много новых функций и возможностей OpenGL, среди которых и возможности OpenGL ES 2/3.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61131

opennet honked 06 May 2024 21:00 +0200

Выпуск Lacmus 1.0.0, инструмента для поиска пропавших людей

Состоялся релиз программы Lacmus 1.0 "Furious Vaporization". Проект представляет собой кроссплатформенное решение для автоматизации поиска и спасения пропавших людей с помощью алгоритмов компьютерного зрения и AI. Проект написан на языке C# и распространяется под лицензией GPLv3, а его разработка велась более пяти лет в тесном контакте с сообществом поисково-спасательных отрядов.

Программный комплекс Lacmus позволяет осуществлять автоматизированный поиск по фотографиям, отснятым с БПЛА, помогает выявлять снимки, на которых присутствует потерявшийся человек, и предоставляет пользователю координаты искомого объекта. Работа программы основана на применении нейронных сетей и алгоритмов компьютерного зрения для распознавания людей на снимках с БПЛА, что позволяет увеличить эффективность поисковых операций, сократить время на их проведение и, в конечном итоге, повысить вероятность успешного спасения потерявшихся людей.

Программа поддерживает различные операционные системы, включая Linux, Windows и macOS, и обеспечивает возможность использования различных типов графических ускорителей, таких как GPU NVIDIA, Intel, AMD, NPU и TPU, для оптимизации работы нейронных сетей. Для пользовательского интерфейса используется кроссплатформенный фреймворк AvaloniaUI, а для запуска моделей машинного обучения применяется ONNX Runtime и легковесная версия TensorFlow.

Модели компьютерного зрения распространяются в виде подключаемых модулей, которые можно скачать в каталоге ML-моделей в окне настроек программы, притом каждый такой плагин содержит в себе необходимые зависимости, избавляя конечного пользователя от установки дополнительных зависимостей и библиотек. В качестве основных архитектур нейронных сетей используются YOLOv5 и RetinaNet.

Проект развивается при поддержке ассоциации Lacmus Foundation, которая занимается открытыми исследованиями в области поиска и спасения пропавших людей. Организация не имеет юридических структур и основана на добровольных началах. Статистика говорит о том, что ежегодно в мире тысячи людей пропадают без вести. Проект Lacmus призван быть лакмусовой бумажкой (за что и получил своё название) в решении этой проблемы, обеспечивая поисковым и спасательным службам современные средства для эффективного выполнения их задач и спасения как можно большего числа жизней.

Источник: https://www.opennet.ru/opennews/art.shtml?num=61129

opennet honked 06 May 2024 20:00 +0200

Опубликован дистрибутив AlmaLinux 9.4

Доступен выпуск дистрибутива AlmaLinux 9.4, синхронизированный c новым выпуском Red Hat Enterprise Linux 9.4 и содержащий все предложенные в данном выпуске изменения. Установочные образы подготовлены для архитектур x86_64, ARM64, ppc64le и s390x в форме загрузочного (988 МБ), минимального (1.9 ГБ) и полного образа (10 ГБ). Позднее будут сформированы Live-сборки с GNOME, KDE, MATE и Xfce, а также образы для плат Raspberry Pi, контейнеров, WSL (Windows Subsystem for Linux) и облачных платформ.

Дистрибутив по возможности бинарно совместим с Red Hat Enterprise Linux и может использоваться в качестве замены RHEL 9.4 и CentOS 9 Stream. Изменения сводятся к ребрендингу, удалению специфичных для RHEL пакетов, таких как redhat-*, insights-client, subscription-manager-migration*, kpatch*, kmod-redhat-*, rhc, spice* и virtio-win. Дополнительно для использования доступен репозиторий Synergy, в котором размещены пакеты, отличающиеся от Red Hat Enterprise Linux. В настоящее время в репозитории Synergy уже опубликованы пакеты c пользовательским окружением Pantheon, развиваемым проектом Elementary OS, и утилитой Warpinator, предназначенной для шифрованного обмена файлами между двумя компьютерами.

Дополнительно сообщается о формировании двух новых SIG-групп (Special Interest Group) HPC и AI, нацеленных на создание и сопровождение решений на базе AlmaLinux для высокопроизводительных вычислений и машинного обучения, а также на предоставление поддержки в данных областях и продвижение связанных с ними оптимизаций и новшеств. В рамках созданных групп планируется объединить организации, компании и представителей сообщества, заинтересованных в использовании AlmaLinux в качестве платформы для развёртывания систем HPC и AI.

Дистрибутив AlmaLinux основан компанией CloudLinux в ответ на преждевременное сворачивание поддержки CentOS 8 компанией Red Hat (выпуск обновлений для CentOS 8 прекращён в конце 2021 года, а не в 2029 году, как предполагали пользователи). Проект курирует отдельная некоммерческая организация AlmaLinux OS Foundation, которая была создана для разработки на нейтральной площадке с участием сообщества и c использованием модели управления, похожей на организацию работы проекта Fedora. Дистрибутив бесплатен для всех категорий пользователей. Все наработки AlmaLinux публикуются под свободными лицензиями.

Кроме AlmaLinux, в качестве альтернатив классическому CentOS также позиционируются Rocky Linux (развивается сообществом под руководством основателя CentOS), VzLinux (подготовлен компанией Virtuozzo), Oracle Linux, SUSE Liberty Linux и EuroLinux. Кроме того, компания Red Hat предоставила возможность бесплатного использования RHEL в организациях, развивающих открытое ПО, и в окружениях индивидуальных разработчиков, насчитывающих до 16 виртуальных или физических систем.

Источник: https://www.opennet.ru/opennews/art.shtml?num=61128

opennet honked 06 May 2024 19:00 +0200

Фонд СПО объявил обладателей ежегодной премии за вклад в развитие свободного ПО

На конференции LibrePlanet 2024 состоялась церемония награждения, на которой объявлены лауреаты ежегодной премии "Free Software Awards 2023", учрежденной Фондом свободного ПО (FSF) и присуждаемой людям, внесшим наиболее значительный вклад в развитие свободного ПО, а также социально значимым свободным проектам. Победители получили памятные пластинки и грамоты (премия FSF не подразумевает денежного вознаграждения).

Премию за продвижение и развитие свободного ПО получил Бруно Хайбле (Bruno Haible), сопровождающий проект Gnulib, развивающий коллекцию типового кода для совместного использования в различных пакетах GNU. Бруно также является одним из создателей CLISP, реализации языка LISP, и участником разработки GNU M4, Automake, libiconv и gettext.

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

В номинации за выдающийся вклад нового участника в развитие свободного ПО, которая присуждается новичкам, первый вклад которых показал заметную приверженность движению свободного ПО, премию получил Ник Логоззо (Nick Logozzo), студент Университета штата Нью-Йорк в Стони-Бруке, развивающий набор приложений Nickvision для GNOME, написанных на C# с использованием GTK 4 и libadwaita. Среди проектов Ника программа Parabolic для загрузки видео/аудио из Web и просмотра YouTube без выполнения кода на JavaScript (обвязка над утилитой yt-dlp), система тэгирования музыки Tagger, система управления финансами Denaro, визуализатор звука Cavalier и FlatpakGenerator, генератор Flatpak-файлов для проектов на C#.

Список прошлых победителей:

  • 2022 Эли Зарецкий (Eli Zaretskii), один из сопровождающих GNU Emacs.
  • 2021 Пол Эггерт (Paul Eggert), отвечающий за поддержание базы часовых поясов, используемой в большинстве Unix-систем и во всех Linux-дистрибутивах.
  • 2020 Бредли Кун (Bradley M. Kuhn), исполнительный директор и один из создателей правозащитной организации Software Freedom Conservancy (SFC).
  • 2019 Джим Мейринг (Jim Meyering), с 1991 года занимается сопровождением пакета GNU Coreutils, один из основных разработчиков autotools и создатель Gnulib.
  • 2018 Дебора Николсон (Deborah Nicholson), директор по взаимодействию с сообществом в организации Software Freedom Conservancy;
  • 2017 Карен Сэндлер (Karen Sandler), директор правозащитной организации Software Freedom Conservancy;
  • 2016 Александре Олива (Alexandre Oliva), бразильский популяризатор и разработчик свободного ПО, основатель Латиноамериканского Фонда СПО, автор проекта Linux-Libre (полностью свободный вариант ядра Linux);
  • 2015 Вернер Кох (Werner Koch), создатель и основной разработчик инструментария GnuPG (GNU Privacy Guard);
  • 2014 Себастьян Жодонь (Sébastien Jodogne), автор Orthanc, свободного DICOM-сервера для обеспечения доступа к данным компьютерной томографии;
  • 2013 Мэтью Гаррет (Matthew Garrett), один из разработчиков ядра Linux, входящий в технический совет организации Linux Foundation, внёсший значительный вклад в обеспечение загрузки Linux на системах с UEFI Secure Boot;
  • 2012 Фернандо Переc (Fernando Perez), автор IPython, интерактивной оболочки для языка Python;
  • 2011 Юкихиро Мацумото (Yukihiro Matsumoto), автору языка программирования Ruby. Юкихиро уже на протяжении 20 лет участвует в развитии проектов GNU, Ruby и других открытых проектов;
  • 2010 Роб Савуа (Rob Savoye), лидер проекта по созданию свободного Flash-плеера Gnash, участник разработки GCC, GDB, DejaGnu, Newlib, Libgloss, Cygwin, eCos, Expect, основатель компании Open Media Now;
  • 2009 Джон Гилмор (John Gilmore), один из основателей правозащитной организации Electronic Frontier Foundation, создатель легендарного списка рассылки Cypherpunks и иерархии Usenet-конференций alt.*. Учредитель компании Cygnus Solutions, первой начавшей оказывать коммерческую поддержку для решений на базе свободного ПО. Основатель свободных проектов Cygwin, GNU Radio, Gnash, GNU tar, GNU UUCP и FreeS/WAN;
  • 2008 Wietse Venema (известный эксперт в области компьютерной безопасности, создатель таких популярных проектов, как Postfix, TCP Wrapper, SATAN и The Coroner's Toolkit);
  • 2007 Harald Welte (архитектор мобильной платформы OpenMoko, один из 5 основных разработчиков netfilter/iptables, мантейнер подсистемы пакетной фильтрации Linux ядра, активист движения свободного программного обеспечения, создатель сайта gpl-violations.org);
  • 2006 Theodore T'so (разработчик Kerberos v5, файловых систем ext2/ext3, известный хакер Linux ядра и участник группы, разработавшей спецификацию IPSEC);
  • 2005 Andrew Tridgell (создатель проектов samba и rsync);
  • 2004 Theo de Raadt (руководитель проекта OpenBSD);
  • 2003 Alan Cox (вклад в разработку Linux ядра);
  • 2002 Lawrence Lessig (популяризатор открытого ПО);
  • 2001 Guido van Rossum (автор языка Python);
  • 2000 Brian Paul (разработчик библиотеки Mesa 3D);
  • 1999 Miguel de Icaza (лидер проекта GNOME);
  • 1998 Larry Wall (создатель языка Perl).

Премию за развитие социально значимых свободных проектов получили организации и сообщества: GNU Jami (2022), SecuRepairs (2021), CiviCRM (2020), Let's Encrypt (2019), OpenStreetMap (2018), Public Lab (2017), SecureDrop (2016), Library Freedom Project (2015), Reglue (2014), GNOME Outreach Program for Women (2013), OpenMRS (2012), GNU Health (2011), Tor Project (2010), Internet Archive (2009), Creative Commons (2008), Groklaw (2007), Sahana (2006) и Wikipedia (2005).

Источник: https://www.opennet.ru/opennews/art.shtml?num=61127

continue honked 06 May 2024 16:15 +0200

Сделал форк перевода Тривиальных Технологий для #Gemini капсулы:

=> gemini://any-key.press/tt

opennet honked 06 May 2024 12:00 +0200

Выпуск децентрализованной видеовещательной платформы PeerTube 6.1

Состоялся выпуск децентрализованной платформы для организации видеохостинга и видеовещания PeerTube 6.1. PeerTube предлагает независимую от отдельных поставщиков альтернативу YouTube, Dailymotion и Vimeo, использующую сеть распространения контента на базе P2P-коммуникаций и связывания между собой браузеров посетителей. Наработки проекта распространяются под лицензией AGPLv3.

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

  • Предоставлена возможность экспорта всех данных, связанных с учётной записью, среди которых видео, каналы и настройки. Данные экспортируются в форме одного загружаемого архива, который может использоваться для импорта на другой системе.
  • Обеспечено сохранение оригинального файла с видео, изначально загруженного в PeerTube и затем перекодированного в другие форматы (раньше после перекодирования исходный файл удалялся). Добавленная возможность позволяет использовать PeerTube для хранения своих видеоархивов, без деления на локальные и внешние видео.
  • Добавлена возможность создания баннера для своего сервера, который будет отображаться на станице о сервере, на странице входа, при регистрации и при поиске в каталоге JoinPeerTube, а также на страницах, в которых используется тег "‹peertube-instance-banner›". Аналогично добавлена возможность добавления аватара, видимо в мобильном приложении и на домашней странице сервера.
  • Задержка перед началом подсчёта просмотров видео снижена с 30 до 10 секунд по аналогии с Vimeo, Instagram, TikTok и Mux. При подсчёте просмотров теперь учитывается не только IP-адрес, но и идентификатор браузера. На странице со статистикой просмотров обеспечено отображение данных в привязке к отдельным регионам, а не только к странам.
  • Для упрощения доступа к субтитрам в видеопроигрыватель добавлена отдельная кнопка "СС" (7 на скриншоте ниже), при нажатии на которую будет включён показ субтитров на последнем выбранном языке. Также предоставлена возможность смены языка через меню с настройками (8 на скриншоте).
  • В интерфейсе пользователя предоставлена возможность загрузки видео напрямую из библиотеки.
  • Для администратора добавлены возможности сортировки пользователей и видео по размеру данных, сохранённых на диске.
  • Устранены две уязвимости в реализации протокола ActivityPub. Первая уязвимость приводит к утечке данных, связанных с приватными видео, таких как комментарии и лайки. Вторая уязвимость касается некорректного управления доступом к объектам JSON-LD, загруженным из федеративной сети.

Платформа PeerTube изначально была основана на применении BitTorrent-клиента WebTorrent, запускаемого в браузере и использующего технологию WebRTC для организации прямого P2P-канала связи между браузерами. Позднее вместо WebTorrent был задействован протокол HLS (HTTP Live Streaming) в связке с WebRTC, позволяющий адаптивно управлять потоком в зависимости от полосы пропускания. Для объединения разрозненных серверов с видео в общую федеративную сеть, в которой посетители участвуют в доставке контента и имеют возможность подписки на каналы и получения уведомлений о новых видео, задействован протокол ActivityPub. Предоставляемый проектом web-интерфейс построен с использованием фреймворка Angular.

Федеративная сеть PeerTube образуется как содружество связанных между собой небольших серверов хостинга видео, на каждом из которых имеется свой администратор и могут быть приняты свои правила. Каждый сервер с видео выполняет роль BitTorrent-трекера, на котором размещены учётные записи пользователей данного сервера и их видео. Идентификатор пользователя формируются в форме "@имя_пользователя@домен_сервера". Передача данных при просмотре осуществляется непосредственно из браузеров других посетителей, просматривающих контент.

Если видео никто не просматривает, отдача организуется сервером, на который изначально загружено видео (используется протокол WebSeed). Помимо распределения трафика между пользователями, просматривающими видео, PeerTube также позволяет узлам, запущенным авторами для первичного размещения видео, кэшировать видео других авторов, формируя распределённую сеть не только из клиентов, но и из серверов, а также обеспечивая отказоустойчивость. Имеется поддержка потокового вещания (live streaming) с доставкой контента в режиме P2P (для управления стримингом могут использоваться типовые программы, такие как OBS).

Для начала вещания через PeerTube пользователю достаточно загрузить на один из серверов видеоролик, описание и набор тегов. После этого ролик станет доступен во всей федеративной сети, а не только с сервера первичной загрузки. Для работы с PeerTube и участия в распространении контента достаточно обычного браузера и не требуется установка дополнительного ПО. Пользователи могут отслеживать активности в выбранных видеоканалах, подписавшись на интересующие каналы в федеративных социальных сетях (например, в Mastodon и Pleroma) или через RSS. Для распространения видео с использованием P2P-коммуникаций пользователь также может добавить на свой сайт специальный виджет со встроенным web-плеером.

В настоящее время для размещения контента функционирует 1126 серверов, поддерживаемых разными добровольцами и организациями. Если пользователя не устраивают правила размещения видео на определённом сервере PeerTube, он может подключиться к другому серверу или запустить свой собственный сервер. Для быстрого развёртывания сервера предоставляется преднастроенный образ в формате Docker (chocobozzz/peertube).

Источник: https://www.opennet.ru/opennews/art.shtml?num=61125

opennet honked 06 May 2024 10:00 +0200

Выпуск графического редактора GIMP 2.10.38

Опубликован графический редактор GIMP 2.10.38. Для установки опубликованы пакеты в формате flatpak (в ближайшее время также будет подготовлен пакет в формате snap). Выпуск включает исправления ошибок и небольшие улучшения. Отмечается, что перенос новых возможностей в ветку 2.10 остановлен, а все усилия по наращиванию функциональности сосредоточены на подготовке ветки GIMP 3, которая находится в состоянии заморозки перед релизом и на финальной стадии подготовки кандидата в релизы. Вероятно, что GIMP 2.10.38 станет последним выпуском в ветке 2.10, но не исключается, что после релиза GIMP 3.0.0 будет сформирован ещё один выпуск GIMP 2.10.40, содержащий только исправление ошибок.

Из изменений в GIMP 2.10.38 можно отметить:

  • Из ветки GTK3 в GTK2 перенесены некоторые возможности, решающие имеющиеся проблемы. Например, изменён размер кнопок в диалоге вывода на печать (решена проблема с обрезанием краёв кнопок), налажен вывод всплывающих диалогов (решена проблема с выводом новых диалогов позади существующих) и включены исправления в обработчик клавиатурного ввода.
  • В сборке для платформы Windows улучшена поддержка графических планшетов. Добавлена поддержка использования не только старых драйверов WinTab, но и новых драйверов Windows Ink, что решило проблемы с неработающими кнопками, некорректной чувствительностью к нажатию, подвисаниям при перемещении кисти и изменению позиции при росчерках. Поддержка реализована через портирование в GTK2 кода с поддержкой API Windows Ink из GTK3.
  • Исправлены накопившиеся ошибки. Среди прочего, устранены проблеми, приводящие к аварийному завершению при выходе и при работе с очень мелкими выделениями областей. Решена проблема с искажением цвета при экспорте в формат PNG с индексированной палитрой с прозрачностью. Исправлены диапазоны допустимых значений для некоторых фильтров, таких как Waves и Distort. В функцию настройки заголовка добавлена поддержка символов в кодировке UTF-8. Устранена утечка в новые изображения комментариев, добавленных к прошлому изображению.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61123

undeadly honked 06 May 2024 08:00 +0200

Game of Trees 0.99 released

Version 0.99 of Game of Trees has been released (and the port updated).

* got 0.99; 2024-05-05
  see git repository history for per-change authorship information
- make 'got fetch' work with URLs which refer to $HOME via a tilde: ~user
- replace strftime %G-%m-%d with %F to prevent 2024-12-30 -> 2025-12-30
- fix spurious errors from got-fetch-http when server has no more data to send
- prevent gotd notification process from exiting due to EPIPE
- fix I/O hangs with TLS in got-notify-http
- document http and https protocol support in got.conf(5), too
- fix an fd leak in gotd's notify process causing endless CPU spin
- back out got stage -R option addition; deemed too inconvenient in practice
- fix got-fetch-http GET request URL; add leading slash and avoid double slashes
- allow custom GOT_TEST_HTTP_PORT when running regression tests
- gotwebd: add magic ".git" handling; try foo.git if repository foo is not found
- expose authenticated gotd user account in HTTP notifications
- gotd.conf(5) HTTP/JSON documentation fixes
- fix endless loop upon Ctrl-D (EOF) input during got stage/unstage/revert -p
- make gotd notifications work when 'git push' is used instead of 'got send'
- make got stage -p behave the same way in interactive and -F modes for 'q'
- fix lingering gotd processes from clients closing connections early
- regress: prevent spurious failure of gotd test_clone_basic_access_denied
- fix an issue where 'git fetch' would error or hang against gotd
- use polling read in got_pkt_readn() to avoid endless hangs in gotsh

And we, too, are curious what the next version number will be :)

opennet honked 05 May 2024 22:00 +0200

Лидер проекта NixOS вышел из управляющего совета после угрозы создания форка

Элко Долстра (Eelco Dolstra), автор пакетного менеджера Nix, объявил о решении об уходе с поста главы управляющего совета некоммерческой организации NixOS Foundation, обеспечивающей поддержку инфраструктуры, управляющей финансовыми потоками и решающей юридические вопросы проекта NixOS. Решение принято после публикации коллективного открытого письма с критикой действий Элко и опасениями за будущее Nix и NixOS. Изначально письмо опубликовано анонимными авторами, но после его размещения под ним подписалось 160 человек.

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

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

Элко Долстра вменяется оказание давления на остальных членов управляющего совета и управляющие разработкой команды с целью отмены определённых решений. Например, после выработки консенсуса относительно возможности сообщества накладывать вето на спонсоров конференции NixCon, Элко Долстра, будучи единственным несогласным, инициировал повторное рассмотрение этого вопроса. Из примеров злоупотребления имеющейся властью для отмены решений, которые должны приниматься совместно, также упоминаются отказы Долстра предоставить права на рецензирование кода для давних участников и блокирование внесения изменения в систему сборки, согласованного в рамках RFC. Также упоминается, что из-за нерегламентируемой правилами власти команда модераторов чувствует себя бессильной и опасается, что её авторитет может быть подорван действиями Элко Долстра.

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

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

Источник: https://www.opennet.ru/opennews/art.shtml?num=61122

continue honked 05 May 2024 20:15 +0200

Я, получается, опоздал с первоапрельскими шутками, но всё же...
Зацените: девчата из Швейцарии сделали отличный кавер на Арию ("Встань, страх преодолей"): Burning Witches - Jawbreaker.

#ЧтоПослушать

P.S. Вообще Burning Witches любопытная команда: классический метал сегодня.

opennet honked 05 May 2024 13:00 +0200

Выпуск Chrome OS 124

Представлен релиз операционной системы Chrome OS 124, основанной на ядре Linux, системном менеджере upstart, сборочном инструментарии ebuild/portage, открытых компонентах и web-браузере Chrome 124. Пользовательское окружение Chrome OS ограничивается web-браузером, а вместо стандартных программ задействованы web-приложения, тем не менее, Chrome OS включает в себя полноценный многооконный интерфейс, рабочий стол и панель задач. Вывод на экран осуществляется при помощи графического стека Freon (ведётся работа по переходу на использование Wayland) и оконного менеджера Aura. Исходные тексты распространяются под свободной лицензией Apache 2.0. Сборка Chrome OS 124 доступна для большинства актуальных моделей Chromebook. Для использования на обычных компьютерах предлагается редакция Chrome OS Flex.

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

  • Предложен более быстрый способ настройки раскладки окон при использовании режима разделения содержимого экрана на части, в котором можно разместить бок о бок окна двух разных приложений. После выбора режима разделения экрана в свойствах определённого окна, в правой половине экрана теперь сразу выводится обзор остальных открытых окон, которые можно выбрать для показа на второй половине.
  • Добавлен режим приоритизации трафика (QoS, Quality of Service) при использовании беспроводных соединений, позволяющий предоставить больше пропускной способности видеоконференциям и игровым приложениям.
  • Увеличен максимальный размер указателей мыши. Желаемый размер указателя можно выбрать в конфигураторе в секции "Accessibility›Сursor and touchpad". Большие указатели могут потребоваться не только для людей с проблемами со зрением, но и для акцентирования внимания при обучении и показе презентаций.
  • Реализована необходимость получения отдельных полномочий при доступе приложений к API WebHID, предназначенному для низкоуровневого доступа к HID-устройствам (Human interface device, клавиатуры, мыши, геймпады, сенсорные панели) и организации работы без наличия в системе специфичных драйверов.
  • Для уменьшения размера загружаемых обновлений драйверы к сканерам теперь загружаются непосредственно после подсоединения сканера, которому требуется драйвер, при активном сеансе пользователя. Загрузка производится автоматически без вывода запроса подтверждения операции у пользователя, но с показом уведомления после установки драйвера.
  • Для манипуляторов мышь с интерфейсом Bluetooth включено использование режима быстрого сопряжения (Fast Pair). После включения новой мыши или её приближения к компьютеру система автоматически определит новое устройство и отобразит приглашение подключить её одним нажатием.
  • Добавлена поддержка механизма "carrier lock", позволяющего мобильному оператору связи поставлять устройства, работающие только с SIM-картами этого оператора (например, когда устройств продаётся по сильно заниженной стоимости, а затраты покрываются за счёт тарифов на связь). Возможно прекращение привязки после истечения указанного в договоре времени. На устройствах с привязкой к оператору вход в режим разработчика запрещён.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61121

continue bonked 05 May 2024 12:30 +0200
original: allonny_outamoon@mastodon.ml

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

Ссыль: https://www.desmos.com/calculator/cgwfcduv26

Скриншот с сайта Desmos. В левой части несколько строк формул для действий над случайными числами и готовым списком, в правой графики: гистограмма частоты сгенерированных чисел и нормальное распределение.

opennet honked 05 May 2024 10:00 +0200

Выпуск загрузочных прошивок Libreboot 20240504 и Canoeboot 20240504

Представлен выпуск свободной загрузочной прошивки Libreboot 20240504, который получил статус стабильной версии (прошлый стабильный релиз был опубликован в июне 2023 года). Проект развивает готовую сборку проекта Coreboot, предоставляющую замену проприетарным прошивкам UEFI и BIOS, отвечающим за инициализации CPU, памяти, периферийных устройств и других компонентов оборудования, с минимизацией бинарных вставок.

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

В новом выпуске добавлена поддержка ноутбука Dell Latitude E5420 и решены проблемы с выходом из спящего режима S3 других поддерживаемых ноутбуков Dell Latitude. Для ноутбуков HP EliteBook 8560w решены проблемы с WiFi. Проведена работа по повышению стабильности и исправлению ошибок при работе с ранее поддерживаемыми платами. Включены изменения, накопленные за год в тестовых ветках Libreboot.

Загрузчик GRUB обновлён до версии 2.12 и расширен патчами для поддержки USB 3.0 и для использования хэшей argon2 при формировании ключей к шифрованным разделам LUKS2 (вместо PBKDF2). В SeaBIOS предоставлена возможность загрузки с накопителей NVMe SSD. В сборочной системе проведена оптимизация, нацеленная на снижение размера кода. Для прошивки образов Libreboot в материнские платы вместо утилиты flashrom задействован инструментарий flashprog.


Оборудование, поддерживаемое в 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 20240504, который позиционируется как полностью свободная сборка Libreboot, соответствующая требованиям Фонда СПО к полностью свободным дистрибутивам. Выпуск Canoeboot основан на версии Libreboot 20240504, из которой удалены компоненты и изменения, не соответствующие критериям Фонда СПО.

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

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



Источник: https://www.opennet.ru/opennews/art.shtml?num=61120

opennet honked 05 May 2024 08:00 +0200

После многолетнего забвения опубликован минималистичный web-браузер Dillo 3.1

Опубликован релиз минималистичного web-браузера Dillo 3.1, написанного на языке С/C++ с использованием библиотеки FLTK. Браузер отличается небольшим размером (исполняемый файл около мегабайта при статической сборке) и минимальным потреблением памяти, при наличии графического интерфейса с поддержкой вкладок и закладок, поддержке HTTPS и базового набора web-стандартов (есть поддержка HTML 4.01 и CSS, но нет JavaScript). Функциональность Dillo может расширяться через плагины, например, имеются плагины для протоколов IPFS и Gemini. Код проекта распространяется в рамках лицензии GPLv3.

Прошлый значительный выпуск Dillo 3.0.0 был опубликован в 2011 году, а последнее корректирующее обновление 3.0.5 в 2015 году. В 2016 году умер одни из ключевых разработчиков проекта, после чего в 2017 году разработка Dillo полностью остановилась, а в 2022 истёк срок оплаты за домен проекта и сайт dillo.org прекратил существование. В январе 2024 года предпринята попытка возрождения проекта, результаты которой представлены в составе Dillo 3.1. В 2023 году также было создано ответвление Dillo+ (Dillo-Plus), в которое были включены накопившиеся исправления (последнее изменение в Dillo-Plus было добавлено два месяца назад).

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

  • Добавлена поддержка плавающих HTML-элементов и CSS-свойства "float".
  • Значительно улучшена и включена по умолчанию поддержка HTTPS. Для работы HTTPS могут использоваться библиотеки OpenSSL, LibreSSL и mbed TLS. Добавлена настройка "http_force_https" для принудительного проброса с HTTP на HTTPS.
  • Расширена поддержка CSS: для всех элементов добавлена поддержка атрибутов 'width' и 'height', реализованы свойства 'min-width', 'max-width', 'min-height' и 'max-height', добавлена поддержка 'display: inline-block'.
  • Добавлена поддержка HTML-тега "‹main›" и расширена поддержка тега "‹button›".
  • Переработаны виджеты.
  • Обеспечено сохранение коэффициента соотношения сторон для изображений, параметры разрешения которых заданы в процентах.
  • Добавлены настройки 'adjust_min_width' и 'adjust_table_min_width'.
  • Обеспечена приоритизация загрузки ресурсов (изображения загружаются с меньшим приоритетом).
  • Добавлена настройка http_persistent_conns и предоставлена возможность повторного использования установленных соединений HTTP.
  • Добавлена поддержка HTTP-заголовка Strict-Transport-Security, которую можно отключить при помощи настройки http_strict_transport_security в dillorc.
  • Добавлена настройка ui_tab_height для задания высоты кнопок вкладок.
  • Включена возможность переключения вкладок колесом мыши.
  • Улучшено определение документов XHTML.
  • Внедрена система непрерывной интеграции для тестирования сборок для Ubuntu, MacOS, FreeBSD и Windows (cygwin).
  • Добавлены автоматизированные тесты для проверки корректности отрисовки HTML.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61119

opennet honked 04 May 2024 23:00 +0200

Корректирующие обновления некоторых компонентов LXQt

Разработчики среды рабочего стола LXQt опубликовали корректирующие обновления некоторых компонентов, в основном связанные с устранением проблем, всплывшиз после обновления Qt до версии 6.7.
  • xdg-desktop-portal-lxqt 1.0.2 - решена проблема с файловыми путями, строка с которыми содержит нулевой символ. Проблема проявляется с недавнего времени при использовании Firefox.
  • Image-Qt 2.0.1 - устранено аварийное завершение при использовании Qt ≥ 6.7, а также исправлена утечка памяти.
  • libfm-qt 2.0.1 - устранено аварийное завершение при использовании Qt ≥ 6.7.
  • lxqt-notificationd 2.0.1 - устранены крахи при завершении процессов, использующих Qt ≥ 6.7.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61118

opennet honked 04 May 2024 22:00 +0200

Для FreeBSD развивается новый графический инсталлятор. Отчёт FreeBSD за 1 квартал

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

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

Подобный подход позволяет реализовать возможность установки в графическом режиме, используя имеющуюся инфраструктуру инсталлятора bsdinstall и сохранив в нём возможность консольного режима установки. Аналогичная замена может быть произведена и для конфигуратора bsdconfig, который уже поддерживает опцию "-X" для создания простого графического интерфейса через вызов Xdialog (на базе GTK2) вместо bsddialog. Использование gbsddialog вместо Xdialog позволит получить более современное оформление интерфейса.

Рабочая реализация нового инсталлятора уже готова для тестирования, а необходимые для его интеграции в основной состав патчи предложены для рецензирования. Для включения в bsdinstall предложены переведённые на bsddialog интерфейсы для добавления пользователя, установки пароля администратора и выбора часового пояса, а также компоненты для выбора реализации утилиты dialog на основе значения переменной окружения $DIALOG и поддержки активации графического режима.

<iframe src="https://www.youtube.com/embed/jm6byc7N2O4?si=hfOu5UcV_ZKl3KG2">

Примечательно, что проект GhostBSD (редакция FreeBSD с рабочим столом MATE) уже использует собственный графический инсталлятор, написанный на Python и PyGTK, но его перенос во FreeBSD не рассматривается, так он потребует включения Python в качестве дополнительной зависимости, что приведёт к заметному увеличению размера установочного носителя. Несколько лет назад при поддержке FreeBSD Foundation также развивался прототип графического инсталлятора, написанного на языке Lua и реализованного в форме http-сервера, предоставляющего web-интерфейс, который открывается в однооконном режиме при помощи web-браузера.

Из других событий, упомянутых в отчёте FreeBSD за первый квартал 2024 года, можно отметить:

  • Ведётся работа по улучшению звукового стека. Реализована возможность отсоединения звуковых устройств в асинхронном режиме, что необходимо, например, для горячего отключения звуковых карт с интерфейсом USB. В планах реализация библиотеки oss, утилиты audio и утилиты для управления устройствами Bluetooth, а также расширение возможностей утилиты и библиотеки mixer.
  • Для Bhyve реализован фоновый процесс vmstated для управления виртуальными машинами и настройки связанных с ними сетевых подсистем и хранилищ. Добавлена утилита vmstatedctl для управления (запуска/остановки/проверки состояния) виртуальными машинами в стиле команды jail.
  • Инициатива по выносу в отдельную библиотеку libsys.so кода для обращения к системным вызовам, ранее присутствовавшего в libc.so и libpthread.so. Создание libsys.so позволит ограничить прямое обращение к системным вызовам только для заслуживающего доверия кода, абстрагировать доступ к системным вызовам для runtime языков программирования и улучшить поддержку инструментариев для ведения лога системных вызовов и повторного воспроизведения операций.
  • Для PackageKit развивается бэкенд для пакетного менеджера pkg, который позволит использовать для управления пакетам во FreeBSD типовые интерфейсы управления приложениями, использующими PackageKit, например, KDE Discover и GNOME Software Center.
  • Версия набора компиляторов GCC в портах обновлена до GCC 13.
  • Запущен совместный с AMD проект по созданию драйвера IOMMU для FreeBSD.
  • Ведётся портирование сетевого стека VPP (Vector Packet Processor) для FreeBSD.
  • Стартовал проект по реализации настраиваемых ограничений пропускной способности (rate limit) в OpenZFS, работающий по аналогии с дисковыми квотами, но в контексте ограничения числа операций чтения/записи и пропускной способности при чтении/записи.
  • Ведётся работа по стабилизации поддержки unionfs во FreeBSD.
  • План прекращения поддержки 32-разрядных платформ.
  • В порты добавлен KDE 6.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61117

opennet honked 04 May 2024 13:00 +0200

Основатель QEMU и FFmpeg опубликовал звуковой кодек TSAC

Французский математик Фабрис Беллар (Fabrice Bellard), основавший в своё время проекты QEMU, FFmpeg, BPG, QuickJS, TinyGL и TinyCC, опубликовал формат кодирования звука TSAC и связанный с ним инструментарий для сжатия и распаковки звуковых файлов. Формат ориентирован на передачу данных с очень низким битрейтом, например, 5.5 kb/s для моно и 7.5 kb/s для стерео, при сохранении приемлемого качества музыки и речи. Использование TSAC позволяет упаковать музыкальную композицию, длительностью 3.5 минут и с частотой дискретизации 44.1 kHz (стерео), в файл размером 192 КБ, который будет почти неотличим от оригинала на слух неискушённого обывателя. Код проекта распространяется под лицензией MIT.

В качестве основы при создании TSAC использован звуковой кодек Descript, который расширен для поддержки стереозвука и переведён на использование другой модели машинного обучения на базе нейронной сети с архитектурой "трансформер", позволившей увеличить степень сжатия за счёт реконструкции утерянных деталей с учётом модели человеческого слухового восприятия. Модель занимает около 200 МБ в сжатом виде и оформлена в детерминированной представлении, которое гарантирует получение одинакового результата независимо от используемых CPU/GPU и числа задействованных при вычислениях потоков.

Кодировщик может работать с использованием для вычислений только CPU (для ускорения поддерживаются инструкции AVX2), но для достижения высокой производительности рекомендуется задействовать GPU. В текущем виде может применяться API CUDA для ускорения с использованием GPU NVIDIA на базе микроархитектур Ampere, ADA и Hopper (RTX 3090, RTX 4090, RTX A6000, A100 и H100), имеющих как минимум 4 ГБ видеопамяти. Для преобразования звуковых файлов перед кодированием применяется FFmpeg.

original
stereo 6.21 kb/s
mono 4.71 kb/s
stereo 2.57 kb/s


Источник: https://www.opennet.ru/opennews/art.shtml?num=61113

opennet honked 04 May 2024 12:00 +0200

Компания Nintendo добилась блокировки 8535 репозиториев с форками эмулятора Yuzu

Компания Nintendo отправила в GitHub требование о блокировке 8535 репозиториев с форками эмулятора Yuzu. Требование отправлено на основании действующего в США Законе об авторском праве в цифровую эпоху (DMCA). Проекты обвиняются в обходе технологий защиты, применяемых в приставках Nintendo Switch. В настоящее время GitHub уже выполнил требования Nintendo и заблокировал репозитории с форками Yuzu.

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

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

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

Источник: https://www.opennet.ru/opennews/art.shtml?num=61115

opennet honked 04 May 2024 11:00 +0200

В KDE убрана возможность установки тем пиктограмм GNOME. Недавние изменения в KDE 6.1

Нейт Грэм (Nate Graham), разработчик, занимающийся контролем качества в проекте KDE, опубликовал отчёт о подготовке к релизу KDE Plasma 6.1, запланированному на 18 июня, а также к корректирующему выпуску 6.0.5, намеченному на 21 мая. Среди изменений, добавленных за последнюю неделю в кодовую базу, на основе которой будет сформировано обновление 6.0.5:
  • В конфигураторе запрещён выбор набора пиктограмм Adwaita и High Contrast от проекта GNOME в качестве системных тем, так как, несмотря на заявленное соответствие требованиям FreeDesktop, они не рассчитаны на использование в других окружениях и при установке в KDE приводят к проблемам из-за отсутствия необходимых пиктограмм (многие пиктограммы после выбора в KDE темы пиктограмм GNOME не отображаются или заменяются пиктограммой о повреждённом файле).
  • Ограничен максимальный размер размещаемых на панели пиктограмм виджетов Kickoff (Application Launcher) и Kicker (Application Menu).
  • Устранён крах KWin в окружении на базе Wayland, проявляющийся при невозможности открыть сокет к XWayland.
  • Устранён крах Plasma при попытке изменения набора избранных приложений через Kickoff (Application Launcher), Kicker (Application Menu) и другие реализации меню.

Недавние изменения, добавленные в ветку KDE Plasma 6.1:

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

  • При изменении профиля потребления энергии через утилиту powerprofilesctl, новая информация теперь сразу отображается в виджете "Power and Battery".
  • В тему Breeze добавлены символьные версии пиктограмм, связанных с шифрованием каталогов и размещением музыки.
  • Обеспечен показ более корректных пиктограмм для звуковых и видео файлов, распространяемых в форматах, для которых отсутствуют отдельные пиктограммы.
  • В Gwenview решена проблема с аварийным завершением при попытке открытия больших изображений.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61116

opennet honked 04 May 2024 09:00 +0200

Выпуск Wine 9.8 и Wine staging 9.8

Состоялся экспериментальный выпуск открытой реализации Win32 API - Wine 9.8. С момента выпуска 9.7 было закрыто 22 отчёта об ошибках и внесено 209 изменений.

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

  • Движок Wine Mono с реализацией платформы .NET обновлён до выпуска 9.1.0.
  • В файлах, генерируемых с использованием языка описания интерфейса IDL (Interface Definition Language), задействованы компоненты, полностью поддерживающие выполнение в режиме интерпретации.
  • На платформах ARM улучшена поддержка RPC/COM.
  • Закрыты отчёты об ошибках, связанные с работой приложений: Solid Edge, Microsoft Office 97 installer, Lotus Approach, gldriverquery.exe, Radiosure, SimSig, iZotope Product Portal Portal, VTFEdit, Across Lite, Falcon BMS, Corsair iCUE 4, HWMonitor 1.53, vcrun2008.
  • Закрыты отчёты об ошибках, связанные с работой игр: Battle.net launcher, Recettear.

Кроме того, сформирован выпуск проекта Wine Staging 9.8, предоставляющего расширенные сборки Wine, включающие не полностью готовые или рискованные патчи, пока непригодные для принятия в основную ветку Wine. По сравнению с Wine в Wine Staging предоставляется 430 дополнительных патчей. В новом выпуске Wine Staging осуществлена синхронизация с кодовой базой Wine 9.8 и vkd3d. Добавлен патч с реализацией метода ID3DXEffect::SetRawValue в Direct3D 9. Обновлены патчи vkd3d-latest, odbc-remove-unixodbc и ddraw-GetPickRecords.

В основной состав Wine перенесены 6 патчей, 5 из которых связаны с наращиванием функциональности реализации языка описания интерфейса WIDL (Wine Interface Definition Language), а один с обеспечением возможности сборки библиотеки stdole32.tlb с флагом "--oldtlb". Удалены патчи ntdll-CriticalSection, Pipelight и winex11-XEMBED, которые потеряли актуальность.

Источник: https://www.opennet.ru/opennews/art.shtml?num=61114

opennet honked 03 May 2024 22:00 +0200

Обход верификации в библиотеке xml-crypto, насчитывающей миллион загрузок в неделю

В JavaScript-библиотеке xml-crypto, используемой в качестве зависимости у 402 проектов и загружаемой из каталога NPM около миллиона раз каждую неделю, выявлена уязвимость (CVE-2024-32962), которой присвоен максимальный уровень опасности (10 из 10). Библиотека предоставляет функции для шифрования и верификации по цифровой подписи XML-документов. Уязвимость даёт возможность атакующему заверить фиктивный документ, который в конфигурации по умолчанию будет успешно верифицирован библиотекой, несмотря на то, что он подписан не тем ключом, что указан для проверки подписей. Проблема проявляется начина с версии xml-crypto 4.0.0 и без лишней огласки устранена в январском выпуске 6.0.0.

Уязвимость вызвана тем, что в конфигурации по умолчанию библиотека не авторизирует создателя подписи, а проверяет только корректность самой подписи. В частности, библиотека доверяет любому сертификату, размещённому в подписанном документе в XML-элементе KeyInfo, даже если в настройках указано использование конкретного сертификата для проверки цифровых подписей. Таким образом, для успешной верификации модифицированного документа атакующему достаточно заменить оригинальную цифровую подпись на подпись, сформированную своим закрытым ключом, и разместить связанный с этим закрытым ключом сертификат (открытый ключ) в элементе KeyInfo.

Источник: https://www.opennet.ru/opennews/art.shtml?num=61112

opennet honked 03 May 2024 17:00 +0200

Выпуск языка программирования Mojo 24.3

Опубликован выпуск инструментария языка программирования Mojo 24.3, позволяющего компилировать проекты на локальной системе. В состав включены компоненты, необходимые для разработки приложений на языке Mojo, включая компилятор, runtime, интерактивную REPL-оболочку для сборки и запуска программ, отладчик, дополнение к редактору кода Visual Studio Code (VS Code) с поддержкой автодополнения ввода, форматирования кода и подсветки синтаксиса, модуль для интеграции с Jupyter для сборки и запуска Mojo notebook. Исходные тексты стандартной библиотеки Mojo открыты под лицензией Apache 2.0 c исключениями от проекта LLVM, допускающими смешивание с кодом под лицензией GPLv2. Исходный код компилятора планируют открыть после завершения проектирования внутренней архитектуры.

Одновременно сформирвоан выпуск движка MAX Engine 24.3, предлагающего платформу для разработок в области машинного обучения. MAX Engine дополняет инструментарий Mojo средствами для разработки и отладки приложений, использующих модели машинного обучения в различных форматах (TensorFlow, PyTorch, ONNX и т.п.). Сборки Mojo SDK и MAX Engine подготовлены для платформы Linux и macOS.

Среди изменений в Mojo 24.3:

  • В модули для работы с коллекциями (List, Dict, Set и Tuple) добавлены возможности, делающие их более привычные пользователям, знакомым с языком программирования Python. В тип List добавлены методы, повторяющие Python API, такие как pop(index), resize(new_size) и insert(index, value).
  • В тип Dict добавлен метод update() для обновления ключа/значения из другого Dict.
  • В типе Tuple обеспечена работа с хранящимися только в памяти типами, такими как String, что позволяет указывать "x = tup[1]" вместо "x = tup.get[1, Int]()" и присваивать значения через "tup[1] = x".
  • В типе Set реализована поддержка именованных методов, которые можно использовать вместо операторов: difference() вместо "-", difference_update() вместо "-=", intersection_update() вместо "&=" и update() вместо "|=".
  • Добавлена функция reversed(), позволяющая поменять порядок следования элементов на обратный. Функция reversed() может применяться с List, Dict и любыми типами, поддерживающими диапазоны значений.
       var numbers = List(1, 2, 3, 4, 5)
       for number in reversed(numbers):
           print(number)
    
  • Реализован типаж Boolable, возвращающий для переменных с типами Dict, List и Set значение True, если они содержат хотя бы один элемент.
  • Улучшена поддержка вариативных аргументов. Предоставлена возможность определения функций, содержащих одновременно как необязательные, так и вариативные аргументы.
       fn variadic_arg_after_default(
         a: Int, b: Int = 3, *args: Int, c: Int, d: Int = 1, **kwargs: Int
       ): ...
    
  • Добавлены функции __source_location() и __call_location() для определения местоположения (номер строки в исходных текстах) вызовов функций и кода.
  • В метод FileHandle.seek() по аналогии с языком Python добавлена поддержка аргумента "whence".
  • Тип AnyPointer переименован в UnsafePointer. Добавлена возможность инициализации UnsafePointer из напрямую из ссылки с типом Reference ("UnsafePointer(someRef)"). Для работы с указателями UnsafePointer добавлены функции initialize_pointee_copy, initialize_pointee_move, move_from_pointee() и move_pointee.

Язык Mojo развивается под руководством Криса Латнера (Chris Lattner), основателя и главного архитектора проекта LLVM и создателя языка программирования Swift. Синтаксис Mojo основан на языке Python, а система типов близка к C/C++. Проект преподносится как язык общего назначения, расширяющий возможности языка Python средствами системного программирования, подходящий для широкого круга задач и сочетающий простоту применения для исследовательских разработок и быстрого создания прототипов с пригодностью для формирования высокопроизводительных конечных продуктов.

Простота достигается благодаря использованию привычного синтаксиса языка Python, а разработке конечных продуктов способствуют возможность компиляции в машинный код, механизмы безопасной работы с памятью и задействование средств для аппаратного ускорения вычислений. Для достижения высокой производительности поддерживается распараллеливание вычислений с задействованием всех имеющихся в системе аппаратных ресурсов гетерогенных систем, таких как GPU, специализированные ускорители для машинного обучения и векторные процессорные инструкции (SIMD). При интенсивных вычислениях распараллеливание и задействование всех вычислительных ресурсов даёт возможность добиться производительности, превосходящей приложения на C/C++.

Язык поддерживает статическую типизацию и средства для безопасной низкоуровневой работы с памятью, напоминающие возможности языка Rust, такие как отслеживание времени жизни ссылок и проверка заимствования переменных (borrow checker). При этом в языке доступны и возможности для низкоуровневой работы, например, возможно прямое обращение к памяти в режиме unsafe с использованием типа Pointer, вызов отдельных SIMD-инструкций или доступ к аппаратным расширениям, таким как TensorCores и AMX.

Mojo может использоваться как в режиме интерпретации с использованием JIT, так и для компиляции в исполняемые файлы (AOT, ahead-of-time). В компилятор встроены современные технологии автоматической оптимизации, кэширования и распределённой компиляции. Исходный код на языке Mojo преобразуются в низкоуровневый промежуточный код MLIR (Multi-Level Intermediate Representation), развиваемый проектом LLVM. Компилятор позволяет применять для генерации машинного кода различные бэкенды, поддерживающие MLIR.

Источник: https://www.opennet.ru/opennews/art.shtml?num=61111

opennet honked 03 May 2024 16:00 +0200

Обновление VirtualBox 7.0.18

Компания Oracle опубликовала корректирующий релиз системы виртуализации VirtualBox 7.0.18, в котором отмечено 3 исправления:
  • Устранена ошибка в сетевых компонентах, из-за которой была опубликована рекомендация не устанавливать версию VirtualBox 7.0.16. Ошибка приводила к краху системы в хост-окружении при использовании виртуальных машин с настройками сетевых мостов или задействовании в VM сетевого адаптера, работающего только на стороне хоста (host-only network adapter).
  • В дополнения для гостевых систем с Linux внесены исправления, устраняющие предупреждения UBSAN (Undefined Behavior Sanitizer).
  • В дополнениях для гостевых систем с Linux решены проблемы, приводящие к отображению некорректного времени в примонтированных совместных папках (shared folder).


Источник: https://www.opennet.ru/opennews/art.shtml?num=61110

undeadly honked 03 May 2024 14:50 +0200

OpenSMTPD table protocol changes, now with the backstory

Regular readers will be aware that OpenBSD ships with its own mail server implementation, OpenSMTPD in its base system.

In a recent message to the tech@ mailing list, Omar Polo (op@) asked for comments or oks for a patches implementing a change of table protocols. A little later, Gilles Chehade (gilles@) posted the backstory to the misc@opensmtpd.org mailing list with the backstory for this change.

The message follows in full below (apparently the otherwise fine marc.info archive site no longer archives the list):

Date: Fri, 03 May 2024 08:22:03 +0000
From: gilles@poolp.org
To: misc@opensmtpd.org
Subject: smtpd: change the table protocol

Hello,

This is a copy of a mail I sent to OpenBSD hackers a few days ago so you are aware of work
being done on OpenSMTPD by Omar Polo.

~~~

TL;DR: proposal to change table backends wire protocol to one that's closer to filters, it
       has proven to work for years now, comes with many benefits and it is a very trivial
       change that we can pull in a handful of hours:
       https://tmp.omarpolo.com/smtpd-tables.7.html

Read more…

continue honked 03 May 2024 11:16 +0200

Свежая любопытная лекция Анны Виленской Меланхолия Вагнера.

В 2011-м году Ларс фон Триер снял загадочный фильм про планету "Меланхолия", чья орбита проходит совсем рядом с Землей. В фильме очень много метафор, там и про депрессию, и про возрослое-детское состояние человека, кто-то видит в этом даже общественно-политическое высказывание (но я не вижу).

На протяжении всего фильма Триер использует один сквозной саундтрек — вступление Вагнера к опере "Тристан и Изольда". Это очень известный отрывок в музыкальном мире. В колледже мы даже учились играть его наизусть от каждой ноты. Есть мнение, что этим вступлением Вагнер разрушил классическую гармонию и впервые в истории написал атональную музыку. Если соединить смыслы, которые использовал Триер в кино и Вагнер в музыке, получается что-то очень классное.

Материал отлично подходит для прослушивания (yt-dlp -x).
#ЧтоПосмотреть #ЧтоПослушать

opennet honked 03 May 2024 08:00 +0200

Число дополнений для Android-версии Firefox превысило 1000

Компания Mozilla сообщила о преодолении рубежа в 1000 дополнений, доступных для Android-версии Firefox в каталоге AMO (addons.mozilla.org). В декабре 2023 года, после введения в строй инфраструктуры дополнений для Android-версии Firefox, в каталоге насчитывалось 489 дополнений. Менее чем за пять месяцев число дополнений, портированных для Android-версии Firefox, удвоилось.

Разработчики дополнений, уже поставляемых для настольной версии Firefox, могут адаптировать свои продукты для работы в мобильной версии, переведя дополнение с модели постоянного фонового выполнения (extension.getBackgroundPage) на режим обработки событий (browser.runtime.onMessage.addListener), а также задействовав методы адаптивной компоновки элементов интерфейса.

Источник: https://www.opennet.ru/opennews/art.shtml?num=61106

opennet honked 02 May 2024 23:00 +0200

Выпуск Rust 1.78. Язык Borgo, сочетающий сильные стороны Go и Rust

Опубликован релиз языка программирования общего назначения Rust 1.78, основанного проектом Mozilla, но ныне развиваемого под покровительством независимой некоммерческой организации Rust Foundation. Язык сфокусирован на безопасной работе с памятью и предоставляет средства для достижения высокого параллелизма выполнения заданий, при этом обходясь без использования сборщика мусора и runtime (runtime сводится к базовой инициализации и сопровождению стандартной библиотеки).

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

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

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

  • Предложено новое пространство имён атрибутов "#[diagnostic]", предоставляющее средства для влияния на выдаваемые компилятором сообщения об ошибках. Первым в новом пространстве реализован атрибут "#[diagnostic::on_unimplemented]", который может использоваться для настройки сообщений об ошибках, выдаваемых в ситуации, когда требуется использовать типаж, который не реализован для типа.
       #[diagnostic::on_unimplemented(
           message = "My Message for `ImportantTrait‹{A}›` is not implemented for `{Self}`",
           label = "My Label",
           note = "Note 1",
           note = "Note 2"
       )]
       trait ImportantTrait‹A› {}
    
       fn use_my_trait(_: impl ImportantTrait‹i32›) {}
    
       fn main() {
           use_my_trait(String::new());
       }
    
       error[E0277]: My Message for `ImportantTrait‹i32›` is not implemented for `String`
      --> src/main.rs:12:18
       |
    12 |     use_my_trait(String::new());
       |     ------------ ^^^^^^^^^^^^^ My Label
       |     |
       |     required by a bound introduced by this call
       |
       = help: the trait `ImportantTrait‹i32›` is not implemented for `String`
       = note: Note 1
       = note: Note 2
    
  • Предварительные assert-проверки, применяемые к unsafe-функциями, теперь могут откладываться до стадии генерации кода, что позволяет выполнять данные проверки без необходимости сборки стандартной библиотеки в режиме "#[cfg(debug_assertions)]". Для срабатывания проверок теперь достаточно включения отладочных assert-ов для тестовых или отладочных сборок своего кода.
  • Поведение функций в стандартной библиотеке, влияющих на выравнивание указателей и срезов (slice), теперь предсказуемо во время выполнения и зависит от входных данных. Функция pointer::align_offset, вычисляющая смещение для выравнивания указателя, теперь возвращает usize::MAX только при невозможности выполнения операции. Функции slice::align_to и slice::align_to_mut both, преобразующие срезы в представление с выровненным средним срезом и исходными начальным и конечным срезами, теперь всегда возвращают самую большую среднюю часть.
  • В разряд стабильных переведены:
  • Функция Barrier::new() стабилизирована для использования с признаком "const" в любом контексте вместо констант.
  • Для целевых платформ x86_64-pc-windows-msvc, i686-pc-windows-msvc, x86_64-pc-windows-gnu, i686-pc-windows-gnu, x86_64-pc-windows-gnullvm и i686-pc-windows-gnullvm теперь требуется как минимум версия Windows 10.
  • Реализован третий уровень поддержки для платформ wasm32-wasip2, arm64ec-pc-windows-msvc, armv8r-none-eabihf и loongarch64-unknown-linux-musl. Третий уровень подразумевает базовую поддержку, но без автоматизированного тестирования, публикации официальных сборок и проверки возможности сборки кода.
  • Реализован второй уровень поддержки целевой платформы Add wasm32-wasip1. Второй уровень поддержки подразумевает гарантию сборки.
  • Платформа wasm32-wasi-preview1-threads переименована в wasm32-wasip1-threads.
  • Компилятор переведён на использование LLVM 18. При использовании LLVM 18 для архитектур x86-32 и x86-64 изменён ABI, связанный с типами u128 и i128.
  • В пактом менеджере Cargo стабилизирована 4 версия файлов-блокировок (lockfile v4).
  • В Cargo cтабилизирован глобальный кэш с информацией о последнем использовании данных. Кэш размещается в файле $CARGO_HOME/.global-cache при помощи SQLite, обновляется автоматически и отражает последние изменения, связанные с индексом, crate-файлом, каталогом с кодом, git clone и git checkout.



Дополнительно можно отметить язык программирования Borgo, который пытается быть более выразительным, чем язык Go, но менее сложным, чем язык Rust. Borgo комбинирует лучшие черты Go и Rust, восполняя недостатки каждого из языков. Например, язык Go прост и понятен, но не предоставляет расширенных средств для обеспечения безопасности при работе с типами. Язык Rust предоставляет средства для безопасного программирования, но переусложнён. Проект развивает Marco Sampellegrini, автор книги "The Simple Haskell Handbook" и разработчик системы непрерывной интеграции Quad CI.

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

use fmt

enum NetworkState‹T› {
    Loading,
    Failed(int),
    Success(T),
}

struct Response {
    title: string,
    duration: int,
}

fn main() {
    let res = Response {
        title: "Hello world",
        duration: 0,
    }

    let state = NetworkState.Success(res)

    let msg = match state {
        NetworkState.Loading => "still loading",
        NetworkState.Failed(code) => fmt.Sprintf("Got error code: %d", code),
        NetworkState.Success(res) => res.title,
    }

    fmt.Println(msg)
}


Источник: https://www.opennet.ru/opennews/art.shtml?num=61104

opennet honked 02 May 2024 20:00 +0200

Компания Valve выпустила Proton 9.0, пакет для запуска Windows-игр в Linux

Компания Valve опубликовала стабильный релиз проекта Proton 9.0, основанного на кодовой базе проекта 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:

  • Выполнена синхронизация с выпуском Wine 9.0. Из Proton в upstream перенесены накопившиеся специфичные патчи, которые теперь входят в основной состав Wine.
  • До версии 2.3 обновлена прослойка DXVK, транслирующая вызовы в API Vulkan.
  • VKD3D-Proton, ответвление от vkd3d, созданное Valve для улучшения поддержки Direct3D 12 в Proton, обновлено до версии 2.11.1.
  • Пакет Dxvk-nvapi с реализацией библиотеки NVAPI поверх DXVK обновлён до версии 0.6.4.
  • Добавлена поддержка Steamworks SDK 1.59.
  • Добавлена поддержка игр:

    • Aisling and the Tavern of Elves
    • Bloody Walls
    • Command & Conquer: Red Alert 2 и Yuri’s Revenge
    • Command & Conquer Tiberian Sun и Firestorm
    • Dinogen Online
    • George McGeehan Gamer Hero
    • Insanity's Blade
    • Lord of the Rings: Gollum
    • Photography Simulator Demo
    • Road to Vostok Demo
    • Snares of Ruin 2
    • Sonic Colors: Ultimate
    • The Finals
    • True Reporter. Mystery of Mistwood
    • WITCH ON THE HOLY NIGHT
  • Обеспечена возможность использования многоядерных CPU в играх:

    • Far Cry 2
    • Far Cry 4
    • Lara Croft and the Guardian of Light
    • Outcast - Second Contact
    • Prototype
    • The Witcher 2: Assassins of Kings Enhanced Edition
    • Warhammer 40,000: Space Marine
    • Warhammer 40,000: Dawn of War II
    • Warhammer 40,000: Dawn of War II - Chaos Rising
    • Warhammer 40,000: Dawn of War II - Retribution
  • Pешены проблемы при запуске игр:

    • Airborne Kingdom
    • Bayonetta
    • BIOMUTANT
    • Brawhalla
    • Carmageddon: Max Damage
    • Command & Conquer Red Alert
    • Disaster Report 4: Summer Memories
    • Doom Eternal
    • DayZ
    • Escape from Monkey Island
    • Fantastic Danmaku Festival Part I/II
    • Final Fantasy XIV
    • Greek Wars
    • Harvestella
    • KING OF FIGHTERS XV
    • Last Of Us Part I
    • Lethal Company
    • Lords of the Fallen
    • Risk of Rain 2
    • Phasmophobia
    • Savant - Ascent REMIX
    • Sea of Thieves
    • Super Robot Wars 30
    • The Last Game
    • Trove
    • Wayfinder


Источник: https://www.opennet.ru/opennews/art.shtml?num=61105

continue honked back 02 May 2024 16:05 +0200
in reply to: https://friendica.ironbug.org/objects/3217dd65-1266-339a-6b31-1ff216224870

@iron_bug @@friendica.ironbug.org

Системник сильно запущенный был: в простое 75-80 было, до 100 градусов под нагрузкой прыгала. Я куски пыли с радиатора и вентилятора поснимал, да и старая паста была намазана как-то неравномерно. Я этот офисный комп до сегодняшнего дня не разбирал, собственно (а получил его уже не новым). Надо было его в момент получения почистить, конечно.
Сейчас температура 35-40 в простое.

opennet honked 02 May 2024 12:00 +0200

Релиз дистрибутива Red Hat Enterprise Linux 9.4

Компания Red Hat опубликовала релиз дистрибутива Red Hat Enterprise Linux 9.4. Готовые установочные образы доступны для зарегистрированных пользователей Red Hat Customer Portal (для оценки функциональности также можно использовать iso-образы CentOS Stream 9 и бесплатные сборки RHEL для разработчиков). Выпуск сформирован для архитектур x86_64, s390x (IBM System z), ppc64le и Aarch64 (ARM64).

Ветка RHEL 9 развивается с более открытым процессом разработки и использует в качестве основы пакетную базу CentOS Stream 9. CentOS Stream позиционируется как upstream-проект для RHEL, дающий возможность сторонним участникам контролировать подготовку пакетов для RHEL, предлагать свои изменения и влиять на принимаемые решения. В соответствии с 10-летним циклом поддержки дистрибутива RHEL 9 будет сопровождаться до 2032 года.

Исходные тексты rpm-пакетов RHEL 9.4 не размещены в публичном репозитории git.centos.org и предоставляются клиентам компании только через закрытый раздел сайта, на котором действует пользовательское соглашение (EULA), запрещающее редистрибуцию данных, что не позволяет использовать эти пакеты для создания производных дистрибутивов. Исходные тексты остаются доступны в репозитории CentOS Stream, но он полностью не синхронизирован с RHEL и в нём не всегда самые свежие версии пакетов совпадают с пакетами из RHEL. Rocky Linux, Oracle и SUSE воспроизводят исходные тексты rpm-пакетов релизов RHEL в рамках проекта OpenELA.

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

  • Обеспечена полная поддержка технологии создания изолированных анклавов Intel SGX (Software Guard Extensions). Поддерживаются версии SGX 1 и 2, позволяющие использовать механизмы FLC (Flexible Launch Control) и EDMM (Enclave Dynamic Memory Management) для изменения прав доступа к отдельным страницам памяти анклава, динамического добавления/удаления страниц памяти к анклаву и расширения анклава.
  • В разряд стабильных переведён драйвер IDXD (Data Streaming Accelerator) для задействования ускорителей передачи данных, встроенных в CPU Intel. Ранее SGX и IDXD были отнесены к экспериментальным возможностям (Technology Preview).
  • Реализация подсистемы eBPF синхронизирована с ядром Linux 6.6 (в прошлом выпуске использовалась реализация eBPF из ядра Linux 6.3).
  • В загрузчик GRUB и прослойку shim добавлена возможность применения механизмов защиты памяти DEP (Data Execution Prevention), NX (No Execute) и XD (Execute Disable) для запрета исполнения инструкций в определённых областях памяти на стадии до начала загрузки системы.
  • В состав включены новые версии компиляторов и инструментов для разработчиков: GCC Toolset 13, LLVM Toolset 17.0.6, Rust Toolset 1.75.1 и Go Toolset 1.21.7.
  • Добавлены отдельные пакеты (Application Streams) c новыми версиями Python 3.12, Ruby 3.3, PHP 8.2, nginx 1.24, MariaDB 10.11, PostgreSQL 16.
  • Обновлены версии Git 2.43.0, Git LFS 3.4.1, Valgrind 3.22, SystemTap 5.0, elfutils 0.190, cmake 3.26. Добавлены новые пакеты maven-openjdk21 и libzip-tools.
  • Обновлены пакеты, связанные с безопасностью: GnuTLS 3.8.3, nettle 3.9.1, p11-kit 0.25.3, libkcapi 1.4.0, stunnel 5.71, audit 3.1.2, SSG (SCAP Security Guide) 0.1.72, openCryptoki 3.22.0, ipa 4.11.
  • Обновлены серверные и системные пакеты: chrony 4.5, linuxptp 4.2, Rsyslog 8.2310, iptables 1.8.10, nftables 1.0.9, firewalld 1.3, stratis-cli 3.6.0, boom 1.6.0, 389-ds-base 2.4.5, samba 4.19.4, Podman 4.9.
  • Работающий в пространстве пользователя инструментарий SELinux (libsepol, libselinux, libsemanage, policycoreutils, checkpolicy, mcstrans) обновлён до версии 3.6, в которой в язык CIL (Common Intermediate Language) добавлена поддержка правил "deny" и ключевых слов "notself" и "other". Добавлен исполняемый файл getpolicyload для отображения числа перезагрузок правил SELinux. Под защиту SELinux переведены сервисы nvme-stas, rust-afterburn, rust-coreos-installer и bootc, которые раньше выполнялись в режиме unconfined_service_t. Добавлены правила SELinux для SAP HANA. Добавлен новый сервис chronyd-restricted, защищённый при помощи SELinux. Добавлен пакет grafana-selinux для запуска grafana с защитой SELinux.
  • Регистратор и верификатор Keylime, применяемые для подтверждения подлинности и непрерывного отслеживания целостности внешних систем, теперь можно запустить внутри контейнеров, изолированных от основной системы.
  • В системе ведения логов Rsyslog предоставлена возможность изменения настроек шифрования для TLS/SSL и добавлены дополнительные опции для сброса привилегий.
  • В OpenSSL предоставлена возможность размещения файлов с настройками TLS в отдельном каталоге /etc/pki/tls/openssl.d, что позволяет переопределить параметры дополнительных криптографических модулей без изменения основного файла конфигурации OpenSSL.
  • В SSSD (System Security Services Daemon) предоставлена возможность включения и настройки беспарольной аутентификации, используя датчики биометрических данных, поддерживающие спецификацию FIDO2, например, устройства YubiKey.
  • Добавлена экспериментальная команда "podman build farm" для создания образов контейнеров сразу для нескольких архитектур. В Podman добавлена полная поддержка бэкенда на базе SQLite и предоставлена возможность использования модулей containers.conf для выборочной загрузки настроек. В Containerfile разрешены многострочные инструкции HereDoc. Объявлен устаревшим сетевой стек CNI (Container Network Interface). При помощи команды "podman machine" реализована возможность проброса USB-устройств в виртуальные машины QEMU.
  • В IdM (Identity Management) предоставлена возможность включения обязательной двухфакторной аутентификации LDAP-клиентов, используя одноразовые пароли (OTP). Стабилизирован API IdM, который раньше преподносился как экспериментальный. В 389 Directory Server добавлена поддержка протокола HAProxy, что позволяет корректно определять IP-адреса клиентов, подключающихся через прокси.
  • В сборщике образов RHEL предоставлена возможность указания произвольных точек монтирования и создания различных режимов разбивки на разделы (auto-lvm, lvm, raw).
  • До версии 1.0.0 обновлена реализация протокола synce4l, обеспечивающего поддержку технологии синхронизации частоты SyncE (Synchronous Ethernet), поддерживаемой в некоторых сетевых картах и сетевых коммутаторах, и позволяющей повысить эффективность обмена данными в приложениях RAN (Radio Access Network) за счёт более точной синхронизации времени. Добавлена поддержка предоставляемого ядром интерфейса DPLL (Digital Phase Locked Loop).
  • В подсистему nftables перенесена возможность проверки полей внутренних заголовков пакетов, передаваемых через туннели. В утилиту nft добавлена возможность использования команды "nft reset" для сброса состояний правил nftables, таких как счётчики пакетов и значения квот. В firewalld прекращено удаление правил, добавленных через iptables, если в firewalld используется бэкенд nftables и отсутствуют правила, созданные с опцией "--direct".
  • В утилиту ss, входящую в пакет iproute2, добавлена опция "--bound-inactive" для отображения неактивных сетевых сокетов TCP, которые прикреплены к IP-адресу и сетевому порту (выполнен вызов bind), но не соединены (вызов connect) или не переведены в режим ожидания соединения (вызов listen).
  • В NetworkManager добавлена возможность изменения числа каналов (очередей пакетов, привязанных к обработчикам прерываний) для сетевых интерфейсов и настройки режима SwitchDev, позволяющего делегировать операции по перенаправлению кадров и обработке сетевых пакетов специализированным аппаратным чипам. Добавлена поддержка сетевых интерфейсов MACsec. Для беспроводных соединений предоставлена возможность назначения отдельного постоянного MAC-адреса (режим stable-ssid).
  • В Nmstate обеспечено создание YAML-файла для возврата к прошлому состоянию настроек. Для управления приоритетами в агрегированных сетевых интерфейсах (bond) добавлено свойство priority. Добавлены дополнительные атрибуты для VLAN: registration-protocol, mvrp, reorder-headers и loose-binding. Предоставлена возможность настройки тегов VLAN на сетевых устройствах с поддержкой SR-IOV (Single Root I/O Virtualization).
  • Возвращён модуль ядра с реализацией алгоритма контроля перегрузки TCP Illinois, который в среднем позволяет добиться большей пропускной способности и более справедливого распределения ресурсов.
  • Расширены возможности утилит rteval, rtla и cyclicdeadline. В rteval добавлена возможность использования префиксов "+" и "-" для прикрепления и открепления ядер CPU из списка отслеживаемых ядер (measurement-cpulist). Утилита rtla обновлена до состояния, соответствующего ядру Linux 6.6. Добавлена опция "rtla -C" для прикрепления к потокам дополнительных cgroup. В утилиту cyclicdeadline добавлена возможность визуализации задержек в виде гистограммы.
  • Добавлена возможность задания максимального размера ФС при динамическом увеличении размера ФС сервисом stratisd, что позволяет избежать проседания производительности после неконтролируемого увеличения размера XFS.
  • В утилиту lvconvert добавлена поддержка преобразования стандартных логических томов (LV) в вариант, допускающий динамическое выделение места в хранилище (thin provisioning).
  • В multipathd добавлена поддержка обработки событий FPIN-Li (Fabric Performance Impact Notification) для оптимизации доступа к накопителям NVMe. В секцию используемых по умолчанию настроек в multipath.conf добавлены параметры max_retries и auto_resize. Для Device-mapper-multipath добавлены настойки для использования массива HPE Alletra 9000 NVMeFC и поддержки режима ANA (Asymmetric Namespace Access) в NVMeoFC.
  • В разряд стабильных переведена возможность загрузки c адаптеров NVMe/FC (Non-volatile Memory Express (NVMe) over Fibre Channel).
  • В web console упрощено управление хранилищами и изменение размера разделов. Добавлена поддержка генерации shell-скриптов и сценариев Ansible для настройки kdump. В секции Virtual Machines реализована возможность добавления открытых ключей SSH и подключения уже отформатированных блочных устройств. Для подключения к виртуальным машинам вместо протокола SPICE задействован VNC.
  • Добавлены новые системные роли для запуска, управления и настройки fapolicyd и Microsoft SQL Server 2022. Добавлена роль snapshot для создания и управления снапшотами LVM. В роль sshd добавлена возможность аутентификации по сертификатам.
  • Стабилизирована поддержка виртуализации на системах ARM64 с использованием гипервизора KVM.
  • Добавлена поддержка миграции виртуальных машин в режиме Multi-FD (multiple file descriptors), при котором при переносе виртуальной машины устанавливается несколько параллельных соединений, что позволяет ускорить передачу данных при наличии высокоскоростного сетевого соединения (20 Gbps и выше).
  • Повышена производительность live-миграции в режиме Postcopy, при котором виртуальное окружение запускается почти сразу, а все недостающие данные подгружаются при обращении к не скопированным страницам памяти.
  • Добавлена утилита toolbx, позволяющая запустить дополнительное изолированное окружение, которое может быть обустроено произвольным образом при помощи обычного пакетного менеджера DNF и использоваться для установки экспериментальных пакетов без влияния на основную систему.
  • Добавлена поддержка параметров командной строки ядра Linux: accept_memory, ia32_emulation, arm64.nomops, cgroup_favordynmods, early_page_ext, fw_devlink.sync_state, kunit.enable, mtrr=debug, rcupdate.rcu_cpu_stall_cputime, rcupdate.rcu_exp_stall_task_details, spec_rstack_overflow и workqueue.unbound_cpus.
  • Добавлены новые параметры sysctl: io_uring_group и numa_balancing_promote_rate_limit_MBps.
  • Использование механизма io_uring по умолчанию запрещено для всех процессов (sysctl io_uring_disabled=2).
  • Расширена поддержка оборудования. Добавлены драйверы для поддержки технологий Intel QuickAssist Technology, Intel TPMI, Intel Uncore Frequency, AMD HSMP, AMD XCP, AMD Platform Management и Mellanox PMC. Добавлен драйвер octeon_ep для контроллеров Marvell Octeon PCIe Endpoint Network Interface Controller.
  • Продолжено предоставление экспериментальной (Technology Preview) поддержки:
    • VPN WireGuard,
    • kTLS (TLS на уровне ядра),
    • интерфейса асинхронного ввода/вывода io_uring,
    • DAX (Direct Access) для ext4 и XFS,
    • AMD SEV и SEV-ES в гипервизоре KVM,
    • сервиса systemd-resolved,
    • механизма Sigstore для верификации контейнеров по цифровым подписям,
    • протоколов PRP (Parallel Redundancy Protocol) и HSR (High-availability Seamless Redundancy),
    • аппаратного ускорения IPsec через вынос операций инкапсуляции пакетов на сторону сетевой карты,
    • протокола управления сертификатами ACME, применяемого в Let's Encrypt,
    • SRv6 (Segment Routing over IPv6,
    • пакета с графическим редактором GIMP 2.99.8,
    • настройки MPTCP (Multipath TCP) через NetworkManager,
    • DNSSEC в IdM,
    • virtio-mem,
    • Socket API для TuneD,
    • Soft-iWARP (Internet Wide-area RDMA Protocol),
    • GNOME для ARM64 и IBM Z.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61100

continue honked 02 May 2024 11:53 +0200

#Сегодня поменял термопасту на компьютере в офисе. Стала градусов на 40 холоднее.
Надо бы и домашнюю технику обслужить, она в правильном температурном диапазоне дольше прослужит.

opennet honked 02 May 2024 08:00 +0200

Выпуск дистрибутива для создания домашних кинотеатров LibreELEC 12.0

Представлен выпуск проекта LibreELEC 12.0, развивающего форк дистрибутива для создания домашних кинотеатров OpenELEC. Интерфейс пользователя построен на основе медиацентра Kodi. Для загрузки подготовлены образы для работы с USB-накопителя или SD-карты (32- и 64-разрядные x86, Raspberry Pi 2/3/4/5, различные устройства на чипах Rockchip, Allwinner, NXP и Amlogic). Размер сборки для архитектуры x86_64 - 247 МБ.

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

Дистрибутив не использует пакетную базу других дистрибутивов и основывается на собственных разработках. Кроме штатных возможностей Kodi, дистрибутив предоставляет ряд дополнительных функций, нацеленных на максимальное упрощение работы. Например, развивается специальное конфигурационное дополнение, позволяющее настроить параметры сетевого подключения, управлять параметрами LCD-экранов, разрешать или запрещать автоматическую установку обновлений. Также предоставляются такие возможности, как использование пульта дистанционного управления (возможно управление как через инфракрасный порт, так и через Bluetooth), организация совместного доступа к файлам (встроен сервер Samba), встроенный BitTorrent-клиент Transmission, автоматический поиск и подключение локальных и внешних накопителей.

В новом выпуске:

  • Поставляемый в составе медиацентр Kodi обновлён до версии 21.0.
  • Стабилизирована поддержка платы Raspberry Pi 5 и улучшена работа на платах Rasberry Pi 4. Добавлены 64-разрядные сборки для Rasberry Pi 4 и 5.
  • Обновлены версии пакетов, например, mesa 24.0.6, Python 3.11.9, samba 4.20.0, pipewire 1.0.4, systemd 255, ядро Linux 6.6.
  • Для архитектуры x86_64 помимо основной сборки с новыми графическим стеком GBM (Generic Buffer Management) и V4L2, таким же как в сборках для ARM-плат и поддерживающим HDR на системах с новыми GPU AMD и Intel, добавлена отдельная сборка Generic-legacy для старого оборудования с видеокартами NVIDIA, в которой используется старый графический стек на основе X11, применявшийся в ветках LibreELEC 7-10.
  • Возобновлена поддержка устройств на чипах Amlogic S905, S905X/D и S912, для которых обеспечена поддержка ускорения воспроизведения видео в форматах H264 и HEVC, добавлена поддержка HDR для HEVC и VP9.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61102

opennet honked 01 May 2024 23:00 +0200

Выпуск текстового редактора GNU nano 8.0

Состоялся релиз консольного текстового редактора GNU nano 8.0, предлагаемого в качестве редактора по умолчанию во многих пользовательских дистрибутивах, разработчики которых считают vim слишком сложным для освоения.

В новом выпуске

  • Добавлена опция командной строки "--modernbindings" ("-/"), которая активирует альтернативный набор базовых горячих клавиш:
    • ^Q - выход,
    • ^X перенос в буфер обмена,
    • ^C - копирование в буфер обмена,
    • ^V - вставка из буфера обмена,
    • ^Z - отмена операции,
    • ^Y - отмена отмены (redo),
    • ^O - открытие файла,
    • ^W - запись в файл,
    • ^R - замена,
    • ^G - повтор поиска,
    • ^D - повтор поиска в обратном направлении,
    • ^A - установка метки,
    • ^T - переход на строку по номеру,
    • ^P - показ текущей позиции,
    • ^E - запуск команды.
  • Обеспечено задействование альтернативного набора горячих клавиш при запуске nano, используя исполняемый файл или символическую ссылку с именем, начинающимся на букву "e".
  • По умолчанию горячая клавиша ^F теперь используется для начала поиска в прямом направлении, а ^B - в обратном, а M-F и M-B повторяют прямой и обратный поиск.
  • Добавлены горячие клавиши ‹Alt+Home› и ‹Alt+End›, позволяющие переместить курсор на первую или последнюю строку в рамках текущей видимой области, сохранив горизонтальную позицию.
  • Горячая клавиша 'M-"' теперь используется для установки и удаления метки, а "M-'" для перехода к следующей метке.
  • Добавлена возможность перехода на определённый номер строки в файле при открытии файла командой "nano filename:number" в дополнение к ранее поддерживаемой опции "+N" ("nano +number filename").
  • Задание одинаковых цветовых составляющих в значениях #RGB (например, "#555") теперь отождествляется с градацией оттенков серого xterm, что позволяет использовать 14 уровней серого, вместо 4.
  • При возникновении ошибки обеспечена очистка буфера клавиатурных нажатий для остановки выполнения макросов.
  • Вращение колеса мыши теперь приводит к прокрутке видимой области, а не перемещению курсора.


Источник: https://www.opennet.ru/opennews/art.shtml?num=61101