Release av Flatpak 1.8.0 fristående paketsystem

Publicerad ny stabil gren av verktygslådan Flatpack 1.8, som tillhandahåller ett system för att bygga fristående paket som inte är bundna till specifika Linux-distributioner och körs i en speciell behållare som isolerar applikationen från resten av systemet. Stöd för att köra Flatpak-paket tillhandahålls för Arch Linux, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint och Ubuntu. Flatpak-paket ingår i Fedora-förvaret och stöds av den inbyggda GNOME-applikationshanteraren.

Nyckel innovationer i Flatpak 1.8-grenen:

  • Implementeringen av installationen i P2P-läge har förenklats (låter dig organisera laddningen av applikationer och körtidsuppsättningar genom mellanliggande noder eller enheter för system utan nätverksanslutning). Stöd för installation via mellanvärdar på det lokala nätverket har upphört. Som standard är automatisk sidladdning av förråd som finns på lokala USB-enheter inaktiverad. För att aktivera mellanliggande lokala arkiv måste du konfigurera arkivet genom att skapa en symbolisk länk från /var/lib/flatpak/sideload-repos eller
    /run/flatpak/sideload-repos. Förändringen förenklade den interna implementeringen av P2P-läget och ökade dess effektivitet.

  • Tillagd valfri systemd-enhet för att automatiskt upptäcka ytterligare förråd på anslutna externa USB-enheter.
  • För applikationer som har åtkomst till filsystemet vidarebefordras /lib-katalogen i värdmiljön till /run/host/lib.
  • Nya FS-åtkomstbehörigheter har lagts till - "host-etc" och "host-os", som tillåter åtkomst till systemkatalogerna /etc och /usr.
  • För att generera mer effektiv filanalyskod används GVariant från ostreee variant-schema-kompilator.
  • Konfigurera byggkrypten ger möjligheten att bygga utan
    libsystemd;

  • Aktiverad montering av Journal-uttag i skrivskyddat läge.
  • Lade till stöd för export av kataloger till dokumentexport.
  • Tillåter direkt åtkomst till ALSA-ljudenheter för appar som har åtkomst till Pulseaudio.
  • I API FlatpakTransaction lagt till en "install-autenticator"-signal som kan användas av klienter för att installera de autentiseringsenheter som behövs för att slutföra en transaktion.
  • Aktiverade användning av tidszonsinformation baserad på /etc/localtime från värdsystemet, vilket löste tidszonsrelaterade problem i vissa applikationer.
  • Slutade installera env.d-filen från gdm eftersom systemd-generatorer är bättre på denna uppgift.
  • Skapa-usb-verktyget har partiell commit-export aktiverat som standard.
  • Filen sysusers.d har levererats för att skapa de nödvändiga användarna via systemd.
  • Alternativet "-[no-]follow-redirect" har lagts till i kommandona "flatpak remote-add" och "flatpak modify" för att inaktivera/aktivera omdirigering till ett annat arkiv.
  • Till systemet
    portaler Lade till Spawn API för att få det verkliga process-ID (PID) för den körande applikationen.

  • Alla OCI-förråd (Open Container Initiative) har konverterats för att använda flatpak-oci-autenticator-autentiseringsverktyget.
  • Lade till alternativet "--commit=" till kommandona "flatpak remote-info" och "flatpak update" för att ställa in en specifik version av OCI-förvaret.
  • Lade till initialt stöd för deltauppdateringar för OCI-förråd.
  • Lade till kommandot "flatpak upgrade", som är ett alias för kommandot "flatpak update".
  • Implementerade indatakompletteringsskript för kommandoskalet fisk.

Låt oss påminna om att Flatpak gör det möjligt för applikationsutvecklare att förenkla distributionen av sina program som inte ingår i standarddistributionsförråden genom att förberedelser en universalbehållare utan att skapa separata sammansättningar för varje distribution. För säkerhetsmedvetna användare tillåter Flatpak dig att köra en tvivelaktig applikation i en behållare, vilket endast ger åtkomst till nätverksfunktionerna och användarfilerna som är associerade med applikationen. För användare som är intresserade av nya produkter låter Flatpak dig installera de senaste test- och stabila versionerna av applikationer utan att behöva göra ändringar i systemet. Till exempel, för närvarande är Flatpak-paket redan går för LibreOffice, Midori, GIMP, Inkscape, Kdenlive, Steam, 0 AD, Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android Studio, etc.

För att minska paketstorleken inkluderar det endast applikationsspecifika beroenden, och de grundläggande system- och grafikbiblioteken (Gtk+, Qt, GNOME och KDE bibliotek, etc.) är designade som plug-in standard körtidsmiljöer. Den viktigaste skillnaden mellan Flatpak och Snap är att Snap använder komponenterna i huvudsystemmiljön och isolering baserat på filtrering av systemanrop, medan Flatpak skapar en container separat från systemet och arbetar med stora runtime-uppsättningar, och tillhandahåller inte paket som beroenden, utan standard. ens systemmiljöer (till exempel alla bibliotek som behövs för driften av GNOME- eller KDE-program).

Förutom den vanliga systemmiljön (runtime), installeras genom en speciell förvaret, ytterligare beroenden (paket) som krävs för att applikationen ska fungera tillhandahålls. Totalt utgör runtime och bunt fyllningen av behållaren, trots att runtime är installerad separat och knuten till flera behållare samtidigt, vilket gör att du slipper duplicera systemfiler som är gemensamma för behållare. Ett system kan ha flera olika körtider installerade (GNOME, KDE) eller flera versioner av samma körtid (GNOME 3.26, GNOME 3.28). En behållare med en applikation som beroende använder en bindning endast till en specifik körtid, utan att ta hänsyn till de individuella paketen som utgör körtiden. Alla saknade element paketeras direkt med applikationen. När en behållare bildas monteras runtime-innehållet som /usr-partitionen och paketet monteras i /app-katalogen.

Fyllningen av runtime- och applikationsbehållare bildas med hjälp av teknik OSTree, där bilden uppdateras atomiskt från ett Git-liknande arkiv, vilket gör att versionskontrollmetoder kan tillämpas på komponenterna i distributionen (till exempel kan du snabbt återställa systemet till ett tidigare tillstånd). RPM-paket översätts till OSTree-förvaret med hjälp av ett speciellt lager rpm-otree. Separat installation och uppdatering av paket inom arbetsmiljön stöds inte, systemet uppdateras inte på nivån för enskilda komponenter, utan som en helhet, och ändrar dess tillstånd atomärt. Tillhandahåller verktyg för att tillämpa uppdateringar stegvis, vilket eliminerar behovet av att helt ersätta bilden med varje uppdatering.

Den genererade isolerade miljön är helt oberoende av distributionen som används och har, med korrekta paketinställningar, inte tillgång till filer och processer för användaren eller huvudsystemet, kan inte direkt komma åt utrustningen, med undantag för utdata via DRI, och nätverksdelsystem. Grafikutdata och inmatningsorganisation genomförs med hjälp av Wayland-protokollet eller via X11-socket-vidarebefordran. Interaktion med den externa miljön är baserad på meddelandesystemet DBus och en speciell Portals API. För isolering används mellanskikt Bubbelplast och traditionell Linux-containervirtualiseringsteknik baserad på användningen av cgroups, namespaces, Seccomp och SELinux. PulseAudio används för att mata ut ljud.

Källa: opennet.ru

Lägg en kommentar