Flatpak 1.14.0 pakete sistema autonomoaren kaleratzea

Flatpak 1.14 tresna-kitaren adar egonkor berri bat argitaratu da, Linux banaketa espezifikoetara lotuta ez dauden pakete autonomoak eraikitzeko sistema eskaintzen duena eta aplikazioa gainerako sistematik isolatzen duen edukiontzi berezi batean exekutatzen duena. Flatpak paketeak exekutatzeko laguntza eskaintzen da Arch Linux, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint, Alt Linux eta Ubuntu-rentzat. Flatpak paketeak Fedora biltegian sartzen dira eta jatorrizko GNOME aplikazio-kudeatzaileak onartzen ditu.

Flatpak 1.14 adarreko berrikuntza nagusiak:

  • Posible da egoera (.local/state) fitxategietarako direktorio bat sortzea eta direktorio horretara zuzendutako XDG_STATE_HOME ingurune-aldagaia ezartzea.
  • "have-kernel-module-name" formako baldintzazko egiaztapenak gehitu dira nukleoko moduluen presentzia zehazteko (aurretik proposatutako have-intel-gpu egiaztapenaren analogo unibertsala, horren ordez "have-kernel-module-i915" esamoldea. ” orain erabil daiteke).
  • "flatpak document-unexport β€”doc-id=..." komandoa inplementatu da.
  • Ingurune nagusian erabiltzeko Appstream metadatuen esportazioa eskaintzen da.
  • Flatpak komandoak osatzeko arauak gehitu dira Fish shell-erako
  • X11 eta PulseAudio zerbitzuetarako sarerako sarbidea onartzen da (ezarpen egokiak gehitzen badira).
  • Git biltegiko adar nagusia "maisu"tik "nagusi" izatera aldatu da, azkenaldian "maisu" hitza politikoki okertzat hartu baita.
  • Abiarazteko scriptak berridatzi egiten dira aplikazioari izena aldatzen bazaio.
  • "--include-sdk" eta "--include-debug" aukerak gehitu zaizkio instalatzeko komandoari SDK eta debuginfo fitxategiak instalatzeko.
  • Flatpakref eta flatpakrepo fitxategietan "DeploySideloadCollectionID" parametrorako laguntza gehitu da. Ezarritakoan, bildumaren IDa urruneko biltegi bat gehitzean ezarriko da, eta ez metadatuak kargatu ondoren.
  • MPRIS (Media Player Remote Interfacing Specification) izen bereiziak dituzten saioetan kudeatzaileentzako sandbox ingurune habiaratuak sortzeko baimena eman du.
  • Komando-lerroko utilitateek exekuzio-denbora zaharkitutako luzapenen erabilerari buruzko informazioa eskaintzen dute orain.
  • Desinstalatzeko komandoak berrespen-eskaera bat ezartzen du oraindik erabiltzen ari diren exekuzio-denbora edo exekuzio-luzapenak kendu aurretik.
  • "--socket=gpg-agent" aukeraren laguntza gehitu da "flatpak run" bezalako komandoetan.
  • Libostree-n ahultasun bat konpondu da, eta horrek erabiltzaile bati sistemako fitxategi arbitrarioak ezabatzea ahalbidetuko dio flatpak-system-helper kudeatzailearen manipulazioaren bidez (bereziki formateatutako adar-izen batekin ezabatzeko eskaera bidaliz). Arazoa 2018 baino lehen kaleratutako Flatpak eta libostree-ren bertsio zaharretan bakarrik agertzen da (< 0.10.2) eta ez die eragiten egungo bertsioei.

Gogora iezaiguzu Flatpak-ek aplikazioen garatzaileei banaketa estandarreko biltegietan sartzen ez diren programen banaketa errazteko aukera ematen diela edukiontzi unibertsal bat prestatuz banaketa bakoitzerako muntaketa bereiziak sortu gabe. Segurtasuna duten erabiltzaileentzat, Flatpak-ek zalantzazko aplikazio bat edukiontzi batean exekutatzeko aukera ematen du, sareko funtzioetarako eta aplikazioarekin lotutako erabiltzaile-fitxategietarako sarbidea soilik emanez. Produktu berrietan interesa duten erabiltzaileentzat, Flatpak-ek aplikazioen azken proba eta bertsio egonkorrak instalatzeko aukera ematen du, sisteman aldaketarik egin beharrik gabe. Adibidez, Flatpak paketeak LibreOffice, Midori, GIMP, Inkscape, Kdenlive, Steam, 0 AD, Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android Studio, etab.

Paketearen tamaina murrizteko, aplikazioaren menpekotasun espezifikoak baino ez ditu barne hartzen, eta oinarrizko sistema eta liburutegi grafikoak (GTK, Qt, GNOME eta KDE liburutegiak, etab.) plug-in exekuzio-ingurune estandar gisa diseinatuta daude. Flatpak eta Snap-en arteko funtsezko aldea da Snap-ek sistema-ingurune nagusiko osagaiak eta isolamendua erabiltzen dituela sistema-deien iragazketan oinarrituta, eta Flatpak-ek, berriz, sistematik bereizitako edukiontzi bat sortzen du eta exekuzio-denbora multzo handiekin funtzionatzen du, paketeak ez menpekotasun gisa ematen, baizik eta estandar gisa. sistema inguruneak (adibidez, GNOME edo KDE programen funtzionamendurako beharrezkoak diren liburutegi guztiak).

Sistema-ingurune estandarraz gain (exekuzio-denbora), biltegi berezi baten bidez instalatuta, aplikazioaren funtzionamendurako beharrezkoak diren mendekotasun gehigarriak (sorta) hornitzen dira. Guztira, exekuzio-denborak eta sortak edukiontziaren betetzea osatzen dute, nahiz eta exekuzio-denbora bereizita instalatu eta aldi berean hainbat edukiontziri lotuta egon, eta horrek edukiontzietan ohikoak diren sistema-fitxategiak bikoiztea saihesteko aukera ematen du. Sistema batek hainbat exekuzio-denbora desberdin izan ditzake instalatuta (GNOME, KDE) edo exekuzio-denbora beraren hainbat bertsio (GNOME 3.40, GNOME 3.42). Aplikazio bat menpekotasun gisa duen edukiontzi batek exekuzio-denbora zehatz baterako soilik erabiltzen du lotura, exekuzio-denbora osatzen duten pakete indibidualak kontuan hartu gabe. Falta diren elementu guztiak aplikazioarekin zuzenean paketatzen dira. Edukiontzi bat eratzen denean, exekuzio-denborako edukia /usr partizio gisa muntatzen da eta sorta /app direktorioan muntatzen da.

Exekuzio-denbora eta aplikazio-edukiontziak OSTree teknologia erabiliz eraikitzen dira, zeinetan irudia atomikoki eguneratzen den Git antzeko biltegi batetik, eta horri esker bertsio-kontroleko metodoak banaketa osagaietan aplika daitezke (adibidez, sistema azkar itzul dezakezu. aurreko egoera). RPM paketeak OSTree biltegira itzultzen dira rpm-ostree geruza berezi bat erabiliz. Lan-ingurunean paketeen instalazioa eta eguneratzea ez da onartzen; sistema ez da osagai indibidualen mailan eguneratzen, osotasunean baizik, bere egoera atomikoki aldatuz. Eguneraketak pixkanaka aplikatzeko tresnak eskaintzen ditu, eguneraketa bakoitzean irudia guztiz ordezkatzeko beharra ezabatuz.

Sortutako ingurune isolatua guztiz independentea da erabilitako banaketatik eta, paketearen ezarpen egokiekin, ez du erabiltzailearen edo sistema nagusiaren fitxategi eta prozesuetarako sarbidea, ezin du zuzenean ekipamendura sartu, DRI bidezko irteera izan ezik, eta sarearen azpisistemarako deiak. Irteera grafikoaren eta sarreraren antolaketa Wayland protokoloa erabiliz edo X11 socket birbidaltzearen bidez inplementatzen dira. Kanpo ingurunearekiko interakzioa DBus mezularitza sisteman eta Portals API berezi batean oinarritzen da.

Isolatzeko, Bubblewrap geruza eta Linux edukiontzien birtualizazio teknologia tradizionalak erabiltzen dira, cgroups, namespaces, Seccomp eta SELinux-en erabileran oinarrituta. PulseAudio soinua ateratzeko erabiltzen da. Kasu honetan, isolamendua desgaitu daiteke, pakete ezagun askoren garatzaileek fitxategi-sistemarako eta sistemako gailu guztietarako sarbide osoa lortzeko erabiltzen dutena. Adibidez, GIMP, VSCodium, PyCharm, Octave, Inkscape, Audacity eta VLC isolamendu modu mugatu batekin datoz, hasierako direktoriorako sarbide osoa uzten duena. Hasierako direktoriorako sarbidea duten paketeak arriskuan jartzen badira, paketeen deskribapenean "sandboxed" etiketa egon arren, erasotzaileak ~/.bashrc fitxategia bakarrik aldatu behar du bere kodea exekutatzeko. Gai aparteko bat paketeen aldaketen kontrola eta paketeen eraikitzaileengan konfiantza izatea da, askotan proiektu edo banaketa nagusiekin lotuta ez daudenak.

Iturria: opennet.ru

Gehitu iruzkin berria