Vydanie systému samostatných balíkov Flatpak 1.6.0

Publikovaný nová stabilná vetva súboru nástrojov Flatpak 1.6, ktorý poskytuje systém na vytváranie samostatných balíkov, ktoré nie sú viazané na konkrétne distribúcie Linuxu a bežia v špeciálnom kontajneri, ktorý izoluje aplikáciu od zvyšku systému. Podpora pre spustenie balíkov Flatpak je poskytovaná pre Arch Linux, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint a Ubuntu. Balíky Flatpak sú zahrnuté v repozitári Fedory a sú podporované natívnym manažérom aplikácií GNOME.

Kľúč inovácie vo vetve Flatpak 1.6:

  • В API portál bola pridaná metóda CreateUpdateMonitor, ktorá umožňuje aplikáciám sledovať vzhľad aktualizácií a požadovať inštaláciu aktualizovanej aktualizácie.
    Ak chcete aplikácii odmietnuť povolenie na samostatnú inštaláciu aktualizácií, môžete použiť príkaz „flatpak povolenia-set flatpak updates $APPID no“ (ak zadáte „spýtať sa“ namiesto „nie“, zakaždým sa zobrazí dialógové okno na potvrdenie aktualizovať);


  • Pre zjednodušenie vytvárania handlerov sa navrhuje knižnica
    libportal, ktorý umožňuje spracovávať udalosti bez priameho použitia Portal API a analýzy signálov prichádzajúcich cez D-Bus.
    Libportal poskytuje jednoduché asynchrónne vrstvy pre väčšinu "portály";

  • Pridané nové povolenie "--socket=cups" na poskytovanie priameho prístupu k tlačovému serveru CUPS;
  • Zmenený protokol a API na spracovanie autentifikácie. Pridaný autentifikátor pre OCI (Open Container Initiative). Implementovaná podpora pre automatickú inštaláciu autentifikátorov z externého flatpak úložiska. Do FlatpakTransaction bol pridaný obslužný program spätného volania na používanie autentifikácie prihlásením a heslom, podobne ako pri základnej metóde autentifikácie HTTP;
  • Pridaná podpora pre chránené aplikácie a systémy, ktoré vyžadujú autentifikáciu pri štarte;
  • Bublinková vrstva použitá na izoláciu bola aktualizovaná na uvoľnenie 0.4.0;
  • Pridaná voliteľná podpora pre rodičovskú kontrolu prostredníctvom aplikácie knižnice libmalcontent, ktorý vám umožňuje obmedziť prístup k určitým typom obsahu;
  • Rozšírenia sú teraz nainštalované pred aplikáciou, čo vám umožňuje získať fungujúcu aplikáciu ihneď po dokončení jej inštalácie;
  • Boli prepracované manipulácie s dočasnými súbormi, čo zlepšilo výkon pri nedostatku voľného miesta na disku;
  • Ak chcete vykonať príkaz "flatpak vstúpiť"Už nie je potrebné používať sudo;
  • Do portálov bola pridaná možnosť spúšťať vnorené izolované prostredia (sub-sandbox) pre podradené procesy;
  • Pridané nové príkazy "flatpak permit-set" a "permission-remove" na ovládanie nastavenia povolení;
  • Pridaná možnosť „flatpak install --or-update“, ktorá vykoná aktualizáciu, ak je aplikácia už nainštalovaná;
  • Pridaný príkaz „flatpak mask“ na opravu verzie a zákaz inštalácie aktualizácií;
  • Pre obrázky vo formáte OCI (Open Container Initiative) bola pridaná podpora pre viazanie štítkov, generovanie histórie zmien v obrázku a povolenie typov mime docker okrem typov OCI mime;
  • Do nastavení bol pridaný kľúč predvolených jazykov na definovanie zoznamu používaných jazykov okrem zoznamu systému.

