Objava sustava samostalnih paketa Flatpak 1.8.0

Objavljeno nova stabilna grana alata Flatpak 1.8, koja osigurava sustav za izgradnju samostalnih paketa, koji nisu vezani uz određene Linux distribucije i izvršavaju se u posebnom kontejneru, koji izolira aplikaciju od ostatka sustava. Podrška za izvršavanje Flatpak paketa osigurana je za Arch Linux, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint i Ubuntu. Flatpak paketi uključeni su u repozaorij Fedora i podržani su u standardnom programu za upravljanje aplikacijama GNOME.

Ključne novosti u grani Flatpak 1.8:

  • Olakšana je implementacija instalacije u P2P modu (omogućava organizaciju preuzimanja aplikacija i runtime paketa putem posredničkih čvorova ili uređaja za sustave bez mrežne veze). Prekinuta je podrška za instalacije putem posredničkih hostova u lokalnoj mreži. Zadano je onemogućeno automatsko preuzimanje repozitorija (sideload), smještenih na lokalnim USB uređajima. Za aktivaciju lokalnih repozitorija potrebno je konfigurirati repozitorij stvaranjem simbolične veze iz /var/lib/flatpak/sideload-repos ili
    /run/flatpak/sideload-repos. Изменение позволило упростить внутреннюю реализацию режима P2P и повысить его эффективность.
  • Dodana opcionalna systemd jedinica za automatsko prepoznavanje dodatnih repozitorija na priključenim vanjskim USB uređajima.
  • Za aplikacije koje imaju pristup datotečnom sustavu, omogućeno je preusmjeravanje direktorija /lib host okruženja u /run/host/lib.
  • Dodane su nove privilegije pristupa FS — 'host-etc' i 'host-os', koje omogućuju pristup sustavnim direktorijima /etc i /usr.
  • Za generiranje učinkovitijeg koda za parsiranje GVariant datoteka iz ostreee korišten je variant-schema-compiler.
  • U skripti za izgradnju configure omogućena je izgradnja bez
    libsystemd;
  • Omogućeno je montiranje soketa Journal u režimu samo za čitanje.
  • U document-export dodana je podrška za izvoz direktorija.
  • Omogućen je izravan pristup zvučnim uređajima ALSA za aplikacije koje imaju pristup Pulseaudio.
  • U API-ju FlatpakTransaction dodana je signal 'install-authenticator', koji mogu koristiti klijenti za instalaciju authentificatora potrebnih za izvršenje transakcije.
  • Omogućena je upotreba podataka o vremenskoj zoni na temelju /etc/localtime iz host sustava, što je riješilo probleme vezane uz vremenske zone u nekim aplikacijama.
  • Prekinuta je instalacija datoteke env.d iz gdm, s obzirom da generatori systemd bolje obavljaju ovaj zadatak.
  • U alatu create-usb zadano je omogućeno izvoz djelomičnih komiteta.
  • Osigurana je isporuka datoteke sysusers.d za kreiranje potrebnih korisnika putem systemd.
  • U naredbe 'flatpak remote-add' i 'flatpak modify' dodana je opcija '--[no-]follow-redirect' za zabranjivanje/dozvoljavanje preusmjeravanja na drugi repozitorij.
  • U sustav
    portala dodana je API Spawn za dobivanje stvarnog identifikatora procesa (PID) pokrenute aplikacije.
  • Svi OCI (Open Container Initiative) repozitoriji prešli su na korištenje autentifikatora flatpak-oci-authenticator.
  • U naredbe 'flatpak remote-info' i 'flatpak update' dodana je opcija '--commit=' za određivanje određene verzije OCI repozitorija.
  • Dodana je početna podrška za delta-izdavanja za OCI repozitorije.
  • Dodana je naredba 'flatpak upgrade', koja je nadimak za naredbu 'flatpak update'.
  • Implementirani su dodaci za unos za ljusku komandu fish.

