מעלדונג פון Flatpak 1.14.0 זיך-קאַנטיינד פּעקל סיסטעם

א נייַע סטאַביל צווייַג פון די Flatpak 1.14 טאָאָלקיט איז ארויס, וואָס גיט אַ סיסטעם פֿאַר בויען זיך-קאַנטיינד פּאַקאַדזשאַז וואָס זענען נישט טייד צו ספּעציפיש לינוקס דיסטריביושאַנז און לויפן אין אַ ספּעציעל קאַנטיינער וואָס יזאָלייץ די אַפּלאַקיישאַן פון די רעשט פון די סיסטעם. שטיצן פֿאַר פליסנדיק פלאַטפּאַק פּאַקאַדזשאַז איז צוגעשטעלט פֿאַר Arch Linux, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint, Alt Linux און Ubuntu. פלאַטפּאַק פּאַקאַדזשאַז זענען אַרייַנגערעכנט אין די פעדאָראַ ריפּאַזאַטאָרי און זענען געשטיצט דורך די געבוירן GNOME אַפּלאַקיישאַן פאַרוואַלטער.

שליסל ינאָווויישאַנז אין די Flatpak 1.14 צווייַג:

  • Обеспечено создание каталога для файлов в состоянием (.local/state) и выставление указывающей на этот каталог переменной окружения XDG_STATE_HOME.
  • Добавлены условные проверки вида «have-kernel-module-имя» для определения наличия модулей ядра (универсальный аналог ранее предлагаемой проверке have-intel-gpu, вместо которой теперь можно использовать выражение «have-kernel-module-i915»).
  • Реализована команда «flatpak document-unexport —doc-id=…».
  • Обеспечен экспорт метаданных Appstream для использования в основном окружении.
  • Добавлены правила автодополнения команд flatpak для командной оболочки Fish
  • Разрешён сетевой доступ к сервисам X11 и PulseAudio (при добавлении соответствующих настроек).
  • Основная ветка в Git-репозитории переименована с «master» на «main», так как слово «master» считается последнее время неполиткорректным.
  • Обеспечена перезапись скриптов запуска в случае переименования приложения.
  • В команду install добавлены опции «—include-sdk» и «—include-debug» для установки SDK и файлов debuginfo.
  • В файлы flatpakref и flatpakrepo добавлена поддержка параметра «DeploySideloadCollectionID», при установке которого идентификатор коллекции будет выставлен во время добавления удалённого репозитория, а не после загрузки метаданных.
  • Разрешено создание вложенных sandbox-окружений для обработчиков в сеансах с отдельными именами MPRIS (Media Player Remote Interfacing Specification).
  • В утилитах командной строки обеспечен вывод сведений об использовании устаревших runtime-расширений.
  • В команде uninstall реализован запрос подтверждения перед удалением runtime или runtime-расширений, которые ещё используются.
  • В команды подобные «flatpak run» добавлена поддержка опции «—socket=gpg-agent».
  • В libostree устранена уязвимость, потенциально позволяющая пользователю удалить произвольные файлы в системе через манипуляции с обработчиком flatpak-system-helper (отправке запроса на удаление со специально оформленным именем ветки). Проблема проявляется только в старых версиях Flatpak и libostree, выпущенных до 2018 года (< 0.10.2), и не затрагивает актуальные выпуски.

זאל אונדז דערמאָנען איר אַז Flatpak אַלאַוז אַפּלאַקיישאַן דעוועלאָפּערס צו פאַרפּאָשעטערן די פאַרשפּרייטונג פון זייער מגילה וואָס זענען נישט אַרייַנגערעכנט אין די נאָרמאַל פאַרשפּרייטונג ריפּאַזאַטאָריז דורך פּריפּערינג איין וניווערסאַל קאַנטיינער אָן קריייטינג באַזונדער אַסעמבליז פֿאַר יעדער פאַרשפּרייטונג. פֿאַר זיכערהייט-באַוווסטזיניק יוזערז, Flatpak אַלאַוז איר צו לויפן אַ פּראָבלעמאַטיש אַפּלאַקיישאַן אין אַ קאַנטיינער, און צושטעלן אַקסעס בלויז צו די נעץ פאַנגקשאַנז און באַניצער טעקעס פארבונדן מיט די אַפּלאַקיישאַן. פֿאַר יוזערז אינטערעסירט אין נייַע פּראָדוקטן, Flatpak אַלאַוז איר צו ינסטאַלירן די לעצטע פּראָבע און סטאַביל ריליסיז פון אַפּלאַקיישאַנז אָן די נויט צו מאַכן ענדערונגען צו די סיסטעם. פֿאַר בייַשפּיל, פלאַטפּאַק פּאַקאַדזשאַז זענען געבויט פֿאַר LibreOffice, Midori, GIMP, Inkscape, Kdenlive, Steam, 0 AD, Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android Studio, עטק.