Pripomeňme, že Flatpak umožňuje vývojárom aplikácií zjednodušiť distribúciu ich programov, ktoré nie sú zahrnuté v štandardných distribučných archívoch. príprava jeden univerzálny kontajner bez vytvárania samostatných zostáv pre každý rozvod. Používateľom, ktorí si uvedomujú bezpečnosť, Flatpak umožňuje spustiť spornú aplikáciu v kontajneri, pričom poskytuje prístup iba k sieťovým funkciám a užívateľským súborom spojeným s aplikáciou. Používateľom, ktorí sa zaujímajú o nové produkty, Flatpak umožňuje inštalovať najnovšie testovacie a stabilné vydania aplikácií bez nutnosti vykonávať zmeny v systéme. V súčasnosti sú napríklad balíky Flatpak idú pre LibreOffice, Firefox, GIMP, Inkscape, Kdenlive, Steam, 0 AD, Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android Studio atď.

Aby sa zmenšila veľkosť balíka, obsahuje iba závislosti špecifické pre aplikáciu a základné systémové a grafické knižnice (Gtk+, Qt, GNOME a KDE knižnice atď.) sú navrhnuté ako plug-in štandardné runtime prostredia. Kľúčový rozdiel medzi Flatpak a Snap je v tom, že Snap používa komponenty hlavného systémového prostredia a izoláciu založenú na filtrovaní systémových volaní, zatiaľ čo Flatpak vytvára kontajner oddelený od systému a pracuje s veľkými runtime sadami, pričom neposkytuje balíčky ako závislosti, ale štandard. systémových prostredí (napríklad všetky knižnice potrebné na fungovanie programov GNOME alebo KDE).

Okrem štandardného prostredia systému (runtime), inštalovaného prostredníctvom špeciálneho Úložisko, sú dodávané ďalšie závislosti (bundle) potrebné na fungovanie aplikácie. Celkovo runtime a bundle tvoria náplň kontajnera, a to aj napriek tomu, že runtime je inštalované samostatne a viazané na niekoľko kontajnerov naraz, čo umožňuje vyhnúť sa duplikácii systémových súborov spoločných pre kontajnery. Jeden systém môže mať nainštalovaných niekoľko rôznych runtime (GNOME, KDE) alebo niekoľko verzií toho istého runtime (GNOME 3.26, GNOME 3.28). Kontajner s aplikáciou ako závislosťou používa väzbu len na konkrétny runtime bez toho, aby bral do úvahy jednotlivé balíky, ktoré tvoria runtime. Všetky chýbajúce prvky sú pribalené priamo k aplikácii. Keď sa vytvorí kontajner, obsah runtime sa pripojí ako oddiel /usr a zväzok sa pripojí do adresára /app.

Plnenie runtime a aplikačných kontajnerov je tvorené technológiou ostrejšie, v ktorom sa obrázok atomicky aktualizuje z úložiska podobného Gitu, čo vám umožňuje aplikovať metódy riadenia verzií na komponenty distribúcie (napríklad môžete rýchlo vrátiť systém do predchádzajúceho stavu). Balíky RPM sú preložené do úložiska OSTree pomocou špeciálnej vrstvy rpm-ostree. Samostatná inštalácia a aktualizácia balíkov v rámci pracovného prostredia nie je podporovaná, systém sa neaktualizuje na úrovni jednotlivých komponentov, ale ako celku, pričom atómovo mení svoj stav. Poskytuje nástroje na postupnú aplikáciu aktualizácií, čím sa eliminuje potreba úplne nahradiť obraz pri každej aktualizácii.

Vygenerované izolované prostredie je úplne nezávislé od použitej distribúcie a pri správnom nastavení balíka nemá prístup k súborom a procesom používateľa ani hlavného systému, nemôže priamo pristupovať k zariadeniu, s výnimkou výstupu cez DRI a sieťový subsystém. Organizácia grafického výstupu a vstupu implementovaná pomocou Wayland protokolu alebo cez X11 socket forwarding. Interakcia s externým prostredím je založená na systéme správ DBus a špeciálnom API Portals. Na izoláciu použitý medzivrstva Bublinkový obal a tradičné technológie virtualizácie kontajnerov Linuxu založené na použití cgroups, menných priestorov, Seccomp a SELinux. PulseAudio sa používa na výstup zvuku.

Zdroj: opennet.ru

Pridať komentár