Podsjetimo, programerima aplikacija Flatpak omogućuje pojednostavljenje distribucije svojih programa koji ne ulaze u standardne repozitorije distribucija kroz pripremu jednog univerzalnog kontejnera bez kreiranja zasebnih izdanja za svaku distribuciju. Korisnicima koji brinu o sigurnosti, Flatpak omogućuje pokretanje sumnjive aplikacije unutar kontejnera, pružajući pristup samo mrežnim funkcijama i korisničkim datotekama povezanim s aplikacijom. Korisnicima zainteresiranim za novosti, Flatpak omogućuje instalaciju najnovijih testnih i stabilnih izdanja aplikacija bez potrebe za izmjenom sustava. Na primjer, trenutno se već pripremaju za LibreOffice, Midori, GIMP, Inkscape, Kdenlive, Steam, 0 A.D., Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android Studio itd.

Za smanjenje veličine paketa uključuje samo ovisnosti specifične za aplikaciju, a osnovne sistemske i grafičke biblioteke (Gtk+, Qt, biblioteke GNOME i KDE itd.) su u obliku povezivih standardnih runtime okruženja. Ključna razlika između Flatpak-a i Snap-a leži u tome što Snap koristi komponente okruženja osnovnog sustava i izolaciju temeljenu na filtriranju sistemskih poziva, dok Flatpak stvara kontejner koji je odvojen od sustava i upravlja velikim runtime paketima, pružajući kao ovisnosti ne pakete, već standardna sistemska okruženja (npr. sve biblioteke potrebne za rad programâ GNOME ili KDE).

Osim standardnog sistemskog okruženja (runtime), koje se instalira putem specijalnog repozitorij, isporučuju se dodatne zavisnosti (bundle) potrebne za rad aplikacije. Zajedno, runtime i bundle čine sadržaj kontejnera, pri čemu se runtime instalira odvojeno i može biti povezan sa više kontejnera, što omogućava izbegavanje dupliciranja zajedničkih sistemskih fajlova za kontejnere. U jednom sistemu može biti instalirano više različitih runtime okruženja (GNOME, KDE) ili više verzija jednog runtime-a (GNOME 3.26, GNOME 3.28). Kontejner sa aplikacijom kao zavisnošću koristi vezu samo za određeni runtime, bez obzira na pojedinačne pakete od kojih se runtime sastoji. Svi nedostajući elementi se upakuju direktno zajedno sa aplikacijom. Prilikom formiranja kontejnera, sadržaj runtime-a se montira kao deo \/usr, a bundle se montira u direktorij \/app.

Sadržaj runtime-a i kontejnera aplikacija formira se korišćenjem tehnologije OSTree, pri čemu se slika atomarno ažurira iz Git-sličnog skladišta, što omogućava primenu metoda verzionog kontrolisanja na komponentama distribucije (na primer, moguće je brzo vratiti sistem na prethodno stanje). RPM paketi se transforiraju u repo OSTree pomoću specijalnog sloja rpm-ostree. Odvojena instalacija i ažuriranje paketa unutar radnog okruženja nisu podržani, sistem se ažurira ne na nivou pojedinačnih komponenti, već u celini, atomarno menjajući svoje stanje. Obezbeđeni su alati za inkrementalnu primenu ažuriranja, što uklanja potrebu za potpunom zamenom slike prilikom svakog ažuriranja.

Formirano izolovano okruženje je potpuno nezavisno od korišćenog distribucije i uz pravilno podešavanje paketa nema pristup datotekama i procesima korisnika ili glavnog sistema, ne može direktno komunicirati sa hardverom, osim preko izlaza putem DRI, i mrežne podsystems. Izlaz grafike i organizacija unosa implementirane su putem protokola Wayland ili preusmjeravanjem X11 socket-a. Interakcija s vanjskim okruženjem zasniva se na sistemu razmene poruka DBus i specijalnom API-ju Portals. Za izolaciju koristi se sloj Bubblewrap i tradicionalne tehnologije kontejnerske virtualizacije za Linux, temeljene na korištenju cgroups, prostora imena (namespaces), Seccomp i SELinux. Za izlaz zvuka koristi se PulseAudio.

Izvor: opennet.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster