Lëshimi i sistemit të paketave të pavarura Flatpak 1.6.0

Publikuar degë e re e veglave stabile Flatpack 1.6, i cili ofron një sistem për ndërtimin e paketave të pavarura që nuk janë të lidhura me shpërndarje specifike Linux dhe funksionojnë në një kontejner të veçantë që izolon aplikacionin nga pjesa tjetër e sistemit. Mbështetja për ekzekutimin e paketave Flatpak ofrohet për Arch Linux, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint dhe Ubuntu. Paketat Flatpak përfshihen në depon e Fedora-s dhe mbahen në Menaxherin e aplikacionit të GNOME.

Celës risitë në degën Flatpak 1.6:

  • В Portali API është shtuar metoda CreateUpdateMonitor, duke i lejuar aplikacionet të monitorojnë pamjen e përditësimeve dhe të kërkojnë instalimin e përditësimit të përditësuar.
    Për të mohuar lejen që një aplikacion të instalojë përditësime në mënyrë të pavarur, mund të përdorni komandën "flatpak permission-set flatpak updates $APPID no" (nëse specifikoni "pyet" në vend të "jo", një dialog do të shfaqet çdo herë për të konfirmuar përditësimi);


  • Për të thjeshtuar krijimin e mbajtësve, propozohet një bibliotekë
    libportal, i cili bën të mundur përpunimin e ngjarjeve pa përdorur drejtpërdrejt API-në e Portalit dhe analizimin e sinjaleve që vijnë përmes D-Bus.
    Libportal ofron shtresa të thjeshta asinkrone për shumicën "portaleve";

  • U shtua leje e re "--socket=kupa" për të ofruar akses të drejtpërdrejtë në serverin e printimit CUPS;
  • Ndryshoi protokollin dhe API-në për trajtimin e vërtetimit. Vërtetuesi i shtuar për OCI (Open Container Initiative). Mbështetje e zbatuar për instalimin automatik të autentikuesve nga depoja e jashtme e flatpak. FlatpakTransaction i është shtuar një mbajtës i kthimit të thirrjes për të përdorur vërtetimin e hyrjes dhe fjalëkalimit, ngjashëm me metodën bazë të vërtetimit HTTP;
  • Mbështetje e shtuar për aplikacionet dhe sistemet e mbrojtura që kërkojnë vërtetim pas nisjes;
  • Shtresa e mbështjelljes me flluska e përdorur për izolim është përditësuar për t'u çliruar 0.4.0;
  • U shtua mbështetje opsionale për kontrollet prindërore nëpërmjet aplikacionit të bibliotekës libmalpërmbajtje, i cili ju lejon të kufizoni aksesin në lloje të caktuara të përmbajtjes;
  • Shtesat janë instaluar tani përpara aplikacionit, duke ju lejuar të merrni një aplikacion funksional menjëherë pasi të përfundojë instalimi i tij;
  • Manipulimet me skedarë të përkohshëm janë ripunuar, gjë që ka përmirësuar performancën kur ka mungesë të hapësirës së lirë në disk;
  • për të ekzekutuar komandën "flatpak hyj"Nuk kërkohet më të përdoret sudo;
  • Mundësia për të nisur mjedise të izoluara të mbivendosur (nën-sandbox) për proceset e fëmijëve është shtuar në portalet;
  • U shtuan komandat e reja "flatpak permission-set" dhe "permission-remove" për të kontrolluar vendosjen e lejeve;
  • U shtua opsioni “flatpak install --or-update”, i cili kryen një përditësim nëse aplikacioni është tashmë i instaluar;
  • Shtoi komandën "flatpak mask" për të rregulluar versionin dhe për të ndaluar instalimin e përditësimeve;
  • Për imazhet në formatin OCI (Open Container Initiative), është shtuar mbështetje për lidhjen e etiketave, duke gjeneruar një histori ndryshimesh në imazh dhe duke mundësuar llojet e mimave docker, përveç llojeve të mimave OCI;
  • Çelësi i paracaktuar i gjuhëve është shtuar në cilësimet për të përcaktuar listën e gjuhëve të përdorura, përveç listës së sistemit.

