Izid sistema samozadostnih paketov Flatpak 1.8.0

Objavljeno nova stabilna veja kompleta orodij Flatpack 1.8, ki zagotavlja sistem za gradnjo samostojnih paketov, ki niso vezani na določene distribucije Linuxa in delujejo v posebnem vsebniku, ki izolira aplikacijo od preostalega sistema. Podpora za izvajanje paketov Flatpak je na voljo za Arch Linux, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint in Ubuntu. Paketi Flatpak so vključeni v repozitorij Fedora in jih podpira izvorni upravitelj aplikacij GNOME.

Ključ inovacije v veji Flatpak 1.8:

  • Izvedba namestitve v načinu P2P je poenostavljena (omogoča organizacijo nalaganja aplikacij in izvajalnih nizov prek vmesnih vozlišč ali pogonov za sisteme brez omrežne povezave). Podpora za namestitev prek vmesnih gostiteljev v lokalnem omrežju je bila ukinjena. Privzeto je samodejno stransko nalaganje repozitorijev na lokalnih pogonih USB onemogočeno. Če želite omogočiti vmesne lokalne repozitorije, morate repozitorij konfigurirati tako, da ustvarite simbolično povezavo iz /var/lib/flatpak/sideload-repos ali
    /run/flatpak/sideload-repos. Sprememba je poenostavila interno implementacijo načina P2P in povečala njegovo učinkovitost.

  • Dodana izbirna enota systemd za samodejno zaznavanje dodatnih skladišč na povezanih zunanjih pogonih USB.
  • Za aplikacije, ki imajo dostop do datotečnega sistema, se imenik /lib gostiteljskega okolja posreduje v /run/host/lib.
  • Dodana so bila nova dovoljenja za dostop do FS - "host-etc" in "host-os", ki omogočata dostop do sistemskih imenikov /etc in /usr.
  • Za ustvarjanje učinkovitejše kode za razčlenjevanje datotek se uporablja GVariant iz ostreee prevajalnik variant-schema.
  • Configure build crypt omogoča gradnjo brez
    libsystemd;

  • Omogočena namestitev vtičnic dnevnika v načinu samo za branje.
  • Dodana podpora za izvoz imenikov v dokument-izvoz.
  • Omogoča neposreden dostop do zvočnih naprav ALSA za aplikacije, ki imajo dostop do Pulseaudio.
  • V API-ju FlatpakTransaction dodal signal "install-authenticator", ki ga lahko odjemalci uporabijo za namestitev avtentifikatorjev, potrebnih za dokončanje transakcije.
  • Omogočena uporaba informacij o časovnem pasu na podlagi /etc/localtime iz gostiteljskega sistema, kar je v nekaterih aplikacijah odpravilo težave, povezane s časovnim pasom.
  • Nameščanje datoteke env.d iz gdm je prekinjeno, saj so generatorji systemd boljši pri tej nalogi.
  • Pripomoček create-usb ima delni izvoz privzeto omogočen.
  • Datoteka sysusers.d je bila na voljo za ustvarjanje potrebnih uporabnikov prek systemd.
  • Možnost »-[no-]follow-redirect« je bila dodana ukazoma »flatpak remote-add« in »flatpak modify« za onemogočanje/omogočanje preusmeritve v drugo skladišče.
  • V sistem
    portali Dodan API Spawn za pridobitev pravega ID-ja procesa (PID) delujoče aplikacije.

  • Vsi repozitoriji OCI (Open Container Initiative) so bili pretvorjeni za uporabo avtentifikatorja flatpak-oci-authenticator.
  • Dodana možnost »--commit=« ukazoma »flatpak remote-info« in »flatpak update« za nastavitev določene različice repozitorijev OCI.
  • Dodana začetna podpora za posodobitve delta za repozitorije OCI.
  • Dodan ukaz »flatpak upgrade«, ki je vzdevek za ukaz »flatpak update«.
  • Implementirani skripti za dokončanje vnosa za ukazno lupino fish.

Naj vas spomnimo, da Flatpak omogoča razvijalcem aplikacij, da poenostavijo distribucijo svojih programov, ki niso vključeni v standardna distribucijska skladišča, tako da priprava en univerzalni vsebnik brez ustvarjanja ločenih sklopov za vsako distribucijo. Uporabnikom, ki se zavedajo varnosti, vam Flatpak omogoča zagon vprašljive aplikacije v vsebniku, ki omogoča dostop samo do omrežnih funkcij in uporabniških datotek, povezanih z aplikacijo. Za uporabnike, ki jih zanimajo novi izdelki, Flatpak omogoča namestitev najnovejših testnih in stabilnih izdaj aplikacij, ne da bi morali spreminjati sistem. Na primer, trenutno so že paketi Flatpak gredo za LibreOffice, Midori, GIMP, Inkscape, Kdenlive, Steam, 0 AD, Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android Studio itd.

Za zmanjšanje velikosti paketa vključuje samo odvisnosti, specifične za aplikacijo, osnovne sistemske in grafične knjižnice (Gtk+, Qt, knjižnice GNOME in KDE itd.) pa so zasnovane kot standardna izvajalna okolja vtičnikov. Ključna razlika med Flatpakom in Snapom je v tem, da Snap uporablja komponente glavnega sistemskega okolja in izolacijo, ki temelji na filtriranju sistemskih klicev, medtem ko Flatpak ustvari vsebnik, ločen od sistema, in deluje z velikimi nabori izvajalnega časa, pri čemer paketov ne zagotavlja kot odvisnosti, temveč standardne sistemska okolja (na primer vse knjižnice, potrebne za delovanje programov GNOME ali KDE).

Poleg standardnega sistemskega okolja (runtime), nameščenega prek posebnega repozitorij, so priložene dodatne odvisnosti (paket), ki so potrebne za delovanje aplikacije. Skupaj izvajalni čas in paket tvorita polnjenje vsebnika, kljub dejstvu, da je izvajalni čas nameščen ločeno in vezan na več vsebnikov hkrati, kar vam omogoča, da se izognete podvajanju sistemskih datotek, ki so skupne vsebnikom. En sistem ima lahko nameščenih več različnih izvajalnih okolij (GNOME, KDE) ali več različic istega izvajalnega okolja (GNOME 3.26, GNOME 3.28). Vsebnik z aplikacijo kot odvisnostjo uporablja vezavo samo na določeno izvajalno okolje, ne da bi upošteval posamezne pakete, ki sestavljajo izvajalno okolje. Vsi manjkajoči elementi so pakirani neposredno z aplikacijo. Ko se oblikuje vsebnik, se vsebina izvajalnega okolja vpne kot particija /usr, sveženj pa se vpne v imenik /app.

Polnjenje izvajalnega in aplikacijskega vsebnika se oblikuje s pomočjo tehnologije OSTree, v katerem je slika atomsko posodobljena iz repozitorija, podobnega Gitu, kar omogoča uporabo metod nadzora različic za komponente distribucije (na primer, sistem lahko hitro vrnete nazaj v prejšnje stanje). Paketi RPM so prevedeni v repozitorij OSTree s posebnim slojem rpm-ostree. Ločeno nameščanje in posodabljanje paketov znotraj delovnega okolja ni podprto, sistem se ne posodablja na ravni posameznih komponent, ampak kot celota, pri čemer atomsko spreminja svoje stanje. Zagotavlja orodja za postopno uporabo posodobitev, pri čemer odpravlja potrebo po popolni zamenjavi slike z vsako posodobitvijo.

Ustvarjeno izolirano okolje je popolnoma neodvisno od uporabljene distribucije in z ustreznimi nastavitvami paketa nima dostopa do datotek in procesov uporabnika ali glavnega sistema, ne more neposredno dostopati do opreme, z izjemo izhoda prek DRI, in omrežni podsistem. Organizacija grafičnih izhodov in vnosov izvajati z uporabo protokola Wayland ali prek posredovanja vtičnice X11. Interakcija z zunanjim okoljem temelji na sporočilnem sistemu DBus in posebnem Portals API. Za izolacijo rabljeni vmesni sloj Mehurček in tradicionalne tehnologije za virtualizacijo vsebnikov Linux, ki temeljijo na uporabi cgroups, imenskih prostorov, Seccomp in SELinux. PulseAudio se uporablja za oddajanje zvoka.

Vir: opennet.ru

Dodaj komentar