Udgivelse af systemet med selvstændige pakker Flatpak 1.8.0

Udgivet en ny stabil gren af værktøjet Flatpak 1.8, som leverer et system til opbygning af selvstændige pakker, der ikke er bundet til specifikke Linux-distributioner og udføres i en særlig container, der isolerer applikationen fra resten af systemet. Understøttelse af eksekvering af Flatpak-pakker er sikret for Arch Linux, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint og Ubuntu. Pakker med Flatpak er inkluderet i Fedora-repositoriet og understøttes i standard applikationshåndteringsprogrammet GNOME.

Nøglepunkter nyheder i Flatpak 1.8-grenen:

  • Implementeringen af installation i P2P-tilstand er forenklet (giver mulighed for at organisere download af applikationer og runtime-sæt via mellemnoder eller lagringsenheder til systemer uden netværksforbindelse). Understøttelse af installation via mellemhjemmeværter i det lokale netværk er blevet fjernet. Automatisk download af repositorier (sideload), der ligger på lokale USB-lagringsenheder, er som standard deaktiveret. For at aktivere mellemlokale repositorier skal repositoriet konfigureres ved at oprette et symbolsk link fra /var/lib/flatpak/sideload-repos eller
    /run/flatpak/sideload-repos. Изменение позволило упростить внутреннюю реализацию режима P2P и повысить его эффективность.
  • En valgfri systemd-enhed er tilføjet for automatisk at opdage yderligere repositorier på tilsluttede eksterne USB-lagringsenheder.
  • For applikationer med adgang til filsystemet er der givet adgang til kataloget /lib fra værtmiljøet i /run/host/lib.
  • Der er tilføjet nye adgangstilladelser til FS — "host-etc" og "host-os", som gør det muligt at få adgang til systemkatalogerne /etc og /usr.
  • For at generere mere effektiv kode til parsing af GVariant-filer fra ostree er der gjort brug af variant-schema-compiler.
  • I konfigurationsscripts til bygning er der mulighed for at bygge uden
    libsystemd;
  • Montering af Journal-sockets i skrivebeskyttet tilstand er sikret.
  • Der er tilføjet støtte til eksport af kataloger i document-export.
  • Direkte adgang til ALSA-lydenheder er tilladt for applikationer med adgang til Pulseaudio.
  • I API FlatpakTransaction signal "install-authenticator" er tilføjet, som kan bruges af klienter til at installere de autentifikatorer, der er nødvendige for at gennemføre transaktionen.
  • Brug af tidszoneoplysninger baseret på /etc/localtime fra værtsystemet er sikret, hvilket har løst relaterede tidszoneproblemer i nogle applikationer.
  • Installation af env.d-filen fra gdm er stoppet, da systemd-generators håndterer denne opgave bedre.
  • I create-usb-værktøjet er eksport af delvise commits som standard aktiveret.
  • Filoverførslen af sysusers.d er sikret til at oprette de nødvendige brugere via systemd.
  • Der er tilføjet en mulighed «—[no-]follow-redirect» til kommandoerne «flatpak remote-add» og «flatpak modify» for at forbyde/tillade omdirigering til et andet repository.
  • Til systemet
    portaler er API'en Spawn blevet tilføjet for at få den reelle procesidentifikator (PID) for den kørende applikation.
  • Alle OCI (Open Container Initiative) repositories er overgået til at bruge flatpak-oci-authenticator til autentificering.
  • Der er tilføjet en mulighed «—commit=» til kommandoerne «flatpak remote-info» og «flatpak update» for at angive en bestemt version af OCI-repositories.
  • Indledende understøttelse af delta-opdateringer til OCI-repositories er blevet tilføjet.
  • Kommandoen «flatpak upgrade» er blevet tilføjet som et alias for kommandoen «flatpak update».
  • Input-kompletteringsskripter er implementeret for kommandolinjemiljøet fish.

