Lage nan sistèm nan pakè endepandan Flatpak 1.18.0

После полутора лет разработки опубликована новая стабильная ветка инструментария Flatpak 1.18, предоставляющего систему для сборки самодостаточных пакетов, не привязанных к конкретным дистрибутивам Linux epi li egzekite nan yon veso espesyal ki izole aplikasyon an de rès sistèm nan. Sipò pou kouri pakè Flatpak yo bay pou Fedora, CentOS, Debian, Ach Linux, Gentoo, Linux Mant, Alt Linux и Ubuntu. Пакеты с Flatpak включены в репозиторий Fedora и поддерживаются в штатных программах управления приложениями GNOME и KDE.

Inovasyon kle nan branch Flatpak 1.18 la:

  • Реализована поддержка условных полномочий (conditional permission), позволяющих при запросе полномочий проверить наличие определённых возможностей в системе или в runtime. Например, при необходимости получения доступа к устройству ввода вместо «—device=all» можно запросить полномочие «—device-if=all:!has-input-device —device=input», которое предоставит доступ только к устройствам ввода или откатится на доступ ко всем устройствам если выборочное предоставление доступа не поддерживается в runtime. Аналогично можно запросить доступ к USB-устройвствам («has-usb-device» и «has-usb-portal») или совместно используемым подсистемам.
  • Разрешён доступ к устройству /dev/ntsync для обращения к
    модулю ядра NTSYNC, реализующему набор примитивов для синхронизации, применяемых в ядре Windows NT и позволяющих существенно поднять производительность Windows-jwèt yo te lanse lè l sèvi avèk Wine.
  • Для GPU Intel Xe включена поддержка API VA-API для аппаратного ускорения декодирования видео.
  • Реализована возможность доступа к устройству /dev/kfd (Kernel Fusion Driver) с использованием полномочий, предоставляемых для DRI-устройств. Драйвер kfd реализует интерфейс для прямого выполнения вычислений на GPU AMD из приложений, использующих AMD ROCm, HIP и OpenCL.
  • Добавлена поддержка использования опций командой строки для проброса доступа к каталогам в изолированные приложения.
  • Добавлена поддержка каталога «preinstall.d», определяющего список предустанавливаемых Flatpak-приложений (для включения Flatpak-приложений в состав операционной системы).
  • Разрешена прямая установка приложений из образов контейнеров в формате OCI, которые могут загружаться из собственных OCI-репозиториев и локальных архивов.
  • В команду «flatpak install —from» добавлена поддержка URI «flatpak+https://».
  • В команду «flatpak run» добавлена опция «—clear-env» для очистки переменных окружения перед запуском приложения.
  • Предоставлена возможность экспорта корневого каталога хост-окружения в изолированное окружение приложения с доступом через каталог /run/host/root.
  • Добавлена возможность вывода результата выполнения команд в формате JSON.
  • Усилена изоляция сборочного окружения — команда «flatpak build» теперь не предоставляет по умолчанию доступ к хосту.
  • Добавлена команда «reinstall» для переустановки зависимостей (bundle).
  • Настройки D-Bus по умолчанию перенесены из каталога /etc в /usr.
  • Сокращено время запуска при использовании командного интерпретатора fish.
  • В libflatpak добавлена функция для получения информации о времени создания конфигурации, что позволяет приложениям, таким как GNOME Software, определить, что прокэшированные ими данные требуют обновления.
  • Удалена сборочная опция http_backend, вместо libsoup2 для загрузки по HTTP/HTTPS задействована библиотека libcurl.
  • По умолчанию включено использование escape-последовательностей для индикации прогресса выполнения операции.
  • Разрешено передавать права доступа к устройствам во вложенные sandbox-окружения, созданные через порталы Flatpak.
  • Для приложений, поставляемых в форме OCI-образов, реализован механизм «extra-data», например, позволяющий организовать воспроизведение видео h.265 во Flatpak-пакетах Fedora Linux.
  • Добавлена поддержка сжатия зависимостей (OCI bundle) с использованием алгоритма zstd, более эффективно сжимающего данные. По умолчанию для сжатия продолжает использоваться gzip, обеспечивающий максимальную совместимость.

