ការចេញផ្សាយប្រព័ន្ធកញ្ចប់ដែលមានផ្ទុកដោយខ្លួនឯង Flatpak 1.14.0

សាខាដែលមានស្ថេរភាពថ្មីនៃកញ្ចប់ឧបករណ៍ Flatpak 1.14 ត្រូវបានបោះពុម្ព ដែលផ្តល់ប្រព័ន្ធសម្រាប់បង្កើតកញ្ចប់ដែលផ្ទុកដោយខ្លួនឯង ដែលមិនភ្ជាប់ទៅនឹងការចែកចាយលីនុចជាក់លាក់ និងដំណើរការក្នុងធុងពិសេសដែលផ្តាច់កម្មវិធីពីប្រព័ន្ធដែលនៅសល់។ ការគាំទ្រសម្រាប់ការដំណើរការកញ្ចប់ Flatpak ត្រូវបានផ្តល់ជូនសម្រាប់ Arch Linux, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint, Alt Linux និង Ubuntu ។ កញ្ចប់ Flatpak ត្រូវបានរួមបញ្ចូលនៅក្នុងឃ្លាំង Fedora ហើយត្រូវបានគាំទ្រដោយអ្នកគ្រប់គ្រងកម្មវិធី 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 អនុញ្ញាតឱ្យអ្នកដំឡើងកម្មវិធីសាកល្បងចុងក្រោយបំផុត និងការចេញផ្សាយប្រកបដោយស្ថេរភាពដោយមិនចាំបាច់ធ្វើការផ្លាស់ប្តូរប្រព័ន្ធ។ ឧទាហរណ៍ កញ្ចប់ 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)។ កុងតឺន័រដែលមានកម្មវិធីជាភាពអាស្រ័យប្រើការចងតែមួយទៅនឹងរយៈពេលដំណើរការជាក់លាក់មួយ ដោយមិនគិតពីកញ្ចប់នីមួយៗដែលបង្កើតរយៈពេលដំណើរការ។ ធាតុដែលបាត់ទាំងអស់ត្រូវបានខ្ចប់ដោយផ្ទាល់ជាមួយកម្មវិធី។ នៅពេលដែលកុងតឺន័រត្រូវបានបង្កើតឡើង មាតិកាពេលដំណើរការត្រូវបានម៉ោនជាភាគថាស /usr ហើយកញ្ចប់ត្រូវបានម៉ោននៅក្នុងថត /app ។

រយៈពេលដំណើរការ និងធុងកម្មវិធីត្រូវបានសាងសង់ដោយប្រើបច្ចេកវិទ្យា OSTree ដែលរូបភាពត្រូវបានធ្វើបច្ចុប្បន្នភាពតាមអាតូមពីឃ្លាំងដូច Git ដែលអនុញ្ញាតឱ្យវិធីសាស្ត្រត្រួតពិនិត្យកំណែត្រូវបានអនុវត្តចំពោះសមាសធាតុចែកចាយ (ឧទាហរណ៍ អ្នកអាចបង្វិលប្រព័ន្ធឡើងវិញយ៉ាងលឿនទៅ រដ្ឋមុន) ។ កញ្ចប់ RPM ត្រូវបានបកប្រែទៅក្នុងឃ្លាំង OSTree ដោយប្រើស្រទាប់ពិសេស rpm-ostree ។ ការដំឡើងដាច់ដោយឡែក និងការអាប់ដេតកញ្ចប់នៅក្នុងបរិយាកាសការងារមិនត្រូវបានគាំទ្រទេ ប្រព័ន្ធនេះត្រូវបានធ្វើបច្ចុប្បន្នភាពមិនមែននៅកម្រិតនៃសមាសធាតុនីមួយៗទេ ប៉ុន្តែទាំងមូល ផ្លាស់ប្តូរស្ថានភាពរបស់វាដោយអាតូម។ ផ្តល់ឧបករណ៍ដើម្បីអនុវត្តការអាប់ដេតជាបន្តបន្ទាប់ ដោយលុបបំបាត់តម្រូវការដើម្បីជំនួសរូបភាពទាំងស្រុងជាមួយនឹងការអាប់ដេតនីមួយៗ។

បរិយាកាសដាច់ស្រយាលដែលបានបង្កើតគឺឯករាជ្យទាំងស្រុងពីការចែកចាយដែលបានប្រើ ហើយជាមួយនឹងការកំណត់ត្រឹមត្រូវនៃកញ្ចប់នោះ មិនមានសិទ្ធិចូលប្រើឯកសារ និងដំណើរការរបស់អ្នកប្រើ ឬប្រព័ន្ធមេ មិនអាចចូលប្រើឧបករណ៍ដោយផ្ទាល់បានទេ លើកលែងតែលទ្ធផលតាមរយៈ DRI ។ និងការហៅទៅកាន់ប្រព័ន្ធរងបណ្តាញ។ លទ្ធផលក្រាហ្វិក និងអង្គការបញ្ចូលត្រូវបានអនុវត្តដោយប្រើពិធីការ Wayland ឬតាមរយៈការបញ្ជូនបន្តរន្ធ X11 ។ អន្តរកម្មជាមួយបរិស្ថានខាងក្រៅគឺផ្អែកលើប្រព័ន្ធផ្ញើសារ DBus និង Portals API ពិសេស។

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

ប្រភព: opennet.ru

បន្ថែមមតិយោបល់