Vi minder om, at Flatpak giver applikationsudviklere mulighed for at forenkle distributionen af deres programmer, som ikke er en del af standard repositories for distributionerne ved at forberede en universel container uden at skulle lave separate builds for hver distribution. For brugere, der værdsætter sikkerhed, tillader Flatpak at køre et tvivlsomt program i en container og giver kun adgang til netværksfunktioner og filer, der er relateret til programmet. For brugere, der er interesseret i nyheder, tillader Flatpak at installere de nyeste test- og stabilversioner af applikationer uden behov for at ændre systemet. For eksempel bliver Flatpak-pakker allerede bygget til LibreOffice, Midori, GIMP, Inkscape, Kdenlive, Steam, 0 A.D., Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android Studio osv.

For at reducere pakkestørrelsen inkluderer den kun applikationsspecifikke afhængigheder, mens grundlæggende system- og grafiske biblioteker (Gtk+, Qt, GNOME- og KDE-biblioteker osv.) er udformet som tilslutningsvenlige standard runtime-miljøer. Den vigtigste forskel mellem Flatpak og Snap er, at Snap bruger komponenter fra hovedsystemet og isolering baseret på filtrering af systemopkald, mens Flatpak skaber en separat container fra systemet og håndterer store runtime-sæt ved at tilbyde ikke pakker som afhængigheder, men standard systemmiljøer (f.eks. alle biblioteker, der er nødvendige for at køre GNOME- eller KDE-programmer).

Ud over det typiske systemmiljø (runtime), der installeres via en speciel repository, leveres der yderligere afhængigheder (bundle), der kræves for at køre applikationen. Tilsammen danner runtime og bundle fyldet i containeren, idet runtime installeres separat og knyttes til flere containere, hvilket gør det muligt at undgå duplikering af fælles systemfiler for containerne. Der kan installeres flere forskellige runtime-miljøer (GNOME, KDE) eller flere versioner af det samme runtime (GNOME 3.26, GNOME 3.28) på et enkelt system. En container med en applikation som afhængighed bruger kun binding til et specifikt runtime, uden hensyn til de enkelte pakker, som runtime består af. Alle manglende elementer pakkes direkte sammen med applikationen. Når containeren dannes, monteres indholdet af runtime som partitionen /usr, mens bundle monteres i mappen /app.

Fyldet af runtime og applikationscontainere dannes ved hjælp af teknologien OSTree, hvor billedet atomisk opdateres fra et Git-lignende lager, som gør det muligt at anvende versionskontrolmetoder på distributionskomponenter (for eksempel kan systemet hurtigt rulles tilbage til en tidligere tilstand). RPM-pakker translitereres til OSTree-repositoriet ved hjælp af et speciallag rpm-ostree. Separat installation og opdatering af pakker inden for arbejdsmiljøet understøttes ikke, systemet opdateres ikke på niveauet af enkeltkomponenter, men som helhed, atomisk ændrer sin tilstand. Der stilles redskaber til rådighed for inkrementel anvendelse af opdateringer, hvilket fjerner behovet for at udskifte billedet helt ved hver opdatering.

Det dannede isolerede miljø er helt uafhængigt af det anvendte distributionssystem og har ved korrekt konfiguration ikke adgang til brugernes eller hovedsystemets filsystem og processer; det kan ikke direkte tilgå hardware, med undtagelse af output gennem DRI og det netværksmæssige subsystem. Grafikoutput og inputorganisation er implementeret foregår via Wayland-protokollen eller ved at videresende X11-socketen. Interaktionen med det eksterne miljø er bygget på et DBus-baseret meddelelsessystem og et special-API kaldet Portals. For at isolere kun 14,3% af webstederne i hele verden. laget Bubblewrap og traditionelle Linux-teknologier til containervirtualisering, baseret på brugen af cgroups, navnerum (namespaces), Seccomp og SELinux. PulseAudio anvendes til lydudgang.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster