Нашри системаи бастаи мустақили Flatpak 1.12.0

Филиали нави устувори маҷмӯаи абзори Flatpak 1.12 нашр шуд, ки системаи сохтани бастаҳои мустақилро таъмин мекунад, ки ба тақсимоти мушаххаси Linux алоқаманд нестанд ва дар як контейнери махсус кор мекунанд, ки барномаро аз боқимондаи система ҷудо мекунад. Дастгирии иҷро кардани бастаҳои Flatpak барои Arch Linux, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint, Alt Linux ва Ubuntu дода мешавад. Бастаҳои Flatpak ба анбори Fedora дохил карда шудаанд ва аз ҷониби менеҷери барномаҳои аслии GNOME дастгирӣ карда мешаванд.

Навовариҳои асосӣ дар филиали Flatpak 1.12:

  • Идоракунии мукаммали муҳитҳои қуттии лонае, ки дар бастаи flatpak бо муштарӣ барои хидмати таҳвили бозии Steam истифода мешавад. Дар қуттиҳои лона гузошташуда эҷоди иерархияҳои алоҳидаи директорияҳои /usr ва /app иҷозат дода мешавад, ки он дар Steam барои оғоз кардани бозиҳо дар як контейнери алоҳида бо қисмати /usr худ, ки аз муҳити атроф бо муштарии Steam ҷудо карда шудааст, истифода мешавад.
  • Ҳама намунаҳои бастаҳо бо як идентификатори барнома (app-ID) директорияҳои /tmp ва $XDG_RUNTIME_DIR -ро мубодила мекунанд. Ихтиёрӣ, бо истифода аз парчами “--allow=per-app-dev-shm”, шумо метавонед истифодаи феҳристи муштараки /dev/shm-ро фаъол созед.
  • Дастгирии мукаммал барои замимаҳои интерфейси корбари матн (TUI) ба монанди gdb.
  • Татбиқи зудтари фармони "ostree prune" ба утилитаи build-update-repo илова карда шуд, ки барои кор бо репозиторийҳо дар реҷаи бойгонӣ оптимизатсия шудааст.
  • Осебпазирии CVE-2021-41133 дар татбиқи механизми портал, ки бо баста нашудани зангҳои нави система вобаста ба васлкунии қисмҳо дар қоидаҳои seccomp алоқаманд аст, ислоҳ карда шуд. Ин осебпазирӣ ба барнома имкон дод, ки қуттии лонаро эҷод кунад, то механизмҳои санҷиши “портал”-ро, ки барои ташкили дастрасӣ ба захираҳои берун аз контейнер истифода мешаванд, гузарад.

    Дар натиҷа, ҳамлагар бо анҷом додани зангҳои системаи вобаста ба васлкунӣ метавонад механизми ҷудокунии қуттии қумро гузарад ва дастрасии пурра ба мундариҷаи муҳити мизбонро ба даст орад. Аз осебпазирӣ танҳо дар бастаҳое истифода бурдан мумкин аст, ки барномаҳоро бо дастрасии мустақим ба розеткаҳои AF_UNIX таъмин мекунанд, ба монанди онҳое, ки аз ҷониби Wayland, Pipewire ва pipewire-pulse истифода мешаванд. Дар версияи 1.12.0 осебпазирӣ пурра бартараф карда нашуд, аз ин рӯ навсозии 1.12.1 дар пошнаи худ гарм бароварда шуд.

Ёдовар мешавем, ки 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 бо истифода аз қабати махсуси rpm-ostree ба анбори OSTree тарҷума карда мешаванд. Насбкунӣ ва навсозии бастаҳо дар муҳити корӣ дастгирӣ карда намешавад, система на дар сатҳи ҷузъҳои алоҳида, балки дар маҷмӯъ ҳолати худро ба таври атомӣ тағир медиҳад. Воситаҳоро барои тадриҷан татбиқ кардани навсозиҳо таъмин намуда, зарурати пурра иваз кардани тасвирро бо ҳар як навсозӣ аз байн мебарад.

Муҳити ҷудошудаи тавлидшуда аз тақсимоти истифодашуда комилан мустақил аст ва бо танзимоти дурусти баста ба файлҳо ва равандҳои корбар ё системаи асосӣ дастрасӣ надорад, ба таҷҳизот мустақиман дастрасӣ надорад, ба истиснои баромад тавассути DRI, ва зангҳо ба зерсистемаи шабака. Натиҷаи графикӣ ва ташкили вуруд бо истифода аз протоколи Wayland ё тавассути интиқоли васлаки X11 амалӣ карда мешавад. Муносибат бо муҳити беруна ба системаи паёмнависии DBus ва API махсуси Portals асос ёфтааст.

Барои ҷудокунӣ, қабати Bubblewrap ва технологияҳои анъанавии виртуализатсияи контейнерҳои Linux, ки дар асоси истифодаи гурӯҳҳо, фазоҳои номҳо, Seccomp ва SELinux истифода мешаванд. PulseAudio барои баровардани садо истифода мешавад. Дар ин ҳолат изолятсияро ғайрифаъол кардан мумкин аст, ки онро таҳиягарони бастаҳои маъмул барои дастрасии пурра ба системаи файлӣ ва ҳамаи дастгоҳҳои система истифода мебаранд. Масалан, GIMP, VSCodium, PyCharm, Octave, Inkscape, Audacity ва VLC бо режими маҳдуди изолятсия омадаанд, ки дастрасии пурраро ба феҳристи хонагӣ мегузорад.

Агар бастаҳои дорои дастрасӣ ба феҳристи хонагӣ осеб диданд, сарфи назар аз мавҷудияти тамғаи "қуттии қумӣ" дар тавсифи баста, ҳамлакунанда танҳо бояд файли ~/.bashrc-ро барои иҷрои коди худ иваз кунад. Масъалаи алоҳида ин назорати тағирот ба бастаҳо ва эътимод ба созандагони бастаҳо мебошад, ки аксар вақт бо лоиҳаи асосӣ ё тақсимот алоқаманд нестанд.

Манбаъ: opennet.ru

Илова Эзоҳ