צו רעדוצירן די פּעקל גרייס, עס ינקלודז בלויז אַפּלאַקיישאַן-ספּעציפיש דיפּענדאַנסיז, און די יקערדיק סיסטעם און גראַפיקס לייברעריז (GTK, Qt, GNOME און KDE לייברעריז, אאז"ו ו) זענען דיזיינד ווי צאַפּן-אין נאָרמאַל רונטימע ינווייראַנמאַנץ. דער שליסל חילוק צווישן Flatpak און Snap איז אַז Snap ניצט די קאַמפּאָונאַנץ פון די הויפּט סיסטעם סוויווע און אפגעזונדערטקייט באזירט אויף פֿילטרירונג סיסטעם קאַללס, בשעת Flatpak קריייץ אַ קאַנטיינער באַזונדער פון די סיסטעם און אַפּערייץ מיט גרויס רונטימע שטעלט, און צושטעלן ניט פּאַקאַדזשאַז ווי דיפּענדאַנסיז, אָבער נאָרמאַל. די סיסטעם ינווייראַנמאַנץ (למשל, אַלע לייברעריז נייטיק פֿאַר די אָפּעראַציע פון ​​GNOME אָדער KDE מגילה).

אין אַדישאַן צו די נאָרמאַל סיסטעם סוויווע (רונטימע), אינסטאַלירן דורך אַ ספּעציעל ריפּאַזאַטאָרי, נאָך דיפּענדאַנסיז (בינדלעך) פארלאנגט פֿאַר די אָפּעראַציע פון ​​די אַפּלאַקיישאַן זענען סאַפּלייד. אין גאַנץ, רונטימע און פּעקל פאָרעם די פילונג פון דעם קאַנטיינער, טראָץ דער פאַקט אַז רונטימע איז אינסטאַלירן סעפּעראַטלי און טייד צו עטלעכע קאַנטיינערז אין אַמאָל, וואָס אַלאַוז איר צו ויסמיידן דופּליקייטינג סיסטעם טעקעס פּראָסט צו קאַנטיינערז. איין סיסטעם קענען האָבן עטלעכע פאַרשידענע רונטימע אינסטאַלירן (GNOME, KDE) אָדער עטלעכע ווערסיעס פון דער זעלביקער רונטימע (GNOME 3.40, GNOME 3.42). א קאַנטיינער מיט אַ אַפּלאַקיישאַן ווי אַ דעפּענדענסי ניצט אַ ביינדינג בלויז צו אַ ספּעציפיש רונטימע, אָן גענומען אין חשבון די יחיד פּאַקאַדזשאַז וואָס מאַכן די רונטימע. אַלע פעלנדיק עלעמענטן זענען פּאַקידזשד גלייַך מיט די אַפּלאַקיישאַן. ווען אַ קאַנטיינער איז געשאפן, די רונטימע אינהאַלט איז מאָונטעד ווי די / וסר צעטיילונג, און דער פּעקל איז מאָונטעד אין די / אַפּ וועגווייַזער.

די רונטימע און אַפּלאַקיישאַן קאַנטיינערז זענען געבויט מיט OSTree טעכנאָלאָגיע, אין וואָס די בילד איז אַטאָמישע דערהייַנטיקט פֿון אַ גיט-ווי ריפּאַזאַטאָרי, וואָס אַלאַוז ווערסיע קאָנטראָל מעטהאָדס צו זיין געווענדט צו די פאַרשפּרייטונג קאַמפּאָונאַנץ (למשל, איר קענען געשווינד צוריק די סיסטעם צו אַ פריערדיקן שטאַט). רפּם פּאַקאַדזשאַז זענען איבערגעזעצט אין די OSTree ריפּאַזאַטאָרי ניצן אַ ספּעציעל רפּם-אָסטרעע שיכטע. באַזונדער ייַנמאָנטירונג און דערהייַנטיקן פון פּאַקאַדזשאַז אין די אַרבעט סוויווע איז נישט געשטיצט; די סיסטעם איז דערהייַנטיקט ניט אויף דער מדרגה פון יחיד קאַמפּאָונאַנץ, אָבער ווי אַ גאַנץ, אַטאָמישע טשאַנגינג זייַן שטאַט. פּראָווידעס מכשירים צו צולייגן דערהייַנטיקונגען ינקראַמענטאַלי, ילימאַנייטינג די נויט צו גאָר פאַרבייַטן די בילד מיט יעדער דערהייַנטיקן.

די דזשענערייטאַד אפגעזונדערט סוויווע איז גאָר אומאָפּהענגיק פון די פאַרשפּרייטונג געניצט און, מיט געהעריק סעטטינגס פון די פּעקל, האט נישט אַקסעס צו טעקעס און פּראַסעסאַז פון די באַניצער אָדער די הויפּט סיסטעם, קענען נישט גלייַך אַקסעס די ויסריכט, מיט די ויסנעם פון פּראָדוקציע דורך DRI, און רופט צו די נעץ סאַבסיסטאַם. גראַפיקס רעזולטאַט און אַרייַנשרייַב אָרגאַניזאַציע זענען ימפּלאַמענאַד מיט די Wayland פּראָטאָקאָל אָדער דורך X11 כאָלעל פאָרווערדינג. ינטעראַקשאַן מיט די פונדרויסנדיק סוויווע איז באזירט אויף די דבוס מעסידזשינג סיסטעם און אַ ספּעציעל פּאָרטאַלס ​​אַפּי.

Для изоляции используется прослойка Bubblewrap и традиционные для Linux технологии контейнерной виртуализации, основанные на использовании cgroups, пространств имён (namespaces), Seccomp и SELinux. Для вывода звука применяется PulseAudio. При этом изоляция может быть отключена, чем пользуются разработчики многих популярных пакетов для получения полного доступа к ФС и всем устройствам в системе. Например, с ограниченным режимом изоляции, оставляющим полный доступ к домашнему каталогу, поставляются пакеты GIMP, VSCodium, PyCharm, Octave, Inkscape, Audacity и VLC. В случае компрометации пакетов с доступом к домашнему каталогу, несмотря на наличие в описании пакета метки «sandboxed», атакующему для выполнения своего кода достаточно изменить файл ~/.bashrc. Отдельным вопросом является контроль за внесением изменений в пакеты и доверие к сборщикам пакетов, которые часто не связаны с основным проектом или дистрибутивами.

מקור: opennet.ru

לייגן אַ באַמערקונג