Проект Kera Desktop развивает пользовательское окружение на базе web-технологий
После 10 лет разработки опубликован первый альфа-выпуск пользовательского окружения Kera Desktop, развиваемого с использованием web-технологий. Окружение предоставляет типовые возможности управления окнами, панель, меню и виртуальные рабочие столы. Первый выпуск ограничен поддержкой запуска только web-приложений (PWA), но в дальнейшем планируют добавить возможность запуска обычных программ и создания специализированного дистрибутива с рабочим столом Kera, основанного на пакетной базе Fedora Linux. Код проекта написан на JavaScript, не использует сторонние фреймворки и распространяется под лицензией GPLv3. Готовые сборки подготовлены для Linux, Chrome OS, macOS и Windows.
Основные возможности:
- Меню в стиле сетки пиктограмм, активно использующее разделение цветами разных категорий.
- При раскрытии приложений на весь экран возможно скомбинировать в одну строку панель приложения и системную панель
- Раскрывающиеся боковые панели, упрощающие группировку приложений, файлов и web-страниц, и предоставляющие доступ к встраиваемым web-приложентям.
- Поддержка виртуальных рабочих столов с возможностью быстрого переключения приложения между ними.
- Поддержка сворачивания панели с оставлением только индикатора для её раскрытия.
- Система вывода уведомлений, спроектированная с расчётом, что всплывающие уведомления по возможности не должны перекрывать другое содержимое.
- Управление окнами и возможность компоновки окон бок о бок в мозаичном стиле. Поддержка закрепления окон на переднем плане.
- Автоматическое размещение новых окон с учётом наличие незанятых другими окнами областей на экране.
- Возможность навигации по приложениям и элементам рабочего стола в форме поиска и управляющих команд.
- Реализована концепция комнат, в которых могут группироваться задачи определённо тематики (работа, обучение, игры и т.п.). Для визуального разделения комнат можно привязывать к каждой комнате свой цвет и разные обои рабочего стола.
- Поддерживается синхронизация состояния рабочего стола с учётной записью в облачном окружении или на собственном сервере пользователя.
Окружение развивается без привязки к определённым платформам и позволяет получить одинаковый интерфейс, независимо от используемой ОС.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59277
Релиз Debian 12 "Bookworm"
После почти двух лет разработки состоялся релиз Debian GNU/Linux 12.0 (Bookworm), доступный для девяти официально поддерживаемых архитектур: Intel IA-32/x86 (i686), AMD64/x86-64, ARM EABI (armel), ARM64, ARMv7 (armhf), mipsel, mips64el, PowerPC 64 (ppc64el) и IBM System z (s390x). Обновления для Debian 12 будут выпускаться в течение 5 лет.
Для загрузки доступны установочные образы, загрузить которые можно по HTTP, jigdo или BitTorrent. Для архитектур amd64 и i386 разработаны LiveUSB, доступные в вариантах с GNOME, KDE, LXDE, Xfce, Cinnamon и MATE, а также многоархитектурный DVD, сочетающий пакеты для платформы amd64 с дополнительными пакетами для архитектуры i386.
Перед процедурой миграции с Debian 11 "Bullseye" следует ознакомиться со следующим документом.
В репозитории представлено 64419 бинарных пакетов, что на 4868 пакетов больше, чем было предложено в Debian 11. По сравнению с Debian 11 добавлено 11089 новых бинарных пакетов, удалено 6296 (10%) устаревших или заброшенных пакетов, обновлено 43254 (67%) пакетов.
Для 96.3% (в прошлой ветке 95.7%) пакетов обеспечена поддержка повторяемых сборок, позволяющих подтвердить, что исполняемый файл собран именно из заявленных исходных текстов и не содержит посторонних изменений, подстановка которых, например, может быть совершена путём атаки на сборочную инфраструктуру или закладки в компиляторе.
Ключевые изменения в Debian 12.0:
- В состав официальных установочных образов помимо свободных прошивок из репозитория main, включены и проприетарные прошивки, ранее доступные через репозиторий non-free. При наличии оборудования, для работы которого требуются внешние прошивки, необходимые проприетарные прошивки загружаются по умолчанию. Для пользователей, предпочитающих только свободное ПО, на этапе загрузки предоставлена возможность отключения использования несвободных прошивок.
- Добавлен новый репозиторий non-free-firmware, в который из репозитория non-free перенесены пакеты с прошивками. В инсталляторе предоставлена возможность динамического запроса пакетов с прошивками из репозитория non-free-firmware. Наличие отдельного репозитория с прошивками позволило обеспечить доступ к прошивкам без включения в установочных носителях общего репозитория non-free.
- Ядро Linux обновлено до версии 6.1 (в Debian 11 поставлялось ядро 5.10). Обновлены systemd 252, Apt 2.6 и Glibc 2.36.
- Обновлён графический стек и пользовательские окружения: GNOME 43, KDE Plasma 5.27, LXDE 11, LXQt 1.2.0, MATE 1.2, Xfce 4.18, Mesa 22.3.6, X.Org Server 21.1, Wayland 1.21. В окружениях с GNOME по умолчанию задействован мультимедийный сервер Pipewire и менеджер звуковых сеансов WirePlumber.
- Обновлены пользовательские приложения, например, LibreOffice 7.4, GNUcash 4.13, Emacs 28.2, GIMP 2.10.34, Inkscape 1.2.2, VLC 3.0.18, Vim 9.0.
- Обновлены серверные приложения, например, Apache httpd 2.4.57, BIND 9.18, Dovecot 2.3.19, Exim 4.96, lighttpd 1.4.69, Postfix 3.7, MariaDB 10.11, nginx 1.22, PostgreSQL 15, Redis 7.0, SQLite 3.40, Samba 4.17, OpenSSH 9.2p1.
- Обновлены средства разработки, включая GCC 12.2, LLVM/Clang 14 (для установки также доступен 15.0.6), OpenJDK 17, Perl 5.36, PHP 8.2, Python 3.11.2, Rust 1.63, Ruby 3.1.
- Добавлена поддержка работы с файловой системой APFS (Apple File System) в режиме чтения и запиcи, используя пакеты apfsprogs и apfs-dkms. В состав включена утилита ntfs2btrfs для преобразования NTFS-разделов в Btrfs.
- Добавлена поддержка библиотеки распределения памяти mimalloc, которая может выступать в качестве прозрачной замены функции malloc. Особенностью mimalloc является компактность реализации и очень высокая производительность (в тестах mimalloc опережает jemalloc, tcmalloc, snmalloc, rpmalloc и Hoard).
- Добавлен пакет ksmbd-tools и реализована поддержка встроенной в ядро Linux реализации файлового сервера на базе протокола SMB.
- Добавлен набор новых шрифтов и обновлены ранее предлагавшиеся шрифты. Предложен менеджер шрифтов fnt (аналог apt для шрифтов), решающий задачи установки дополнительных шрифтов и поддержания уже имеющихся шрифтов в актуальном состоянии. При помощи fnt можно установить более свежие шрифты, присутствующие в репозитории Debian Sid, а также внешние шрифты из коллекции Google Web Fonts.
- В загрузчике GRUB для определения других установленных операционных систем и генерации меню для их загрузки задействован пакет os-prober. Среди прочего, при загрузке обеспечено определение уже установленной ОС Windows 11.
- Из-за прекращения разработки удалены пакеты libpam-ldap и libnss-ldap, вместо которых для аутентификации пользователей через LDAP рекомендуется использовать эквивалентные по функциональности пакеты libpam-ldapd и libnss-ldapd.
- Прекращена установка по умолчанию фонового процесса для ведения логов, такого как rsyslog. Для просмотра логов вместо разбора файлов с логами рекомендуется вызывать утилиту "systemd journalctl". При необходимости старое поведение можно вернуть установкой пакета system-log-daemon.
- Из systemd в отдельные пакеты выделены systemd-resolved и systemd-boot. В пакете systemd клиент синхронизации времени systemd-timesyncd переведён из обязательных в рекомендованные зависимости, что позволяет формировать минимальные установки без NTP-клиента.
- Удалён пакет fdflush, вместо которого следует использовать "blockdev --flushbufs" из util-linux.
- Удалены программы tempfile и rename.ul, вместо которых в скриптах рекомендуется использовать утилиты mktemp и file-rename.
- Объявлена устаревшей утилита which, которая будет удалена в будущих выпусках. В качестве замены в bash-скриптах для определения пути к исполняемым файлам рекомендовано использовать команды "type" или "type -a".
- Объявлены устаревшими и будут удалены в Debian 13 пакеты libnss-gw-name, dmraid и request-tracker4.
- Обеспечено назначение постоянных имён сетевых интерфейсов ("enX0") для виртуальных сетевых устройств Xen.
- Добавлена поддержка новых устройств на базе процессоров ARM и RISC-V.
- Обновлены системные руководства (man) на русском и украинском языках.
- Добавлены коллекции тематических пакетов, связанных с медициной,
биологией и астрономией, подготовленные командами Debian Med и
Debian Astro. Например, в состав включены пакеты с shiny-server (платформа для размещения web-приложений на языке R), openvlbi (коррелятор для телескопов), astap (обработчик астрономических изображений), planetary-system-stacker (формирует изображения планет из фрагментов), новые драйверы и библиотеки с поддержкой протокола INDI, связанные с Astropy Python-пакеты (python3-extinction, python3-sncosmo, python3-specreduce, python3-synphot), Java-библиотеки для работы с форматами ECSV и TFCAT.
- В репозиторий добавлены развиваемые проектом UBports пакеты с пользовательским окружением Lomiri (бывший Unity 8) и дисплейным сервером Mir 2, который выступает в роли композитного сервера на базе Wayland.
- На финальной стадии подготовки релиза отложен изначально ожидавшийся в Debian 12 перевод дистрибутива с использования отдельного раздела /usr на новое представление, при котором каталоги /bin, /sbin и /lib* оформлены как символические ссылки на соответствующие каталоги внутри /usr.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59273
В Safari 17 и WebKit включена поддержка формата изображений JPEG XL
Компания Apple включила по умолчанию в бета-версии браузера Safari 17 и движке WebKit поддержку формата изображений JPEG XL, от поддержки которого в Chrome в прошлом году отказалась компания Google. В Firefox поддержка формата JPEG XL доступна в ночных сборках (включается через image.jxl.enabled = true в about:config), но Mozilla пока сохраняет нейтральную позицию в вопросе продвижения этого формата.
В качестве аргумента удаления экспериментальной поддержки JPEG XL из кодовой базы Chromium упоминалось отсутствие достаточного интереса к формату со стороны экосистемы. С тех пор ситуация изменилась и кроме положительных отзывов от web-разработчиков и сообщества (за поддержку JPEG XL в Chrome высказались представители Facebook, Adobe, Intel and VESA, Krita, The Guardian, libvips, Cloudinary, Shopify и Free Software Foundation), формат теперь будет поддерживаться в Safari. В Google продолжают поступать запросы, связанные с возвращение кода для работы JPEG XL в Chromium.
В числе аргументов Google против включения JPEG XL также упоминалось отсутствие достаточных дополнительных преимуществ по сравнению с существующими форматами. При этом на странице с заявкой добавления поддержки JPEG XL в движок Blink упоминаются такие преимущества, как снижение размера до 60% по сравнению с изображениями JPEG идентичного качества и наличие расширенных возможностей, таких как HDR, анимация, прозрачность, режим прогрессивной загрузки, плавное ухудшение качества при уменьшении битрейта, сжатие JPEG без потерь (уменьшение размера JPEG до 21% c возможностью восстановления исходного состояния), поддержка до 4099 каналов и большой диапазон глубин цвета.
Кодек JPEG XL не требует отчислений и предлагает открытую эталонную реализацию под лицензией BSD. Применяемые в JPEG XL технологии не пересекаются с запатентованными технологиями, за исключением принадлежащего Microsoft патента на метод rANS (range Asymmetric Number System), но для данного патента выявлен факт более раннего использования ("prior art").
Источник: https://www.opennet.ru/opennews/art.shtml?num=59276
Выпуск Wine 8.10
Состоялся экспериментальный выпуск открытой реализации WinAPI - Wine 8.10. С момента выпуска версии 8.9 было закрыто 13 отчётов об ошибках и внесено 271 изменение.
Наиболее важные изменения:
- Для трансляции всех обращений из PE-файлов в Unix-библиотеки задействован интерфейс системных вызовов. В win32u на интерфейс системных вызовов переведены все экспортируемые функции и функции ntuser.
- Улучшена поддержка ограничения (clipping) перемещения курсора мыши заданной областью на экране.
- Добавлена поддержка заполнителей виртуальной памяти (зарезервированные области памяти с типом placeholder). В библиотеке ntdll в функции
NtFreeVirtualMemory() добавлена поддержка флага MEM_COALESCE_PLACEHOLDERS, а в функции NtUnmapViewOfSectionEx() флага
MEM_PRESERVE_PLACEHOLDER.
- Обновлены файлы с локалью и базой часовых поясов.
- Закрыты отчёты об ошибках, связанные с работой приложений: MSN Messenger Live 2009, Lync 2010, Adobe Premiere Pro CS3, Quicken 201X, uTorrent 2.2.0, Creo Elements/Direct Modeling Express 4.0/6.0, Honeygain, PmxEditor 0.2.7.5,
- Закрыты отчёты об ошибках, связанные с работой игры Animated Puzzles.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59272
Компания Cisco предложила файловую систему PuzzleFS для ядра Linux
Компания Cisco предложила новую файловую систему PuzzleFS, реализованную в виде модуля для ядра Linux, написанного на языке Rust. ФС рассчитана на использование для размещения изолированных контейнеров и продолжает развитие идей, предложенных в ФС Atomfs. Реализация пока находится на стадии прототипа, поддерживает сборку с веткой ядра Linux rust-next и открыта под лицензиями Apache 2.0 и MIT.
Проект нацелен на обход ограничений, возникающих при использовании образов контейнеров в формате OCI (Open Container Initiative). PuzzleFS решает такие задачи как эффективное хранение дублирующихся данных, возможность прямого монтирования, повторяемая сборка образов и безопасная работа с памятью.
Для дедупликации повторяющихся в разных контейнерах данных задействован алгоритм FastCDC (Fast Content-Defined Chunking), работающий через разделение данных на фрагменты произвольного размера и ведение индекса с хэшами обработанных фрагментов. Повторяющиеся фрагменты хранятся один раз и совместно индексируются для всех слоёв ФС, т.е. дедупликация может охватывать разные точки монтирования (новый слой ФС может быть запущен на основе существующего и использовать, имеющиеся в нём фрагменты данных при дедупликации).
Повторяющаяся сборка образов контейнеров достигается через определение канонического представления формата образов контейнеров.
Прямое монтирование (direct-mount) позволяет монтировать образ контейнера в формате OCI из глобального совместно используемого хранилища без его предварительной распаковки и используя в качестве идентификатора хэш содержимого из манифеста контейнера. Для верификации целостности данных в условиях применения общего хранилища может применяться механизм fs-verity, который при обращении к файлам проверяет соответствие указанных в бинарном индексе хэшей с фактическим содержимым.
Язык Rust выбран как сочетающий высокую производительность результирующего кода с возможностями для безопасной работы с памятью, что позволяет снизить риск появления уязвимостей, вызванных такими проблемами как обращение к области памяти после её освобождения и выход за границы буфера. Применение Rust для модуля ядра также позволило совместно использовать код в ядре и компонентах, работающих в пространстве пользователя, для создания единой защищённой реализации.
Среди других целей проекта: очень быстрая сборка и монтирование образов, возможность использования необязательной промежуточной стадии для преобразования (canonicalization) образов, необязательность полных проходов по дереву ФС в стиле mtree при использовании многослойной структуры, наложение изменений в стиле
casync и простая в реализации архитектура.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59271
Началось альфа-тестирование PHP 8.3
Представлен первый альфа-выпуск новой ветки языка программирования PHP 8.3. Релиз намечен на 23 ноября. Основные новшества, уже доступные для тестирования или планируемые к реализации в PHP 8.3:
- Во время клонирования классов предоставлена возможность повторной инициализации свойств с атрибутом "readonly". Переопределение readonly-свойств допускается только внутри функции "__clone":
readonly class Post
{
public function __construct(
public DateTime $createdAt,
) {}
public function __clone()
{
$this->createdAt = new DateTime(); // разрешено, несмотря на то, что свойство "createdAt" доступно в режиме только для чтения.
}
}
- Добавлена возможность создания анонимных классов в режиме только для чтения:
$class = new readonly class {
public function __construct(
public string $foo = 'bar',
) {}
};
- Добавлена функция json_validate() для быстрой проверки соответствия строки формату JSON без выполнения операций декодирования.
json_validate(string $json, int $depth = 512, int $flags = 0): bool
- В класс Randomizer, предоставляющий высокоуровневый API для генерации псеводослучайных чисел и последовательностей, добавлены новые методы: getBytesFromString для формирования строки заданного размера, использующей в случайном порядке символы, присутствующие в другой строке; getFloat и nextFloat для генерации случайного числа с плавающей запятой, укладывающегося в указанный диапазон.
- Добавлена
возможность извлечения констант, используя синтаксис динамических классов:
class Foo
{
const BAR = 'bar';
}
$name = 'BAR';
// Ранее для извлечения константы BAR нужно было вызывать
constant(Foo::class . '::' . $name);
// А теперь достаточно указать
Foo::{$name};
- Добавлена генерация отдельных исключений (DateMalformedIntervalStringException, DateInvalidOperationException, DateRangeError) в случае проблем, возникающих в операциях работы с датами и временем.
- Улучшена обработка ошибок, возникающих в процессе разбора сериализированных данных в функции
unserialize(). В случае проблем unserialize() теперь выдаёт код E_WARNING вместо E_NOTICE.
- Добавлены настройки для защиты от переполнения стека. В ini-файл добавлены директивы zend.max_allowed_stack_size и zend.reserved_stack_size, определяющие максимально разрешённый и зарезервированный размер стека. Программа будет завершаться ошибкой при приближении к исчерпанию стека, когда стек заполнен больше, чем на разницу между значениями zend.max_allowed_stack_size и zend.reserved_stack_size (выполнение будет остановлено не доводя ситуацию до возникновения segmentation fault). По умолчанию значение zend.max_allowed_stack_size выставлено в 0 (0 - размер определяется автоматически, для отключения ограничения можно выставить -1).
- Добавлены новые POSIX-функции posix_sysconf(), posix_pathconf(), posix_fpathconf() и posix_eaccess().
Источник: https://www.opennet.ru/opennews/art.shtml?num=59270
Проект Fciv.net развивает 3D-версию стратегической игры Freeciv
Проект Fciv.net развивает 3D-версию пошаговой стратегической игры Freeciv, игровой процесс в которой напоминает серию игр Civilization. Игра может быть запущена в web-браузере, поддерживающем HTML5 и WebGL 2. Возможна как игра в многопользовательском режиме, так и индивидуальное соперничество с ботами. Fciv.net продолжает развитие кодовой базы проекта Freeciv-web и отличается задействованием WebGL и 3D-движка Three.js, а также некоторыми расширенными возможностями, такими как AI-ассистент на базе ChatGPT. Код проекта распространяется под лицензией AGPLv3.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59269
Третья бета-версия мобильной платформы Android 14
Компания Google представила третью бета-версию открытой мобильной платформы Android 14, которая ознаменовала переход разработки на стадию стабилизации платформы (Platform Stability), подразумевающую фиксацию поведения и состояния API для приложений. В следующих тестовых выпусках Android 14 программные интерфейсы останутся неизменны, что позволяет разработчикам начать адаптацию своих программ для использования новых возможностей платформы.
Релиз Android 14 ожидается в третьем квартале 2023 года. Для оценки новых возможностей платформы предложена программа предварительного тестирования. Сборки прошивки подготовлены для смартфонов Pixel 7/7 Pro, Pixel 6/6a/6 Pro, Pixel 5/5a 5G и Pixel 4a (5G), а также некоторых моделей устройств iQOO, Lenovo, Nothing, OnePlus, OPPO, Realme, Tecno, vivo и Xiaomi.
Изменения в Android 14 Beta 3 по сравнению с второй бета-версией:
- Добавлена поддержка нелинейного масштабирования шрифтов. По умолчанию в системе разрешено и включено в процессы тестирования интерфейса использование увеличенных размеров шрифтов с коэффициентом масштабирования вплоть до 200%, что позволит добиться оптимальной читаемости текста людьми с ослабленным зрением без опасности появления искажений в компоновке интерфейса.
- Предоставлена возможность частичного предоставления полномочий для доступа только к выбранным пользователем фотографиям и видео (READ_MEDIA_VISUAL_USER_SELECTED, файлы, к которым предоставляется доступ, выбираются пользователем через интерфейс Photo picker во время появления диалога запроса полномочий). После перевода приложения в фоновый режим или завершения работы программы предоставленное пользователем полномочие автоматически отзывается.
- Расширены области в которых система показывает связанную с конфиденциальностью информацию, определённую разработчиком в Play Console Form, такую как политика в отношении предоставления данных третьим лицам. Например, подобные сведения теперь показываются в диалоге запроса полномочий.
- В приложениях, использующих обработчики, работающие в фоновом режиме, теперь обязательно указание типа фонового сервиса. Во время работы система проверяет соответствие указанного типа сервиса, запрошенных полномочий и используемого API. Например, если приложение указало тип фонового сервиса FOREGROUND_SERVICE_TYPE_LOCATION, подразумевается, что им могут быть запрошены полномочия ACCESS_COARSE_LOCATION или ACCESS_FINE_LOCATION.
- Внесены изменения для повышения безопасности: Запрещена отправка приложениями intent-запросов к некоторым внутренним компонентам платформы. Динамически загружаемый код теперь должен помечаться атрибутом доступа в режиме только для чтения. В функциях
ZipFile(String) и ZipInputStream.getNextEntry() запрещена обработка zip-архивов, пути в которых начинаются с символа "/" или содержат последовательность "..". Ограничен запуск работ из фоновых обработчиков и обновлены ограничения в области вызова программных интерфейсов, не предоставляемых в SDK.
- Базовые Java-библиотеки платформы и средства разработки приложений обновлены до OpenJDK 17. Добавлена поддержка доступных в OpenJDK 17 языковых возможностей и Java-классов, например, классов типа record, многострочных строк и сопоставления c образцом в операторе "instanceof".
Источник: https://www.opennet.ru/opennews/art.shtml?num=59267
Intel опубликовал открытый моноширинный шрифт One Mono
Компания Intel опубликовала открытый моноширинный шрифт One Mono, предназначенный для использования в эмуляторах терминалов и редакторах кода. Исходные компоненты шрифта распространяются под лицензией OFL 1.1 (Open Font License), позволяющей неограниченно модифицировать шрифт, использовать его в том числе для коммерческих целей, печати и на сайтах в Web. Для загрузки подготовлены файлы в форматах TrueType (TTF), OpenType (OTF), UFO (исходные файлы), WOFF и WOFF2, подходящие для загрузки в редакторах кода, таких как VSCode и Sublime Text, а также для использования в Web.
Шрифт подготовлен при участии группы слабовидящих разработчиков и нацелен на предоставление наилучшей разборчивости символов и снижение усталости и перенапряжения глаз в процессе работы с кодом. Символы и глифы спроектированы для максимального акцентирования различий между похожими символами, такими как "l", "L" и "1", а также усиления отличия символов в верхнем и нижнем регистре (по сравнению с другими шрифтами высота заглавных и строчных букв отличается сильнее). В шрифте также увеличены используемые при программировании служебные символы, такие как косая черта, фигурные, квадратные и круглые скобки.
В буквах более ярко выражены скруглённые области, такие как дуги в буквах "d" и "b".
Наилучшая читаемость в предложенном шрифте наблюдается при размерах от 9 пикселей при отображении на экране и 7 пикселей при выводе на печать. Шрифт позиционируется как многоязычный, включает 684 глифа и поддерживает более 200 языков на основе латиницы (кириллица пока не поддерживается). Доступно 4 варианта толщины символов (Light, Regular, Medium, и Bold) и поддержка наклонного начертания.
В наборе обеспечена поддержка таких расширений OpenType, как контекстно применяемое приподнятое двоеточие, корректировка отображения символов в зависимости от выбранного языка,
разные формы верхнего и нижнего индексов, альтернативные стили и отображение дробей.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59265
Выпуск пользовательского окружения Cinnamon 5.8
После 7 месяцев разработки сформирован релиз пользовательского окружения Cinnamon 5.8, в рамках которого сообществом разработчиков дистрибутива Linux Mint развивается форк оболочки GNOME Shell, файлового менеджера Nautilus и оконного менеджера Mutter, нацеленный на предоставление окружения в классическом стиле GNOME 2 с поддержкой удачных элементов взаимодействия из GNOME Shell. Cinnamon основывается на компонентах GNOME, но эти компоненты поставляются как периодически синхронизируемый форк, не связанный внешними зависимостями с GNOME. Новый выпуск Cinnamon будет предложен в дистрибутиве Linux Mint 21.2, который планируется выпустить в конце июня.
Основные новшества:
- Реорганизована работа с темами оформления и упрощена структура тем. Например, унифицированы коричневый и песочный цвета, убрана поддержка цветных полосок на пиктограммах, где возможно задействованы символьные пиктограммы.
- Добавлена концепция стилей, предлагающих три режима расцветки элементов интерфейсов: смешанный (темные меню и элементы управления при общем светлом фоне окна), тёмный и светлый. Для каждого режима возможен выбор своего цветового варианта. Стили и цветовые варианты позволяют получить востребованные шаблоны интерфейса без необходимости выбора отдельных тем оформления.
- В файловом менеджере задействованы новые двухтональные пиктограммы и включена многопоточная генерация миниатюр.
- Изменено оформление всплывающих подсказок.
- Увеличены отступы между апплетами в панели.
- В уведомлениях задействованы символьные пиктограммы и цвета, применяемые для выделения активных элементов (accent).
- Добавлены общие для всех приложений настройки тёмного оформления, позволяющие выбрать три варианта: предпочтительно светлое оформление, предпочтительно тёмное оформление и режим выбирает приложение.
- Добавлена возможность управления окнами и виртуальными рабочими столами при помощи экранных жестов, а также использование жестов для мозаичной компоновки и управления воспроизведением мультимедийного контента. Поддерживаются жесты на сенсорных экранах и тачпадах.
- Переработан интерфейс программы для установки приложений, улучшены алгоритмы сортировки и группировки приложений. Для определения жестов задействован пакет touchegg.
- Добавлена настройка для изменения указателя мыши после завершения действия Alt+Tab.
- Добавлена настройка для изменения поведения средней кнопки мыши, по умолчанию используемой для вставки из буфера обмена.
- Добавлена настройка для отключения предупреждения о низком заряде аккумулятора на подключённых внешних устройствах.
- Переработаны и включены фоновые эффекты.
- Переработаны апплеты группировки окон и управления звуком.
- В меню добавлен отдельный стиль для выбранных категорий.
- Добавлена возможность изменения мышью размера апплетов, которая включена в апплете с меню. Добавлены настройки для возвращения исходного размера меню и изменения размера в зависимости от коэффициента масштабирования.
- В показываемое для апплетов контекстное меню добавлен пункт для вызова редактора меню.
- Добавлена возможность использования подсистемы VGA Switcheroo для переключения между разными GPU на ноутбуках с гибридной графикой.
- На экране входа в систему предоставлена поддержка переключения между несколькими раскладками клавиатуры. Улучшена навигация при помощи клавиатуры. Реализована возможность настройки раскладки в экранной клавиатуре.
- Изменён интерфейс пользователя в программе для работы с изображениями Pix, которая переведена на кодовую базу gThumb 3.12.2 (ранее использовался gThumb 3.2.8). Вместо панели инструментов и классического меню задействованы кнопки и выпадающее меню в заголовке.
Добавлена поддержка форматов AVIF/HEIF и JXL. Добавлена поддержка цветовых профилей. Разрешена генерация крупных эскизов (512, 768 и 1024 пикселей). Улучшено управление масштабированием. Добавлены новые эффекты и инструменты редактирования изображений.
- Набор JavaScript-биндингов CJS переведён на использование GJS 1.74 и JavaScript-движка SpiderMonkey 102 (Mozjs 102). Ранее использовался SpiderMonkey 78.
- Добавлена реализация порталов Freedesktop (xdg-desktop-portal), применяемых для организации доступа к ресурсам пользовательского окружения из изолированных приложений (например, для пакетов в формате flatpak при помощи порталов можно обеспечить возможность создания скриншотов и добавить поддержку тёмной темы оформления).
Источник: https://www.opennet.ru/opennews/art.shtml?num=59264
Выпуск Chrome OS 114
Доступен релиз операционной системы Chrome OS 114, основанной на ядре Linux, системном менеджере upstart, сборочном инструментарии ebuild/portage, открытых компонентах и web-браузере Chrome 114. Пользовательское окружение Chrome OS ограничивается web-браузером, а вместо стандартных программ задействованы web-приложения, тем не менее, Chrome OS включает в себя полноценный многооконный интерфейс, рабочий стол и панель задач. Исходные тексты распространяются под свободной лицензией Apache 2.0. Сборка Chrome OS 114 доступна для большинства актуальных моделей Chromebook. Для использования на обычных компьютерах предлагается редакция Chrome OS Flex.
Основные изменения в Chrome OS 114:
- В конфигуратор (ChromeOS Settings) добавлена отдельная страница для выбора звуковых устройств и настройки громкости и микрофона.
- Добавлена поддержка плавающих окон, которые могут быть наложены или закреплены над другими окнами. Например, в плавающем окне можно открыть приложение для ведения заметок во время просмотра лекции. Плавающий режим включается через меню с раскладкой текущего окна, клавиатурную комбинацию Search + Z или экранный жест вниз из центра верха окна.
- Добавлена функция App Streaming для трансляции на экране Chrome OS окон приложений, запущенных на устройствах с платформой Android.
- В приложение для работы со встроенной системой справки Explore (бывший Get Help) добавлена вкладка "App and games" с обзором новых популярных приложений и игр для Chromebook.
- Появилась возможность использования совместных альбомов, размещённых в Google Photos, в качестве источника для установки обоев рабочего стола или хранителя экрана.
- Добавлена поддержка бесшовного подключения к беспроводными сетям, защищённым при помощи технологии Passpoint (Hotspot 2.0), без необходимости поиска сети и аутентификации при каждом подключении (запоминается первый вход в привязке к местоположению, после чего все последующие подключения выполняются автоматически).
- Для централизованно управляемых систем добавлена поддержка включения обязательных дополнений, работающих в режиме инкогнито без возможности их отключения пользователем.
- Представлена сборка игры Minecraft для Chrome OS.
- Устранено 7 уязвимостей, среди которых переполнения буфера в функциях rewrite_1d_image_coordinate и set_stream_out_varyings, обращение к уже освобождённой памяти (use-after-free) в функциях vrend_draw_bind_abo_shader и sampler_state, состояние гонки в функции
amdgpu_ttm_tt_get_user_pages, обход ограничений беспроводной отладки в утилите adb и возможность запуска незаверенного цифровой подписью кода через загрузку изменённой версии RMA shim.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59263
Apple представил инструментарий для портирования игр, основанный на Wine
Компания Apple представила на конференции WWDC23 инструментарий Game Porting Toolkit, позволяющий разработчикам игр для платформы Windows портировать свои продукты для запуска в macOS. В качестве основы инструментария задействованы исходные тексты проекта Wine с дополнительными патчами от компании CodeWeavers, применяемыми в редакции пакета CrossOver для платформы macOS.
В Game Porting Toolkit используется выпуск CrossOver 22.1.1, предоставляющий возможность запуска в macOS игр на базе API DirectX 10 и 11. В находящемся в разработке выпуске CrossOver 23 для платформы macOS планируется добавить начальную поддержку DirectX 12.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59258
Доступен postmarketOS 23.06, Linux-дистрибутив для смартфонов и мобильных устройств
Опубликован выпуск проекта postmarketOS 23.06, развивающего дистрибутив Linux для смартфонов, базирующийся на пакетной базе Alpine Linux, стандартной Си-библиотеке Musl и наборе утилит BusyBox. Целью проекта является предоставление Linux-дистрибутива для смартфонов, не зависящего от жизненного цикла поддержки официальных прошивок и не привязанного к типовым решениям основных игроков индустрии, задающих вектор развития. Сборки подготовлены для PINE64 PinePhone, Purism Librem 5 и 29 поддерживаемых сообществом устройств, включая Samsung Galaxy A3/A5/S4, Xiaomi Mi Note 2/Redmi 2, OnePlus 6, Lenovo A6000, ASUS MeMo Pad 7 и даже Nokia N900. Ограниченная экспериментальная поддержка предоставлена для более чем 300 устройств.
Окружение postmarketOS максимально унифицировано и выносит все специфичные для конкретных устройств компоненты в отдельный пакет, все остальные пакеты идентичны для всех устройств и основаны на пакетах Alpine Linux. В сборках по возможности используется ванильное ядро Linux, а если это невозможно, то ядра из прошивок, подготовленных производителями устройств. В качестве основных пользовательских оболочек предлагаются KDE Plasma Mobile, Phosh, GNOME Mobile и Sxmo, но имеется возможность установки и других окружений, включая MATE и Xfce.
В новом выпуске:
- Число официально поддерживаемых сообществом устройств не изменилось - как и в прошлом выпуске заявлено о поддержке 31 устройства, но одно устройство было удалено, а одно добавлено. Из списка исключён планшет PINE64 PineTab из-за отсутствия сопровождающего. При этом компоненты для поддержки PINE64 PineTab остаются в ветке для разработчиков и могут быть возвращены в стабильную ветку в случае появления сопровождающего. Из новых устройств в списке появился смартфон Samsung Galaxy Grand Max.
- Реализована возможность использования пользовательского окружения GNOME Mobile, в котором задействована редакция оболочки GNOME Shell, адаптированная для использования на смартфонах и планшетах с сенсорным экраном. Компоненты GNOME Mobile основаны на ветке GNOME Shell 44 из Git.
Для управления установкой приложений подготовлен мобильный вариант приложения GNOME Software.
- Окружение Phosh, основанное на технологиях GNOME и развиваемое компанией Purism для смартфона Librem 5, обновлено до версии 0.26. По сравнению с прошлым выпуском postmarketOS в Phosh добавлен новый плагин для вывода информации о пользователе и экстренных вызовах, в плагинах разрешено выставление своих настроек, обновлено оформление меню быстрого запуска, реализована анимация пиктограмм в строке состояния, улучшен конфигуратор. По умолчанию для просмотра документов задействована мобильная версия приложения Evince.
- Оболочка KDE Plasma Mobile обновлена до версии 5.27.5 (ранее поставлялась версия 5.26.5), подробный обзор которой
публиковался ранее. Изменён интерфейс программы для отправки SMS/MMS.
- Графическая оболочка Sxmo (Simple X Mobile), основанная на композитном менеджере Sway и придерживающаяся Unix-философии, обновлена до версии 1.14, в которой переработана обработка перехода в спящий режим, для строки состояния задействована панель sxmobar, заменены пиктограммы в строке состояния, переписаны компоненты для работы с MMS и логами.
- По умолчанию реализована установка файлов с переводами, а базовая локаль измена с C.UTF-8 на en_US.UTF-8.
- Доведена до рабочего состояния возможность раздачи интернета на другие устройства через USB-порт (USB tethering).
- В установочных образах минимальный размер выставляемого пароля уменьшен с 8 до 6 символов.
- Реализована работа из коробки звука и управления фоновой подсветкой на смартфоне PineBook Pro.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59262
Релиз дистрибутива openSUSE Leap 15.5
После года разработки состоялся релиз дистрибутива openSUSE Leap 15.5. Выпуск сформирован на основе единого с SUSE Linux Enterprise 15 SP 5 набора бинарных пакетов c некоторыми пользовательскими приложениями из репозитория openSUSE Tumbleweed. Использование одних и тех же бинарных пакетов в SUSE и openSUSE упрощает переход между дистрибутивами, экономит ресурсы на сборку пакетов, распространение обновлений и тестирование, унифицирует различия в spec-файлах и позволяет отойти от диагностики разных сборок пакетов при разборе сообщений об ошибках. Для загрузки доступна универсальная DVD-сборка, размером 4 ГБ (x86_64, aarch64, ppc64les, 390x), урезанный образ для установки с загрузкой пакетов по сети (200 МБ) и Live-сборки с KDE, GNOME и Xfce (~900 МБ).
Обновления для ветки openSUSE Leap 15.5 будут выпускаться до конца 2024 года. Изначально ожидалось, что версия 15.5 будет последней в серии 15.x, но разработчики приняли решение в следующем году сформировать ещё выпуск 15.6 перед запланированным переходом на использование платформы ALP (Adaptable Linux Platform) в качестве основы openSUSE и SUSE Linux. Ключевым отличием ALP является разделение базовой основы дистрибутива на две части: урезанную "host OS" для работы поверх оборудования и слой для поддержки приложений, ориентированный на запуск в контейнерах и виртуальных машинах. Формирование в следующем году ещё одного функционального выпуска в ветке openSUSE Leap 15 даст разработчикам дополнительное время на доведение до желаемого вида платформы ALP.
Основные новшества:
- Обновлены пользовательские окружения:
KDE Plasma 5.27.4 (ранее поставлялся выпуск 5.24.4), Xfce 4.18 (ранее 4.16), Deepin 20.3 и LxQt 1.2. Обновлён графический стек, Qt 6.4/5.15.8, Wayland 1.21 и Mesa 22.3.5 (ранее поставлялся Mesa 21.2.4). Браузерные движки webkit2gtk3 и webkit2gtk4 обновлены до версии 2.38.5. Версия GNOME не изменилась, как и в прошлом выпуске предлагается GNOME 41. Не изменились также версии Sway 1.6.1, Enlightenment 0.25.3, MATE 1.26 и Cinnamon 4.6.7.
- Упрощён процесс установки кодека H.264 и по умолчанию включён репозиторий, в котором организована загрузка бинарной сборки кодека с сайта компании Cisco. Сборка кодека H.264 формируется разработчиками openSUSE, заверяется официальной цифровой подписью openSUSE и передаётся для распространения компании Cisco, т.е. формирование всей начинки пакета остаются в зоне ответственности openSUSE и компания Cisco не может внести изменения или подменить пакет. Загрузка осуществляется с сайта Cisco так как право на использование запатентованных технологий сжатия видео передаётся только для сборок, которые распространяются компанией Cisco, что не позволяет разместить пакеты с OpenH264 в репозитории openSUSE.
- Добавлена возможность быстрой миграции на новую версию с прошлых выпусков и предоставлен новый инструментарий для миграции с openSUSE на SUSE Linux.
- Обновлены пользовательские приложения Vim 9, KDE Gear 22.12.3 (ранее поставлялся 21.12.2.1), LibreOffice 7.3.3, VLC 3.0.18, Firefox 102.11.0, Thunderbird 102.11.0, Wine 8.0.
- Обновлены пакеты pipewire 0.3.49, AppArmor 3.0.4, mdadm 4.2, Flatpaks 1.14.4, fwupd 1.8.6, Ugrep 3.11.0, NetworkManager 1.38.6, podman 4.4.4, CRI-O 1.22.0, containerd 1.6.19, Grafana 8.5.22, ONNX (Open Neural Network Exchange) 1.6, Prometheus 2.2.3, dpdk 19.11.10, Pagure 5.13.3, systemd 249.12, BlueZ 5.62, samba 4.15.8, QEMU 7.1, Xen 4.17, MariaDB 10.6, PostgreSQL 15, Rust 1.69.
- В состав включены пакеты для организации работы клиента и узла анонимной сети Tor (0.4.7.13).
- Версия ядра Linux не изменилась (5.14.21), но в пакет с ядром бэкпортированы исправления из более новых веток ядра.
- Предоставлен новый Python-стек, основанный на ветке Python 3.11. Пакеты с новой версией Python можно установить параллельно с системным Python, основанным на ветке Python 3.6.
- Добавлена утилита netavark 1.5 для настройки сетевой подсистемы контейнеров.
- Реализована возможность загрузки с NVMe-oF (NVM Express over Fabrics) поверх TCP, что может использоваться для создания бездисковых клиентов в SAN-окружениях на базе технологии NVMe-oF.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59259
В Asahi Linux, дистрибутиве для ARM-чипов Apple, появилась поддержка OpenGL 3.1
Разработчики проекта Asahi, нацеленного на портирование Linux для работы на компьютерах Mac, оснащённых ARM-чипами, разработанными компанией Apple, подготовили июньское обновление дистрибутива (560 МБ и 3.5 ГБ) и опубликовали отчёт о реализации в дистрибутиве поддержки OpenGL 3.1. Asahi Linux базируется на пакетной базе Arch Linux, включает традиционный набор программ и поставляется с рабочим столом KDE Plasma. Дистрибутив построен с использованием штатных репозиториев Arch Linux, а все специфичные изменения, такие как ядро, инсталлятор, загрузчик, вспомогательные скрипты и настройки окружения, вынесены в отдельный репозиторий.
Для поддержки GPU AGX чипов Apple M1 и M2 развивается два драйвера, работающих в сопряжении друг с другом:
DRM-драйвер (Direct Rendering Manager) drm-asahi для ядра Linux, написанный на языке Rust, и драйвер asahi для Mesa, написанный на языке Си. Работающий на уровне ядра драйвер изначально развивается с учётом будущей поддержки API Vulkan, а программный интерфейс для взаимодействия с пространством пользователя спроектирован с оглядкой на UAPI, предоставляемый новым драйвером Intel Xe. Так как в чипах Apple M1/M2 применяется собственный GPU, выполняющий закрытую прошивку и использующий достаточно сложные совместно используемые структуры данных, при разработке независимых драйверов применяется обратный инжиниринг драйверов из macOS.
Mesa-драйвер обеспечивает поддержку OpenGL в пространстве пользователя и теперь успешно проходит тесты совместимости с OpenGL ES 3.0 и OpenGL 3.1 (в декабре поддерживались OpenGL ES 2.0 и OpenGL 2.1), что расширило спектр игр и программ для работы с графикой, которые можно запускать в окружении Asahi Linux. В ближайшее время также планируется завершить работу по обеспечению поддержки OpenGL ES 3.1 и вычислительных шейдеров. Конечной целью проекта, которая позволит реализовать возможность запуска современных игр, является создание драйвера для графического API Vulkan, в котором планируют задействовать часть уже протестированного типового кода, используемого в драйверах для OpenGL.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59257
Релиз Firefox 114
Состоялся релиз web-браузера Firefox 114 и сформировано обновление ветки с длительным сроком поддержки - 102.12.0. На стадию бета-тестирования в ближайшее время будет переведена ветка Firefox 115, релиз которой намечен на 4 июля.
Основные новшества в Firefox 114:
- Настройки "DNS over HTTPS" перенесены из диалога настройки сети в основной раздел "Конфиденциальность и безопасность". Добавлено несколько уровней защиты на базе "DNS over HTTPS":
- по умолчанию (Firefox автоматически активирует DoH при поддержке текущим провайдером и возвращается на локальный резолвер в случае проблем);
- расширенная защита (используется выбранный провайдер DoH, но в случае проблем выполняется откат на резолвер по умолчанию);
- максимальная защита (используется только DoH и выводится предупреждение в случае отката на локальный резолвер);
- отключение DoH (используется только локальный резолвер).
- Реализован интерфейс пользователя для управления списком исключений для "DNS over HTTPS".
- Предоставлена возможность поиска закладок напрямую из меню "Закладки". Кнопку для вызова меню закладок теперь можно поместить на панель инструментов.
- Добавлена возможность выборочного поиска только в локальной истории посещений при переходе к поиску из меню History, Library или Application.
- Добавлена поддержка перегруппировки элементов в списке дополнений.
- На платформах Linux, macOS и Windows 7 предоставлена поддержка
беспарольной аутентификации с использованием USB-устройств, поддерживающих протокол FIDO2 / WebAuthn, с возможностью установки PIN-кода для активации.
- На платформе macOS добавлена возможность захвата видео с камеры во всех поддерживаемых разрешениях, включая разрешения выше 1280x720.
- Для пользователей из Франции, Италии и Испании включён вывод статей, рекомендованных сервисом Pocket. Для отключения рекомендованного Pocket контента предусмотрена настройка в конфигураторе (Firefox Home Content/Recommended by Pocket) и опция "browser.newtabpage.activity-stream.feeds.topsites" в about:config.
- Включена по умолчанию технология WebTransport, определяющая протокол и сопутствующий JavaScript API для отправки и приёма данных между браузером и сервером. Канал связи организуется поверх HTTP/3 с использованием в качестве транспорта протокола QUIC. WebTransport может применяться вместо механизмов Server Push и WebSockets, предлагая такие дополнительные возможности, как организация передачи в несколько потоков, однонаправленные потоки, доставка без учёта порядка отправки пакетов (out-of-order), надёжный и ненадёжный режимы доставки. Реализованы программные интерфейсы
WebTransport
, WebTransportBidirectionalStream
, WebTransportDatagramDuplexStream
, WebTransportReceiveStream
, WebTransportDatagramDuplexStream
и WebTransportError
.
- В API Web Worker (DedicatedWorker и SharedWorker) добавлена возможность загрузки модулей ECMAScript. Возможен как статический, так и динамический импорт модулей при помощи выражения import и синтаксиса import().
- В CSS-функции calc() разрешено указание значений "infinity", и "NaN".
- В CSS-псевдоклассе :lang() для определения кодов языка задействована семантика сопоставления строк, в которой может использоваться маска "*", вместо определения по префиксу. Добавлена поддержка списков языков, разделённых запятой.
- Добавлено CSS-свойство "-webkit-text-security", которое можно использовать для скрытия символов в полях ввода, отображая вместо них однотипные значки.
- В инструментах для web-разработчиков расширены возможности функции "Копировать как cURL" в панели отслеживания сетевой активности (добавлена поддержка опции "--compressed" в curl). Улучшен интерфейс инспектирования средств для людей с ограниченными возможностями. В панели инспектирования добавлена поддержка нового синтаксиса CSS-правила @import, определённого в спецификации CSS 4, и повышена точность отображения условий импорта.
- В версии для Android предоставлена возможность открытия диалога вывода на печать при вызове метода window.print(). Во встроенном PDF-просмотрщике добавлена кнопка для открытия PDF-документа во внешнем приложении. Снижена нагрузка на CPU фоновыми вкладками. Обеспечена более плавная анимация в панели вкладок.
Дополнительно можно отметить план по прекращению поддержки в Firefox 115 операционных систем Windows 7, 8 и 8.1, и macOS 10.12, 10.13 и 10.14. Также заявлено о прекращении 20 июня поддержки прокси-сервиса Firefox Private Network, вместо которого рекомендовано использовать Mozilla VPN.
Кроме новшеств и исправления ошибок в Firefox 114 устранено 15 уязвимостей. 14 уязвимостей помечены как опасные, из них 13 уязвимостей (собраны под CVE-2023-34416 и CVE-2023-34417) вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц. Оставшаяся опасная уязвимость CVE-2023-34414 позволяет использовать кликджекинг на страницах с ошибками сертификатов TLS.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59254
Инициатива по улучшению поддержки архитектуры RISC-V в открытом ПО
Организация Linux Foundation представила совместный проект RISE (RISC-V Software Ecosystem), целью которого заявлено форсирование разработки открытого программного обеспечения для систем на базе архитектуры RISC-V, используемых в различных областях деятельности, включая мобильные технологии, потребительскую электронику, датацентры и автомобильные информационные системы. Учредителями проекта выступили такие компании, как Red Hat, Google, Intel, NVIDIA, Qualcomm, Samsung, SiFive, Andes, Imagination Technologies, MediaTek, Rivos, T-Head и Ventana, которые выразили готовность профинансировать работу или предоставить инженерные ресурсы.
Из открытых проектов, на которых участники проекта планируют сфокусировать внимание и провести работу по улучшению поддержки RISC-V, упомянуты:
- Инструментарии и компиляторы: LLVM и GCC.
- Библиотеки: Glibc, OpenSSL, OpenBLAS, LAPACK, OneDAL, Jemalloc.
- Ядро Linux.
- Платформа Android.
- Языки и runtime: Python, OpenJDK/Java, JavaScript-движок V8.
- Дистрибутивы: Ubuntu, Debian, RHEL, Fedora и Alpine.
- Отладчики и системы профилирования: DynamoRIO и Valgrind.
- Эмуляторы и симуляторы: QEMU и SPIKE.
- Cистемные компоненты: UEFI, ACP.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59255
Выпуск uutils 0.0.19, варианта GNU Coreutils на языке Rust
Доступен выпуск проекта uutils coreutils 0.0.19, развивающего аналог пакета GNU Coreutils, переписанный на языке Rust. В состав coreutils входит более ста утилит, включая sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln и ls. Целью проекта является создание кроссплатформенной альтернативной реализации Coreutils, способной работать в том числе на платформах Windows, Redox и Fuchsia. В отличие от GNU Coreutils реализация на Rust распространяется под пермиссивной лицензией MIT, вместо копилефт-лицензии GPL.
Основные изменения:
- Улучшена совместимость с эталонным тестовым набором GNU Coreutils, при прохождении которого успешно выполнено 365 тестов (в прошлой версии 340), 186 (210) тестов завершились неудачей, а 49 (50) тестов были пропущены. В качестве эталонного задействован выпуск GNU Coreutils 9.3.
- Расширены возможности, улучшена совместимость и добавлены недостающие опции для утилит b2sum, basenc, chgrp, chown, cksum, cp,
date, dd, dircolors, du, factor, fmt, hashsum, head, ls, mkdir, mktemp, more, mv, nice, paste, pwd, rm, shred, tail, touch, uniq, wc,
whoami, yes.
- В rm и uniq решены проблемы, проявляющиеся при использовании некорректных символов UTF-8 в именах файлов и каталогов.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59250
Plane - открытая система отслеживания ошибок и управления проектами
Доступен выпуск платформы Plane 0.7, предоставляющей инструменты для управления проектами, отслеживания ошибок, планирования работ, сопровождения развития продуктов, построения списка задач и координации их выполнения. Платформа, которую можно развернуть в собственной инфраструктуре и не зависеть от сторонних поставщиков, развивается в качестве отрытого аналога таким проприетарным системам, как JIRA, Linear и Height. Проект находится на стадии разработки и готовится к формированию первого стабильного выпуска. Код написан на языке Python с использованием фреймворка Django и распространяется под лицензией Apache 2.0. В качестве СУБД используется PostgreSQL, а для быстрого хранилища - Redis. Web-интерфейс написан на TypeScript с использованием библиотеки Next.js.
Plane поддерживает различные типы рабочих процессов и позволяет отдельно отслеживать поставленные задачи (ToDo), список дел (backlog), находящиеся в работе задачи и завершённые задачи. Система рассчитана на использование каскадной (waterfall) и гибкой (agile) методик разработки проектов. В каскадной модели разработка рассматривается как непрерывный поток, последовательно проходящий стадии планирование, анализа требований, проектирования, реализации, тестирования, интеграции и поддержки. В гибкой модели разработка проекта разбивается на отдельные мелкие фракции, обеспечивающие постепенное развитие функциональности и в своей реализации проходящие типичные для разработки всего проекта стадии, такие как планирование, анализ требований, проектирование, разработка, тестирование и документирование.
Ключевые возможности Plane:
- Отслеживание ошибок и планирование работ. Поддерживается три режима просмотра - список, виртуальная карта (Kanban) и календарь. Возможна привязка работ к определённым сотрудникам. Для редактирование используется визуальный редактор с поддержкой разметки (rich text). Возможно прикрепление файлов, добавление ссылок на другие задачи, оставление комментариев и проведение обсуждений.
- Циклы разработки - период времени, в течение которого команда планирует завершить очередной этап разработки. Завершение цикла обычно приводит к формировании новой версии. В интерфейсе для циклов наглядно представлена информация о ходе разработки.
- Модули - возможность дробления крупных проектов на мелкие части, разработка которых может быть привязана разным командам и координироваться по-отдельности.
- Представления (View) - возможность фильтрации при выводе только задач и issue, имеющих значение для конкретного работника.
- Страницы - позволяет использовать AI-помощник для быстрого создания заметок и документирования проблем и планов, разобранных в процессе обсуждений.
- Универсальное меню, вызываемое при нажатии "Ctrl + K" и предоставляющее возможность быстрой навигации по всем проектам.
- Интеграция с внешними сервисами, например, доставка уведомлений через Slack и синхронизация issue с GitHub.
- Управление сотрудниками и командами. Различные уровни полномочий (владелец, администратор, участник, наблюдатель). Поддержка определения разного состояния issue для разных команд.
- Возможность изменения темы оформления и использования тёмных режимов просмотра.
Ключевые улучшения в новой версии:
- Добавлен раздел с аналитикой, позволяющий наглядно оценить работу каждого сотрудника, изучить прогресс реализации проекта и отследить динамику работы над задачами.
- Поддержка отображения графика работ в форме календарной ленточной диаграммы (график Ганта).
- Поддержка подключения собственных тем оформления, настройки стиля и цветов.
- Переделан интерфейс Циклов разработки.
- Расширена информация, отображаемая в календарном представлении.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59242
Выпуск сервера потокового вещания Owncast 0.1.0
Опубликован выпуск проекта Owncast 0.1.0, развивающего сервер для организации потокового вещания видео (стриминга, один вещает - многие смотрят) и чата с аудиторией. Сервер запускается на оборудовании пользователя и в отличие от сервисов Twitch, Facebook Live и YouTube Live, позволяет полностью контролировать процесс вещания и задавать свои правила общения в чате. Управление и взаимодействие с пользователями производится через web-интерфейс. Код проекта написан на языке Go и распространяется под лицензией MIT.
Для передачи видео на сервер может использоваться любое ПО, поддерживающее протокол RTMP, например, OBS, Streamlabs, Restream, Zoom и Jitsi. Возможна и прямая трансляция с захватом видео с web-камеры или HDMI-порта, используя FFMpeg. Сервер получает исходный видеопоток, конвертирует его в зависимости от выставленных настроек и сегментирует для передачи конечным пользователям при помощи протокола HLS (HTTP Live Streaming). Возможна генерация нескольких потоков с разным качеством и передача с адаптивным битрейтом. Для оптимизации полосы пропускания видео может передаваться пользователям, используя в качестве посредников сервисы хранения, совместимые с Amazon S3.
Новый выпуск примечателен полным переписыванием кода фронтэнда, отвечающего за отображение web-интерфейса. Новый интерфейс заметно быстрее, лучше адаптирован для мобильных устройств, поддерживает вставку своего Javascript-кода и предоставляет возможности для настройки стиля и оформления. В чате участникам предоставлена возможность смены своего цвета.
Из планов на будущее отмечается возможность создавать объединённые (federated) сети из разрозненных серверов, единая структура связей в которых образуется через применение набора протоколов ActivityPub. Также планируется добавить поддержку повторного воспроизведения ранее совершённых стримов и проведения стримов по расписанию.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59249
Обход ограничений SELinux, связанных с загрузкой модулей ядра
Выявлена возможность обхода запрета загрузки модулей ядра, реализуемого через SELinux. Блокировка модулей в SELinux основывалась на ограничении доступа к системному вызову finit_module, позволяющему загрузить модуль из файла и применяемому в таких утилитах, как insmod. При этом правила SELinux не рассматривали системный вызов init_module, который также может применяться для загрузки модулей ядра напрямую из буфера в памяти.
Для демонстрации метода подготовлен прототип эксплоита, позволяющий выполнить код на уровне ядра через загрузку своего модуля и полностью отключить защиту SELinux, при наличии ограниченного при помощи SELinux root-доступа к системе.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59248
Первый выпуск Blink, высокопроизводительного эмулятора систем x86-64
Опубликован первый значительный выпуск проекта Blink, развивающего эмулятор процессоров x86-64, позволяющий запускать статически и динамически собранные Linux-приложения в виртуальной машине с эмулируемым процессором. При помощи Blink cобранные для архитектуры x86-64 Linux-программы можно запускать в других POSIX-совместимых операционных системах (macOS, FreeBSD, NetBSD, OpenBSD, Cygwin) и на оборудовании с другой аппаратной архитектурой (x86, ARM, RISC-V, MIPS, PowerPC, s390x). Код проекта написан на языке Си (ANSI C11) и распространяется под лицензией ISC. Из зависимостей требуется только libc (POSIX.1-2017).
По функциональности Blink напоминает команду qemu-x86_64, но отличается от QEMU более компактным исполнением и значительным приростом производительности. Например, исполняемый файл Blink занимает всего 221 КБ (при урезанной сборке - 115 КБ) вместо 4 МБ у qemu-x86_64, а по производительности в некоторых тестах, таких как запуск в эмуляторе GCC и выполнение математических операций, обгоняет QEMU примерно в два раза.
Для обеспечения высокой производительности применяется JIT-компилятор, на лету преобразующий исходные инструкции в машинный код для целевой платформы. Поддерживается прямой запуск в эмуляторе исполняемых файлов в форматах ELF, PE (Portable Executables) и bin (Flat executable), собранных со стандартными Си-библиотеками Cosmopolitan, Glibc и Musl. Реализована встроенная поддержка 180 системных вызовов Linux и эмуляция около 600 процессорных инструкций x86, охватывающих наборы инструкций i8086,
i386,
SSE2,
x86_64,
SSE3,
SSSE3,
CLMUL,
POPCNT,
ADX,
BMI2 (MULX, PDEP, PEXT),
X87,
RDRND,
RDSEED и
RDTSCP.
Дополнительно на базе Blink разрабатывается утилита blinkenlights, предоставляющая интерфейс для визуализации хода выполнения программы и анализа содержимого памяти. Утилита может применяться в качестве отладчика, поддерживающего режим реверсивной отладки
(Reverse-Debugging) и позволяющего перемещаться назад в истории выполнения и возвращаться к уже ранее выполненной точке. Проект развивает автор таких разработок, как Си-библиотека Cosmopolitan, порт механизма изоляции pledge для Linux и система универсальных исполняемых файлов Redbean.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59247
Доступна платформа обмена сообщениями Zulip 7
Представлен релиз Zulip 7, серверной платформы для развёртывания корпоративных мессенджеров, подходящих для организации общения сотрудников и групп разработчиков. Проект изначально был разработан компанией Zulip и открыт после её поглощения компанией Dropbox под лицензией Apache 2.0. Код серверной части написан на языке Python с использованием фреймворка Django. Клиентское ПО доступно для Linux, Windows, macOS, Android и iOS, также предоставляется встроенный web-интерфейс.
Система поддерживает как прямой обмен сообщениями между двумя людьми, так и проведение групповых обсуждений. Zulip можно сравнить с сервисом Slack и рассматривать как внутрикорпоративный аналог Twitter, применяемый для общения и обсуждений рабочих вопросов в больших группах сотрудников. Предоставляются средства для отслеживания состояния и участия одновременно в нескольких обсуждениях с использованием нитевидной модели отображения сообщений, которая является оптимальным компромиссом между привязкой к комнатам в Slack и единым публичным пространством Twitter. Одновременное нитевидное отображение всех обсуждений позволяет в одном месте охватить все группы, при этом сохранив логическое разделение между ними.
Из возможностей Zulip также можно отметить поддержку отправки сообщений пользователю в offline-режиме (сообщения будут доставлены после появления в online), сохранение полной истории обсуждений на сервере и средства для поиска в архиве, возможность отправки файлов в режиме Drag-and-drop, автоматическую подсветку синтаксиса для передаваемых в сообщениях блоков кода, встроенный язык разметки для быстрого оформления списков и форматирования текста, средства для групповой отправки уведомлений, возможность создания закрытых групп, интеграция с Trac, Nagios, Github, Jenkins, Git, Subversion, JIRA, Puppet, RSS, Twitter и другими сервисами, средства для привязки к сообщениям наглядных меток.
Основные новшества:
- Переработано визуальное оформление и модернизирован внешний вид. В новом дизайне более активно используется выделение цветом, применяется акцентирование внимания цветом фона, наглядно выделяются персональные упоминания, упоминания групп и текущие сообщения, при помощи цвета разделяются заголовки разных каналов (stream).
Помимо информации о времени в списках добавлены линии-разделители с указанием дней (сегодня, вчера и т.п.) для более ясного понимания в какой день отправлено сообщение. Изменено оформление всплывающих блоков в интерфейсе составления и изменения сообщения. Во всплывающих подсказках улучшено представление информации о клавиатурных комбинациях.
- Добавлена возможность отправки сообщения не сразу, а в определённое время по расписанию. Например, отправку написанного ночью сообщения можно отложить до утра.
- Добавлена опция для приглушения каналов, отключающая получение уведомлений о сообщениях. При этом для отдельных тем можно вернуть уведомления, обеспечив выборочное отслеживание наиболее интересных тем в канале.
- Упрощён процесс изменения получателя при редактировании ещё не отправленного сообщения. Добавлена возможность выбора канала для отправки и переключения между прямой отправкой пользователю и отправкой в канал, не покидая интерфейс редактирования.
- Добавлены настройки автоматической пометки сообщений прочитанными после просмотра. Например, можно отключить автопометку в режиме просмотра обсуждений и помечать прочитанным только при раздельном просмотре.
- Добавлены новые клавиатурные комбинации: "z" для повышения детализации обсуждения до просмотра отдельных сообщений, "s" для перехода к обсуждению, в которое было отправлено сообщение, "=" для выставления реакции "👋".
- Изменён интерфейс настройки полномочий для перемещения сообщений. Появилась возможность определения того, кто и в течение какого времени может перемещать сообщения, независимо от прав на редактирование.
- В интерфейсе администратора реализовано открытие карты пользователя при нажатии на имени пользователя в настройках или списках подписчиков.
- В форме экспорта предоставлен выбор между форматами JSON и CSV, а также добавлены фильтры для отсеивания при экспорте отдельных получателей и сообщений с вложениями.
- Вместо термина "Приватные сообщения" теперь используется "Сообщения, отправляемые напрямую".
- Добавлена настройка, регламентирующая то, кто может видеть email, указанные при входе. Например, сопровождающие могут разрешить просмотр email другим сопровождающим, но не показывать его обычным участникам.
- Расширено число сообщений и тем, показываемых в боковой панели.
- Добавлены дополнительные запросы подтверждения для действий, требующих внимания, таких как пометка всех сообщений прочитанными, удаление последнего пользователя и отключение уведомлений.
- Обеспечена интеграция с платформой Rundeck. Улучшена интеграция с GitHub.
- Добавлена поддержка Debian 12 и PostgreSQL 15.
- Обновлены зависимости, например, фреймворк Django обновлён до версии 4.2.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59241
Релиз оконного менеджера IceWM 3.4.0
Доступен выпуск легковесного оконного менеджера IceWM 3.4.0. IceWM предоставляет полноценное управление через клавиатурные комбинации, возможность использования виртуальных рабочих столов, панели задач и меню-приложений, для группировки окон можно использовать вкладки. Оконный менеджер настраивается через достаточно простой файл конфигурации, возможно использование тем оформления. Поддерживается объединение окон в форме вкладок. Доступны встроенные апплеты для мониторинга CPU, памяти, трафика. Отдельно развивается несколько сторонних GUI для настройки, реализаций рабочего стола и редакторов меню. Код написан на языке С++ и распространяется под лицензией GPLv2.
В новой версии проведена работа по улучшению управления при помощи клавиатурных комбинаций. Добавлена поддержка использования UTF-8 в раскладке символов (code point), а также возможность привязки к кодам клавиш, меняющих значение при нажатом Shift, и символьным литералам из кодировки Latin-1. Реализовано обновление клавиатурных привязок после переключения раскладки клавиатуры.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59246
Новый JIT-компилятор Maglev позволил поднять производительность Chrome
Компания Google представила новый JIT-компилятор Maglev, постепенное включение которого начнётся для пользователей Chrome 114 5 июня. JIT-компилятор нацелен на быструю генерацию высокопроизводительного машинного кода для активно используемого кода на JavaScript. Включение Maglev позволило ускорить прохождение теста производительности Jetstream на 7.5%, а теста Speedometer на 5%.
Кроме того, упомянута общая динамика роста производительности Chrome:
- В тесте Speedometer, сосредоточенном на оценке отзывчивости браузера при работе с сайтами и измерении скорости выполнения популярных JavaScript-библиотек, показатели Chrome улучшились с 330 до 491 балла. Помимо перехода на Maglev тестирование учитывало и другие оптимизации, внесённые в выпусках за последний год (с выпуска 101), например, оптимизации вызова функций в JavaScript-движке.
- В тесте Jetstream, рассчитанном на проверку работы с продвинутыми web-приложениями на JavaScript и WebAssembly, применение Maglev позволило достигнуть показателя в 330 баллов (улучшение на 7.5%).
- В тесте MotionMark, проверяющем способность графической подсистемы браузера отрисовывать информацию с большой частотой кадров, с прошлого года показатели улучшились в три раза. С начала года разработчиками предложено более 20 оптимизаций, ускоряющих работу с графикой в Chrome, из которых половина уже включена в кодовую базу стабильных выпусков. Например, повышена производительность работы с Canvas, включены оптимизации на основе профилирования кода, улучшено планирование задач, выполняемых на стороне GPU, повышена производительности сведения слоёв (композитинга), реализован новый алгоритм динамического сглаживания MSAA (Multisample Anti-Aliasing) и обеспечен вынос растеризации 2D canvas в отдельные процессы для распараллеливания операций.
Источник: https://www.opennet.ru/opennews/art.shtml?num=59245