Срок поддержки LTS-ядер Linux 5.4 и 4.19 увеличен до шести лет

Срок поддержки LTS-ядер Linux 5.4 и 4.19, сопровождением которых занимаются Грег Кроа-Хартман (Greg Kroah-Hartman) и Саша Левин (Sasha Levin), продлён до декабря 2025 и 2024 года соответственно. Ядро Linux 4.19 используется в Debian 10, рассматривается Google как основа для базового универсального ядра Android и поставляется в платформе Android 10, а ядро 5.4 используется в Ubuntu 20.04 LTS.

Таким образом, как и в случае ядер 3.16, 4.9, 4.4 и 4.14, ветки 5.4 и 4.19 будут поддерживаться 6 лет. Изначально указанные ядра планировалось поддерживаться 2 года (до декабря 2020 и 2021 года). Поддержка ядра Linux 3.16, выпущенного в августе 2014 года заканчивается в июне 2020 года. Ядро 4.14 будет поддерживаться до января 2024 года, 4.9 до января 2023 года, а 4.4 до февраля 2022 года. Для обычных не-LTS выпусков ядра обновления выпускаются только до выхода следующей стабильной ветки (например, обновления для ветки 5.6 выпускались до выхода 5.7).

Отдельно на базе ядер 4.4 и 4.19 организацией Linux Foundation предоставляются ветки SLTS (Super Long Term Support), которые сопровождается отдельно и будут поддерживаться 10-20 лет. Сопровождение SLTS-веток осуществляется в рамках проекта Civil Infrastructure Platform (CIP), в котором участвую такие компании, как Toshiba, Siemens, Renesas, Hitachi и MOXA, а также вовлечены мэйнтейнеры LTS-веток основного ядра, разработчики Debian и создатели проекта KernelCI. Ядра SLTS ориентированы на применение в технических системах гражданской инфраструктуры и в важных промышленных системах.

Источник: [ссылка]

В Fedora планируют предоставить возможность сборки пакетов в Clang вместо GCC

Для реализации в Fedora 33 намечено изменение правил применения компиляторов в дистрибутиве, в соответствии с которым компилятор для сборки пакета сможет выбираться в зависимости от рекомендаций и предпочтений основного проекта (upstream). В настоящее время в Fedora жёстко предписано использовать GCC для сборки всех пакетов, за исключением случаев, когда пакет может быть собран только в Clang/LLVM.

Мотивом предоставления возможности сборки при помощи Clang является то, что некоторые проекты, например, Firefox и Chromium, при разработке используют Clang в качестве основного компилятора и сборки на его основе являются более качественно протестированными. Использование Clang для подобных пакетов позволит избежать вылавливания ошибок, всплывающих при сборке в GCC, а также согласования исправлений этих ошибок с основным проектом. Сборка с использованием GCC положительно влияет на поддержании переносимости кода, развиваемого с использованием Clang, но создаёт большую нагрузку на сопровождающих и задерживает публикацию обновлений (например, Mozilla запрещает использовать торговую марку Firefox при применении сторонних патчей, поэтому приходится вначале добиваться включения патчей в основной состав и выпускать обновление только после появления исправлений в upstream).

Отмечается, что было бы логичным, использовать Clang для пакетов, для которых данный компилятор подходит лучше и используется в основном проекте. Для подобных пакетов удалось бы снизить нагрузку на сопровождение, если подготовкой пакетов занимаются представители основного проекта. Если сборкой пакета занимается представитель из сообщества, то возможность выбора компилятора предлагается предоставить мэйнтейнеру. Для пакетов, основные проекты которых не отдают предпочтение тому или иному компилятору рекомендуется сохранить статус-кво (собирать в GCC как и раньше). Автором предложения является Джеф Ло (Jeff Law) из компании Red Hat, который входит в число мэйнтейнеров GCC и Binutils.