Kujtojmë se Flatpak bën të mundur që zhvilluesit e aplikacioneve të thjeshtojnë shpërndarjen e programeve të tyre që nuk përfshihen në depot e rregullta të shpërndarjes, për shkak të përgatitjet një enë universale pa krijuar asamble të veçanta për secilën shpërndarje. Për përdoruesit e ndërgjegjshëm për sigurinë, Flatpak ju lejon të ekzekutoni një aplikacion të dyshimtë në një kontejner, duke siguruar akses vetëm në funksionet e rrjetit dhe skedarët e përdoruesit të lidhur me aplikacionin. Për përdoruesit e interesuar për produkte të reja, Flatpak ju lejon të instaloni testet më të fundit dhe lëshimet e qëndrueshme të aplikacioneve pa pasur nevojë të bëni ndryshime në sistem. Për shembull, aktualisht paketat Flatpak janë tashmë janë duke shkuar për LibreOffice, Firefox, GIMP, Inkscape, Kdenlive, Steam, 0 AD, Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android Studio, etj.

Për të reduktuar madhësinë e paketës, ajo përfshin vetëm varësi specifike të aplikacionit, dhe bibliotekat bazë të sistemit dhe grafike (bibliotekat Gtk +, Qt, GNOME dhe KDE, etj.) janë projektuar si mjedise tipike të kohës së funksionimit të mundshëm. Dallimi kryesor midis Flatpak dhe Snap është se Snap përdor përbërësit e mjedisit kryesor të sistemit dhe izolimin bazuar në filtrimin e thirrjeve të sistemit, ndërsa Flatpak krijon një kontejnerë të ndarë nga sistemi dhe funksionon me grupe të mëdha kohëzgjatjeje, duke ofruar paketa tipike dhe jo paketa si varësi. mjediset e sistemit (për shembull, të gjitha bibliotekat e nevojshme për ekzekutimin e programeve GNOME ose KDE).

Përveç mjedisit tipik të sistemit (runtime), i instaluar përmes një speciale depo, ofrohen varësi (pako) shtesë që kërkohen për funksionimin e aplikacionit. Në total, koha e funksionimit dhe paketa formojnë mbushjen e kontejnerit, ndërsa koha e funksionimit instalohet veçmas dhe lidhet me disa kontejnerë njëherësh, gjë që bën të mundur shmangien e dyfishimit të skedarëve të sistemit të zakonshëm për kontejnerët. Një sistem mund të ketë të instaluar disa periudha të ndryshme ekzekutimi (GNOME, KDE) ose disa versione të së njëjtës kohë ekzekutimi (GNOME 3.26, GNOME 3.28). Një kontejner me një aplikacion si varësi përdor lidhjen vetëm për një kohë të caktuar ekzekutimi, pa marrë parasysh paketat individuale që përbëjnë kohën e ekzekutimit. Të gjithë artikujt që mungojnë paketohen drejtpërdrejt me aplikacionin. Kur formohet kontejneri, përmbajtja e kohës së ekzekutimit montohet si ndarje /usr dhe pakoja montohet në drejtorinë /app.

Mbushja e kontejnerëve të kohës së funksionimit dhe aplikimit është formuar duke përdorur teknologjinë OSTree, në të cilën imazhi përditësohet në mënyrë atomike nga një depo e ngjashme me Git, e cila ju lejon të aplikoni metodat e kontrollit të versionit në komponentët e shpërndarjes (për shembull, mund ta ktheni shpejt sistemin në një gjendje të mëparshme). Paketat RPM përkthehen në depon e OSTree duke përdorur një shtresë të veçantë rpm-ostree. Instalimi dhe përditësimi i veçantë i paketave brenda mjedisit të punës nuk mbështetet, sistemi përditësohet jo në nivelin e përbërësve individualë, por në tërësi, duke ndryshuar atomikisht gjendjen e tij. Ofrohen mjete për të aplikuar përditësimet gradualisht, duke eliminuar nevojën për të zëvendësuar plotësisht imazhin me çdo përditësim.

Mjedisi i izoluar i gjeneruar është plotësisht i pavarur nga shpërndarja e përdorur dhe me cilësimet e duhura të paketës, nuk ka akses në skedarët dhe proceset e përdoruesit ose sistemit kryesor, nuk mund të aksesojë drejtpërdrejt pajisjen, me përjashtim të daljes nëpërmjet DRI, dhe nënsistemi i rrjetit. Organizimi i daljes dhe hyrjes grafike zbatuar duke përdorur protokollin Wayland ose përmes përcjelljes së prizës X11. Ndërveprimi me mjedisin e jashtëm është ndërtuar mbi bazën e sistemit të mesazheve DBus dhe API-së speciale të Portaleve. Për izolim përdoret ndërshtresore flluskë mbështjellëse dhe teknologjitë tradicionale të virtualizimit të kontejnerëve Linux të bazuara në përdorimin e cgroups, hapësirave të emrave (emrave), Seccomp dhe SELinux. PulseAudio përdoret për të nxjerrë zërin.

Burimi: opennet.ru

Shto një koment