Flatpak упрощает распространение программ, не входящих в штатные репозитории дистрибутивов, за счёт подготовки одного универсального контейнера, избавляющего разработчиков программ от необходимости формировать отдельные сборки для каждого дистрибутива. Пользователям, заботящимся о безопасности, Flatpak даёт возможность выполнить вызывающее сомнение приложение в контейнере, предоставив выборочный доступ только к необходимым сетевым функциям и файлам пользователя. Пользователям, интересующимся новинками, Flatpak позволяет установить самые свежие тестовые и стабильные выпуски приложений без необходимости внесения изменений в систему. Например, Flatpak-пакеты собираются для LibreOffice, GIMP, Inkscape, Kdenlive, Steam, 0 A.D., Visual Studio Code, VLC, Slack, Telegram Desktop, Android Estidyo, elatriye.

Pou diminye gwosè, sèlman depandans espesifik aplikasyon yo enkli nan pake a. Sistèm debaz ak bibliyotèk grafik (GTK, Qt, GNOME ak KDE bibliyotèk, elatriye) yo apwovizyone nan fòm lan nan anviwònman estanda ploge nan ègzekutabl. Diferans kle ant Flatpak ak Snap se ke Snap sèvi ak eleman yo nan anviwònman sistèm prensipal la ak izolasyon ki baze sou apèl sistèm filtraj, pandan y ap Flatpak kreye yon veso ki separe ak sistèm nan epi opere ak seri gwo ègzekutabl, bay pa pake kòm depandans, men estanda. anviwònman sistèm nan (pa egzanp, tout bibliyotèk ki nesesè pou fonksyone pwogram GNOME oswa KDE).

Anplis de anviwònman sistèm estanda a (ejecutive), enstale atravè yon depo espesyal, depandans adisyonèl (pakèt) ki nesesè pou operasyon an nan aplikasyon an yo apwovizyone. An total, "runtime" ak "bundle" fòme sa ki nan veso a, pandan y ap "runtime" enstale separeman ak mare nan plizyè resipyan an yon fwa, ki pèmèt ou evite kopi dosye sistèm komen nan resipyan yo.

Yon sistèm ka gen plizyè diferan "runtime" enstale (GNOME, KDE) oswa plizyè vèsyon nan menm "runtime" (GNOME 50, GNOME 49). Yon veso ki gen yon aplikasyon kòm yon depandans itilize yon obligatwa sèlman nan yon tan espesifik, san yo pa pran an kont pakè endividyèl yo ki fòme ègzekutabl la chwazi. Tout eleman ki manke yo pake dirèkteman ak aplikasyon an. Lè w ap kreye yon veso, sa ki nan "runtime" yo monte kòm patisyon /usr, epi "bundle" monte nan anyè /app a.

Resipyan aplikasyon an ak egzekisyon yo bati lè l sèvi avèk teknoloji OSTree, nan ki imaj la atomikman mete ajou soti nan yon depo Git-tankou, ki pèmèt metòd kontwòl vèsyon yo dwe aplike nan eleman distribisyon (pa egzanp, ou ka byen vit retounen sistèm nan nan yon anvan. eta). Pakè RPM yo tradui nan repozitwa OSTree lè l sèvi avèk kouch rpm-ostree la.

Enstalasyon selektif ak ajou pakè nan anviwònman k ap travay la pa sipòte - se sistèm nan mete ajou pa nan nivo eleman endividyèl yo, men kòm yon antye, atomik chanje eta li yo. Ofri zouti pou aplike mizajou dezagreman, elimine nesesite pou konplètman ranplase imaj la ak chak aktyalizasyon.

Формируемое изолированное окружение не зависит от используемого дистрибутива и при надлежащих настройках пакета не имеет доступа к файлам и процессам пользователя или основной системы, а также не может напрямую обращаться к оборудованию, за исключением вывода через DRI. Вывод графики и организация ввода реализованы при помощи протокола Wayland или через проброс сокета X11. Взаимодействие с внешней средой построено через систему обмена сообщениями DBus и специальный API Portals.

Pou izolasyon, yon kouch Bubblewrap ak tradisyonèl Linux teknoloji virtualizasyon kontenè ki baze sou itilizasyon gwoup c, espas non, Seccomp ak SELinux. При создании пакета изоляция может быть отключена, чем пользуются разработчики некоторых пакетов для получения полного доступа к ФС и всем устройствам в системе.

Sous: opennet.ru

Achte hosting serye pou sit ki gen pwoteksyon DDoS, sèvè VPS VDS 🔥 Achte yon hébergement sit entènèt serye ak pwoteksyon DDoS, sèvè VPS VDS | ProHoster