Источник: [ссылка]

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

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

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

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

  • В пакетный менеджер Cargo интегрирована команда «cargo tree», выводящая древовидный граф зависимостей. Также добавлена опция «—duplicates» («cargo tree -d»), позволяющая оценить зависимости в разных версиях одного пакета.
         mdbook v0.3.2 (/Users/src/rust/mdbook)     ├── ammonia v3.0.0     │   ├── html5ever v0.24.0     │   │   ├── log v0.4.8     │   │   │   └── cfg-if v0.1.9     │   │   ├── mac v0.1.1     │   │   └── markup5ever v0.9.0     │   │       ├── log v0.4.8 (*)     │   │       ├── phf v0.7.24     │   │       │   └── phf_shared v0.7.24     │   │       │       ├── siphasher v0.2.3     │   │       │       └── unicase v1.4.2     │   │       │           [build-dependencies]     │   │       │           └── version_check v0.1.5     ...  
  • Для приложений, не привязанных к std («#![no_std]»), реализована поддержка методов асинхронного программирования, основанных на функции «async», блоке async move { … } и операторе «.await», которые упрощают написание обработчиков, не блокирующих основной поток команд.
  • В парсер добавлена поддержка расширяемой схемы определения иерархии модулей. Например, следующая конструкция не приведёт к выводу ошибки, несмотря на фактическое отсутствие модуля «foo/bar/baz.rs» (семантически конструкция по-прежнему недопустима и может вызвать ошибку, но изменения можно увидеть и разобрать на уровне макросов и условной компиляции):
         #[cfg(FALSE)]     mod foo {         mod bar {             mod baz;         }     }  
  • В компиляторе rustc добавлена возможность использования флага «-C codegen-units» в инкрементальном режиме. Переработана реализация catch_unwind, которая теперь не оказывает влияния на производительность, если отключён процесс «размотки» (unwinding) и не возникает исключений.
  • Обеспечен третий уровень поддержи для платформ aarch64-unknown-none, aarch64-unknown-none-softfloat, arm64-apple-tvos и x86_64-apple-tvos. Третий уровень подразумевает базовую поддержку, но без автоматизированного тестирования и публикации официальных сборок.
  • В разряд стабильных переведена новая порция API, в том числе стабилизированы PathBuf::with_capacity, PathBuf::capacity, PathBuf::clear, PathBuf::reserve, PathBuf::reserve_exact, PathBuf::shrink_to_fit, {f32|f64}::to_int_unchecked, Layout::align_to, Layout::pad_to_align, Layout::array и Layout::extend.
  • Расширены функции стандартной библиотеки:
    • Добавлен специальный вариант «vec![]», напрямую отражаемый в Vec::new(), что позволяет использовать «vec![]» в контексте вместо констант.
    • В convert::Infallible добавлена реализация (impl) типажа Hash.
    • В OsString реализованы умные указатели DerefMut и IndexMut, возвращающие «&mut OsStr».
    • Добавлена поддержка Unicode 13.
    • В String реализован From‹&mut str›.
    • В IoSlice реализован типаж Copy.
    • В Vec‹T› реализован From‹[T; N]›.
    • В proc_macro::LexError реализованы fmt::Display и Error.
  • Признак «const», определяющий возможность использования в любом контексте вместо констант, применён в методах from_le_bytes, to_le_bytes, from_be_bytes, to_be_bytes, from_ne_bytes и to_ne_bytes для всех целочисленных типов.
  • Добавлена поддержка генерации статических библиотек в формате «.a» вместо «.lib» для GNU-платформ для Windows.
  • Минимальные требования к LLVM подняты до версии LLVM 8.

Источник: [ссылка]

Разработчики FreeNAS представили дистрибутив TrueNAS SCALE на базе Linux

Компания iXsystems, развивающая дистрибутив для быстрого развёртывания сетевых хранилищ FreeNAS и основанные на нём коммерческие продукты TrueNAS, объявила о начале работы над новым открытым проектом TrueNAS SCALE. Особенностью TrueNAS SCALE стало использование ядра Linux и пакетной базе Debian 11 (Testing), в то время как все ранее выпускаемые продукты компании, в том числе TrueOS (бывший PC-BSD), основывались на FreeBSD.

Из целей создания нового дистрибутива называется расширение масшатабирования, упрощение управления инфраструктурой, применение Linux-контейнеров и ориентация на создание программно-определяемых инфраструктур. Как и во FreeNAS в TrueNAS SCALE делается ставка на файловую систему ZFS в реализации от проекта OpenZFS (в качестве эталонной реализации ZFS предлагается ZFS On Linux). В TrueNAS SCALE также будут использоваться инструменты, разрабатываемые iXsystems для FreeNAS и TrueNAS 12.

Разработка и поддержка FreeNAS, TrueNAS CORE и TrueNAS Enterprise на основе FreeBSD будет продолжена без изменений. Ключевая идея инициативы в том, что OpenZFS 2.0 будет предоставлена поддержка как Linux, так и FreeBSD, что открывает двери для экспериментов по созданию универсального инструментария для NAS, не привязанного к конкретной операционной системе, и позволяет начать экспериментировать с Linux. Применение Linux позволит реализовать некоторые идеи, недостижимые при использовании FreeBSD. В итоге решения на основе FreeBSD и Linux будут сосуществовать и дополнять друг друга, используя общую кодовую базу инструментария.

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

Напомним, что два месяца назад компания iXsystems объявила об объединении свободного дистрибутива FreeNAS с коммерческим проектом TrueNAS, расширяющем возможности FreeNAS для предприятий, а также приняла решение о прекращении развития проекта TrueOS (бывший PC-BSD). Интерсно, что в 2009 году от FreeNAS уже отделился дистрибутив OpenMediaVault, который был переведён на ядро Linux и пакетную базу Debian.

Источник: [ссылка]

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

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

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

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

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

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

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

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

  • Добавлена возможность импорта звуковых файлов, позволяющая распространять через PeerTube свои аранжировки или подкасты без создания видео-заглушки. При желании к звуковому файлу можно прикрепить изображение.
  • Усовершенствована панель поиска, в которой появились подсказки о командах для раздельного поиска каналов и видео. Например, для поиска каналов в привязке к домену предложена конструкция «@channel_id@domain».
  • В окне загрузки видео обеспечено отображение дополнительной информации о файле.
  • В меню в левой части экрана для неподключившихся пользователей добавлена кнопка «Settings», через которую можно настроить работу с PeerTube под свои предпочтения, например, указать использовать ли режим P2P и отображать ли эскизы контента для взрослых, настроить фильтры по языку, активировать автовоспроизведение и выбрать тему оформления.
  • Для загрузки видео в PeerTube теперь можно использовать интерфейс drag&drop для перемещения файла мышью вместо вызова меню «Select file». В диалоге импорта видео добавлена возможность импорта субтитров, определения лицензии и выбора языка.
  • Улучшен интерфейс редактора текста с описанием видео, поддерживающего разметку markdown. Добавлен режим полноэкранного редактирования.
  • Для администратора предложен новый интерфейс для управления дубликатами видео, позволяющий просмотреть список видео текущего узла, которые продублированы на других узлах, а также список чужих видео, продублированных на текущем узле. Для оценки занимаемого чужими дубликатами дискового пространства предложены наглядные диаграммы.
  • Улучшен интерфейс модерирования и рассмотрения жалоб на недопустимые видео. Добавлены фильтры различных типов жалоб, кнопки быстрого блокирования видео и учётных записей, обеспечено отображения эскизов на графике и добавлен быстрый доступ к встроенным видео.
  • Добавлена возможность создания плагинов с реализацией внешних методов аутентификации. Предложены три плагина для аутентификации с использованием LDAP, OpenID и SAMLv2.
  • В API добавлены вызовы для создания плагинов модерирования, выполняющих такие действия, как удаление видео, подтверждение импорта URL или торрента, скрытия узла или учётной записи и поддержание чёрного списка видео. В качестве примера предложен плагин peertube-plugin-auto-mute для автоматического скрытия учётных записей и узлов на основании списка нарушителей.
  • В email-уведомлениях предоставлена возможность использования разметки HTML.
  • В интерфейсе администратора появилась поддержка автоматического пополнения списка отслеживаемых узлов на основании подобного списка на другом узле. В том числе публичные списки узлов для импорта связей можно загружать через сервисы подобные github, gitlab и pastebin.
  • Улучшен API для управление воспроизведением встраиваемого на сайты видео. Через API можно получить сведения о длительности видео, окончании воспроизведения и субтитрах.

Источник: [ссылка]

Выпуск платформы для организации совместной работы Nextcloud Hub 19

Увидел свет новый выпуск платформы Nextcloud Hub 19, предоставляющей самодостаточное решение для организации совместной работы сотрудников предприятий и команд, развивающих различные проекты. Одновременно опубликована лежащая в основе Nextcloud Hub облачная платформа Nextcloud 19, позволяющая развернуть облачное хранилище с поддержкой синхронизации и обмена данными, предоставляющее возможность просмотра и редактирования данных с любого устройства в любой точке сети (при помощи web-интерфейса или WebDAV). Сервер Nextcloud можно развернуть на любом хостинге, поддерживающем выполнение PHP-скриптов и предоставляющем доступ к SQLite, MariaDB/MySQL или PostgreSQL. Исходные тексты Nextcloud распространяются под лицензией AGPL.

По решаемым задачам Nextcloud Hub напоминает Google Docs и Microsoft 365, но позволяет развернуть полностью контролируемую инфраструктуру совместной работы, функционирующую на своих серверах и не привязанную к внешним облачным сервисам. Nextcloud Hub объединяет в единую среду несколько открытых приложений-надстроек над облачной платформой Nextcloud, позволяющих совместно работать с офисными документами, файлами и информацией для планирования задач и мероприятий. Платформа также включает надстройки для доступа к электронной почте, обмена сообщениями, организации видеоконференций и чатов.

Аутентификация пользователей может производиться как по локальной базе, так и через интеграцию с LDAP / Active Directory, Kerberos, IMAP и Shibboleth / SAML 2.0, в том числе с применением двухфакторной аутентификации, SSO (Single-sign-on) и привязки новых систем к учётной записи по QR-коду. Версионный контроль изменений позволяет отслеживать изменения в файлах, комментариях, правилах совместного доступа и тегах.

Основные компоненты платформы Nextcloud Hub:

  • Files — организация хранения, синхронизации, совместного доступа и обмена файлами. Доступ может быть осуществлён как через Web, так и при помощи клиентского ПО для настольных и мобильных систем. Предоставляются такие расширенные возможности, как полнотекстовый поиск, прикрепление файлов при отправке комментариев, выборочный контроль доступа, создание защищённых паролем ссылок для загрузки, интеграция с внешними хранилищами (FTP, CIFS/SMB, SharePoint, NFS, Amazon S3, Google Drive, Dropbox, и т.п.).
  • Flow — оптимизирует бизнеc-процессы через автоматизацию выполнения типовых работ, таких как преобразование документов в PDF, отправка сообщений в чаты при загрузке новых файлов в определённые каталоги, автоматическое назначение тегов. Возможно создание собственных обработчиков, выполняющих действия в привязке к определённым событиям.
  • Встроенные средства совместного редактирования документов, электронных таблиц и презентаций на базе пакета ONLYOFFICE, поддерживающего форматы Microsoft Office. Обеспечена полная интеграция ONLYOFFICE c остальными компонентами платформы, например, несколько участников могут одновременно редактировать один документ, параллельно обсуждая изменения в видеочате и оставляя заметки.
  • Photos — галерея изображений, упрощающая поиск, обмен и навигацию по совместной коллекции фотографий и изображений. Поддерживается ранжирование фотографий по времени, месту, тегам и частоте просмотра.
  • Calendar — календарь-планировщик, позволяющий координировать проведение встреч, планировать чаты и видеоконференции. Предоставляется интеграция с инструментами групповой работы на базе iOS, Android, macOS, Windows, Linux, Outlook и Thunderbird. Поддерживается загрузка событий с внешних ресурсов, поддерживающих протокол WebCal.
  • Mail — совместная адресная книга и web-интерфейс для работы с электронной почтой. Возможна привязка нескольких учётных записей к одному inbox. Поддерживается шифрование писем и прикрепление цифровых подписей на базе OpenPGP. Возможна синхронизация адресной книги при помощи CalDAV.
  • Talk — система обмена сообщениями и проведения web-конференций (чат, аудио и видео). Имеется поддержка групп, возможность предоставления доступа к содержимому экрана и поддержка SIP-шлюзов для интеграции с обычной телефонией.

При подготовке нового выпуска основное внимание было уделено функциональности, упрощающей удалённую работу сотрудников на дому в условиях пандемии коронавирусной инфекции COVID-19. Ключевые новшества Nextcloud Hub 19:

  • Поддержка аутентификации без паролей, используя аппаратные токены с поддержкой U2F/FIDO2 или биометрическую аутентификацию, например, по отпечатку пальца (реализовано через API WebAuthn).
  • Администратору предоставлена возможность установки дополнительных ограничений учётных записей пользователей, включая ограничение на повторное использование паролей, автоматический выход после неактивности, автоматическую блокировку после определённого числа неудачных попыток входа и задание времени действия пароля.
  • В системе обмена сообщениями и проведения аудио/видео-конференций Talk встроены возможности для совместного редактирования документов, позволяющие вносить изменения в документ, электронную таблицу или презентацию во время видеоконференции или чата. Для начала совместной правки достаточно перетащить документ мышью в окно чата или конференции. Редактирование и загрузка документов в том числе доступна участникам с гостевыми учётными записями. Совместное редактирование реализовано на базе пакета Collabora Online.
  • Предложен новый режим отображения сетки участников («Grid»), в котором всем участникам выделены одинаковые порции экрана (в обычном режиме большая часть экрана отдаётся активному участнику, а остальные отображаются в нижней строке миниатюр).
  • Добавлены новый тип чатов для свободного общения во время перекуров, которые позиционируются как своеобразная виртуальная курилка, где можно расслабиться в перерывах, пошутить и пообщаться с коллегами на не связанные с основной работой темы.
  • Реализовано автоматическое изменение уровня качества видеовызова при изменении пропускной способности интернет-соединения. Представлен новый высокопроизводительный бэкенд для Talk, который подходит для проведения видеоокноференций с 10-50 участниками на обычном оборудовании.
  • Подготовлен новый выпуск мобильного приложения Talk для iOS и Android, в котором переработан интерфейс, добавлена возможность отправки приглашений и появилась поддержка отправки сообщений при нахождении в offline.
  • Внесены изменения, нацеленные на упрощение поиска информации и группировки имеющихся данных. Например, пользователи могут привязывать теги и комментарии к файлам, прикреплять описания к каталогам и даже добавлять списки с планами. В интерфейсе имеется возможность отслеживать недавно открытые или отредактированные файлы.
  • Проведены значительные оптимизации производительности. Скорость чтения из внешнего хранилища SFTP увеличена до 5 раз, сканирование файлов ускорено до 2.5 раз, генерация миниатюр выполняется быстрее на 25-50%. Добавлена возможность применения вызова «fseek» к файлам в хранилищах Amazon S3 и OpenStack Swift (например, можно начать воспроизведение видео без предварительной загрузки файла). Увеличен размер блока в NFS. Для SMB-разделов улучшена поддержка ACL и обеспечено автоматические скрытие каталогов, к которым у пользователя нет прав доступа.
  • В календаре-планировщике и адресной книге обеспечена интеграция с приложением планирования ведения проектов Deck. Deck реализует виртуальную карту планов (Kanban), позволяющую наглядно разместить задачи в форме карт, распределённых по секциям «в планах», «в работе» и «выполнено». Интеграция позволила привязывать события из календаря с планами и выставлять дедлайны.
  • Добавлена возможность создания гостевых учётных записей, управление которыми может быть передано администраторам групп через привязку группы к гостевому аккаунту во время его создания.

Источник: [ссылка]

В пакете с Firefox для Fedora появилась поддержка ускорения декодироваиня видео через VA-API

Мэйнтейнер пакетов с Firefox для Fedora Linux сообщил о готовности к использованию в Fedora аппаратного ускорения декодирования видео в Firefox при помощи VA-API. Ускорение пока работает только в окружениях на базе Wayland. Поддержка VA-API в Chromium была реализована в Fedora в прошлом году.

Аппаратное ускорение декодирования видео в Firefox стало возможным благодаря новому бэкенду для Wayland, который использует механизм DMABUF для отрисовки в текстуры и организации совместного использования разными процессами буферов с этими текстурами. В Fedora 32 и Fedora 31 в свежем пакете с Firefox 77 новый бэкенд по умолчанию включается при запуске в сеансе GNOME на базе Wayland, но для активации аппаратного ускорения декодирования видео дополнительно требуется установка пакетов ffmpeg, libva и libva-utils из репозитория RPM Fusion, собранных с поддержкой VA-API.

На системах с видеокартами Intel ускорение работает только с драйвером libva-intel-driver (драйвер libva-intel-hybrid-driver пока не поддерживается). Для GPU AMD ускорение работает при наличии штатной библиотеки radeonsi_drv_video.so, входящей в состав пакета mesa-dri-drivers. Для видеокарт NVIDIA поддержка пока не реализована. Для оценки поддержки VA-API драйвером можно воспользоваться утилитой vainfo. Если поддержка подтверждена, то для включения ускорения в Firefox на странице «about:config» следует установить в значение true переменные «gfx.webrender.enabled» и «widget.wayland-dmabuf-vaapi.enabled». После перезапуска браузера необходимо проверить активацию WebRender и нового бэкенда (Wayland/drm) на странице «about:support».

После этого нужно убедиться в применении VA-API для ускорения при просмотре видео (могут быть проблемы совместимости с кодеками, размерами видео и библиотеками), для чего можно включить отладочный режим, запустив Firefox c переменной окружения MOZ_LOG и проверить в выводе наличие сторк «VA-API FFmpeg init successful» и «Got one VAAPI frame output».

     MOZ_LOG="PlatformDecoderModule:5" MOZ_ENABLE_WAYLAND=1 firefox  

Применение ускорения при просмотре Youtube зависит от способа кодирования ролика (H.264, AV1 и т.п.). Посмотреть формат можно в открываемом по клику правой кнопкой мыши контекстном меню в секции «Stats for nerds». Для выбора формата, поддерживаемого системой аппаратного декодирования видео, можно использовать дополнение enhanced-h264ify.

Отдельно отмечается, что в пакеты с Firefox 77.0 для Fedora включены дополнительные патчи, влияющие на производительность и стабильность, которые отсутствуют в штатных сборках Firefox 77.0 от Mozilla. Включение данных патчей в основной состав ожидается только в Firefox 78.0 (пользователи могут использовать бета-версию Firefox 78 или ночные сборки от Mozilla, запуская браузер командой «MOZ_ENABLE_WAYLAND=1 ./firefox»). Кроме того, в сборках от Mozilla для декодирования VP8/VP9 применяется встроенная библиотека libvpx, не поддерживающая VA-API — при необходимости ускорения декодирования VP8/VP9 следует отключить libvpx, установив в about:config переменную «media.ffvpx.enabled» в значение «false» (в пакете из репозитория Fedora libvpx уже отключён).

Источник: [ссылка]

SpaceX использует Linux и обычные x86-процессоры в Falcon 9

Опубликована подборка информации о программном обеспечении, применяемом в ракете Falcon 9, основанная на отрывочных сведениях, упомянутых сотрудниками SpaceX в различных обсуждениях:

  • На бортовых системах Falcon 9 используется урезанный Linux и три дублирующие друг друга компьютера на базе обычных двухъядерных процессоров семейства x86. Применения специализированных чипов с особой радиационной защитой для компьютеров Falcon 9 не требуется, так как возвращаемая первая ступень не находится длительное время в открытом космосе и резервирования систем достаточно.

    Какой конкретно чип используется в Falcon 9 не сообщается, но использование типовых CPU обычная практика, например, на управляющий мультиплексор и демультиплексор (C&C MDM) Международной космической станции изначально был оснащён CPU Intel 80386SX 20 MHz, а в повседневной работе на МКС используется ноутбуки HP ZBook 15s с Debian Linux, Scientific Linux или Windows 10. Linux-системы применяются как удалённые терминалы к C&C MDM, а Windows для чтения электронной почты, просмотра Web и развлечений.

  • Управляющее полётом Falcon 9 ПО написано на C/C++ и запускается параллельно на каждом из трёх компьютеров. Три дублирующих компьютера необходимы для обеспечения должного уровня надёжности за счёт многократного резервирования. Результат каждого решения сравнивается с результатом, полученным на остальных компьютерах, и только при совпадении на всех трёх узлах команда принимается микроконтроллером, управляющим двигателями и решётчатыми рулями.

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

  • Специфичное ПО для бортовых систем Falcon 9, симулятор ракеты, инструментарий для тестирования кода, управляющего полётом, коммуникационный код и ПО для анализа полёта с наземных систем разработано командой, которая включает примерно 35 человек.
  • Перед фактическим запуском ПО и оборудование управления полётом проходит испытание в симуляторе, в котором моделируются различные условия полёта и внештатные ситуации.
  • В доставляемом на орбиту пилотируемом космическом корабле Crew Dragon также используется Linux и полётное ПО на C++. Интерфейс, с которым работают космонавты, реализован на базе web-приложения на JavaScript, открываемого в Chromium. Управление производится через сенсорный экран, но на случай сбоя имеется и кнопочная панель для управления космическим кораблём.

Источник: [ссылка]

Доступен Tor Browser 9.5

После шести месяцев разработки сформирован значительный релиз специализированного браузера Tor Browser 9.5, в котором продолжено развитие функциональности на базе ESR-ветки Firefox 68. Браузер сосредоточен на обеспечении анонимности, безопасности и приватности, весь трафик перенаправляется только через сеть Tor. Обратиться напрямую через штатное сетевое соединение текущей системы невозможно, что не позволяет отследить реальный IP пользователя (в случае взлома браузера, атакующие могут получить доступ к системным параметрам сети, поэтому для полного блокирования возможных утечек следует использовать такие продукты, как Whonix). Сборки Tor Browser подготовлены для Linux, Windows, macOS и Android.

Для обеспечения дополнительной защиты в состав входит дополнение HTTPS Everywhere, позволяющее использовать шифрование трафика на всех сайтах где это возможно. Для снижения угрозы от проведения атак с использованием JavaScript и блокирования по умолчанию плагинов в комплекте поставляется дополнение NoScript. Для борьбы с блокировкой и инспектированием трафика применяются fteproxy и obfs4proxy.

Для организации шифрованного канала связи в окружениях, блокирующих любой трафик кроме HTTP, предлагаются альтернативные транспорты, которые, например, позволяют обойти попытки блокировать Tor в Китае. Для защиты от отслеживания перемещения пользователя и от выделения специфичных для конкретного посетителя особенностей отключены или ограничены API WebGL, WebGL2, WebAudio, Social, SpeechSynthesis, Touch, AudioContext, HTMLMediaElement, Mediastream, Canvas, SharedWorker, Permissions, MediaDevices.enumerateDevices и screen.orientation, а также отключены средства отправки телеметрии, Pocket, Reader View, HTTP Alternative-Services, MozTCPSocket, «link rel=preconnect», модифицирован libmdns.

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

  • Реализован индикатор наличия варианта сайта, работающего в форме скрытого сервиса, выводимый в адресной строке при просмотре обычного web-сайта. При первом открытии сайта, также доступного через onion-адрес, выводится диалог с предложением впредь автоматически переключаться на onion-сайт при открытии web-сайта. Сведения о доступности через .onion-адрес передаются владельцем сайта при помощи HTTP-заголовка Alt-Svc.
  • Владельцы скрытых сервисов, желающие ограничить доступ к своим ресурсам, теперь могут задать набор ключей для контроля доступа и аутентификации. Пользователь может сохранить переданный ключ доступа на своей системе и использовать интерфейс Onion Services Authentication в «about:preferences#privacy» для управления ключами.
  • Расширены индикаторы безопасности в адресной строке. Осуществлён переход от индикации безопасного соединения к индикации проблем с безопасностью. Безопасные onion-соединения теперь не выделяются и помечаются штатным серым значком. В случае выявления недостаточного уровня защиты соединения при доступе к onion-сервису индикатор соединения перечёркивается краской линией. При выявления на странице смешанной загрузки ресурсов выводится дополнительное предупреждение в форме значка с восклицательным знаком.
  • Добавлены отдельные варианты страниц, показываемых при ошибках подключения к onion-сервисам (ранее показывались штатные страницы ошибок Firefox, такие же, что для web-сайтов). Новые страницы включают дополнительные сведения для диагностики причин невозможности подключиться к скрытому сервису, позволяющие судить о проблемах в адресе, сервисе, клиенте или сетевой инфраструктуре.
  • Для более наглядного доступа к onion-сайтам предоставлена экспериментальная возможность привязки символьных имён, решающая проблемы с запоминанием и поиском onion-адресов. Для упрощения доступа совместно с организациями FPF (Freedom of the Press Foundation) и EFF (Electronic Frontier Foundation) на базе дополнения HTTPS Everywhere реализован прототип каталога имён. В настоящее время для тестирования предложены символьные имена для onion-сервисов SecureDrop — theintercept.securedrop.tor.onion и lucyparsonslabs.securedrop.tor.onion.
  • Обновлены версии сторонних компонентов, включая NoScript 11.0.26, Firefox 68.9.0esr, HTTPS-Everywhere 2020.5.20, NoScript 11.0.26, Tor Launcher 0.2.21.8 и Tor 0.4.3.5.
  • В версии для Android обеспечен вывод предупреждения о возможной работе в обход прокси при открытии внешних приложений. Решены проблемы с использованием obfs4.

Источник: [ссылка]

Lenovo обеспечит поставку Ubuntu и RHEL на всех моделях ThinkStation и ThinkPad P

Компания Lenovo объявила о намерении предоставить возможность предустановки Ubuntu и Red Hat Enterprise Linux для всех моделей рабочих станций ThinkStation и ноутбуков ThinkPad серии «P». Начиная с этого лета любую конфигурацию устройства можно будет заказать с предустановленным Ubuntu или RHEL. Для отдельных моделей, таких как ThinkPad P53 и P1 Gen 2, в пилотном режиме будет предоставлена возможность предустановки Fedora Linux.

Все устройства будут сертифицированы для работы с данными дистрибутивами, будут полностью совместимы с ними, протестированы и станут поставляться с необходимым набором драйверов. Для обладателей устройств с предустановленным Linux будет доступен полный набор сервисов поддержки — от поставки патчей с устранением уязвимостей и обновлений системы, до проверенных и оптимизированных драйверов, прошивок и BIOS. Более того, будет вестись работа по передаче драйверов в основной состав ядра Linux, что поможет добиться первоклассной совместимости с любыми дистрибутивами Linux. Стабильность и совместимость с Linux будет поддерживаться на протяжении всего жизненного цикла устройства.

Источник: [ссылка]

Linux Mint будет блокировать скрытую от пользователя установку snapd

Разработчики дистрибутива Linux Mint заявили, что в грядущем выпуске Linux Mint 20 не будут поставлять snap-пакеты и snapd. Более того, будет запрещена автоматическая установка snapd вместе с другими пакетами, устанавливаемыми через APT. При желании вручную пользователь сможет установить snapd, но его добавление с другими пакетами без ведома пользователя будет запрещено.

Суть проблемы в том, что браузер Chromium распространяется в Ubuntu 20.04 только в формате Snap, а в DEB-репозитории размещается заглушка, при попытке установки которой в систему без спроса устанавливается Snapd, осуществляется подключение к каталогу Snap Store, загружается пакет Chromium в формате snap и запускается скрипт переноса текущих настроек из каталога $HOME/.config/chromium. Данный deb-пакет в Linux Mint будет заменён на пустой пакет, не выполняющий каких-либо действий по установке, но выводящий справку о том, где можно самостоятельно получить Chromium.

Компания Canonical перешла на поставку Chromium только в формате snap и прекратила формирование deb-пакетов из-за трудоёмкости сопровождения Chromium для всех поддерживаемых веток Ubuntu. Обновления браузера выходят достаточно часто и новые deb-пакеты приходилось каждый раз досконально тестировать на предмет возникновения регрессий для каждого выпуска Ubuntu. Применение snap существенно упростило данный процесс и дало возможность ограничиться подготовкой и тестированием только одного snap-пакета, общего для всех вариантов Ubuntu. Кроме того, поставка браузера в snap позволяет запускать его в изолированном окружении, созданном при помощи механизма AppArmor, и защитить остальную систему в случае эксплуатации уязвимости в браузере.

Недовольство Linux Mint связано с навязыванием сервиса Snap Store и с потерей контроля над пакетами в случае их установки из snap. Разработчики не могут внести исправления в подобные пакеты, управлять их доставкой и проводить аудит изменений. Вся связанная с пакетами snap активность ведётся за закрытыми дверями и не подконтрольна сообществу. Snapd выполняется в системе с правами root и представляет большую опасность в случае компрометации инфраструктуры. Возможность переключения на альтернативные каталоги Snap не предоставляется. Разработчики Linux Mint считают, что подобная модель мало чем отличается от поставки проприетарного ПО и опасаются внесения неконтролируемых изменений. Установка же snapd без ведома пользователя при попытке установки пакетов через пакетный менеджер APT сравнивается с бэкдором, подключающим компьютер к Ubuntu Store.

Источник: [ссылка]

Выпуск дистрибутива Devuan 3, форка Debian без systemd

Представлен выпуск дистрибутива Devuan 3.0 «Beowulf», форка Debian GNU/Linux, поставляемого без системного менеджера systemd. Новая ветка примечательна переходом на пакетную базу Debian 10 «Buster». Для загрузки подготовлены Live-сборки и установочные iso-образы для архитектур AMD64, i386 и ARM (armel, armhf и arm64). Специфичные для Devuan пакеты можно загрузить из репозитория packages.devuan.org.

В рамках проекта созданы ответвления около 400 пакетов Debian, которые модифицированы для избавления от привязок к systemd, ребрендинга или адаптации для особенностей инфраструктуры Devuan. Два пакета (devuan-baseconf, jenkins-debian-glue-buildenv-devuan) присутствуют только в Devuan и связаны с настройкой репозиториев и работой сборочной системы. В остальном Devuan полностью совместим с Debian и может использоваться в качестве основы для создания специализированных сборок Debian без systemd.

Рабочий стол по умолчанию основан на Xfce и дисплейном менеджере Slim. Опционально доступны для установки KDE, MATE, Cinnamon и LXQt. Вместо systemd поставляется классическая система инициализации SysVinit. Опционально предусмотрен режим работы без D-Bus, позволяющий создавать минималистичные конфигурации рабочего стола на базе оконных менеджеров blackbox, fluxbox, fvwm, fvwm-crystal и openbox. Для настройки сети предлагается вариант конфигуратора NetworkManager, не привязанный к systemd. Вместо systemd-udev задействован eudev, форк udev от проекта Gentoo. Для управления пользовательскими сеансами в KDE, Cinnamon и LXQt предлагается elogind, вариант logind, не привязанный к systemd. В Xfce и MATE используется consolekit.

Изменения, специфичные для Devuan 3.0:

  • Осуществлён переход на пакетную базу Debian 10 «Buster» (пакеты синхронизированы с Debian 10.4) и ядро Linux 4.19.
  • Добавлена поддержка архитектуры ppc64el, в дополнение к ранее поддерживаемым платформам i386, amd64, armel, armhf и arm64.
  • Предоставлена возможность опционального использования системного менеджера runit в качестве альтернативы /sbin/init.
  • Предоставлена возможность использования системы инициализации OpenRC в качестве альтернативы сервису sysv-rc и средствам управления уровнями запуска (runlevel).
  • Добавлены отдельные фоновые процессы eudev и elogind для замены монолитных компонентов systemd, отвечающих за управление файлами устройств в директории /dev, обработку операций подключения/отключения внешних устройств и управления пользовательскими сеансами.
  • Задействован новый дисплейный менеджер, изменено оформление загрузки и предложена новая тема оформления рабочего стола.

Источник: [ссылка]