Llançament del sistema de paquets autònoms Flatpak 1.6.0

Publicat nova branca estable del conjunt d'eines 1.6 Flatpak, que proporciona un sistema per construir paquets autònoms que no estan vinculats a distribucions de Linux específiques i que s'executen en un contenidor especial que aïlla l'aplicació de la resta del sistema. Es proporciona suport per executar paquets Flatpak per a Arch Linux, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint i Ubuntu. Els paquets Flatpak s'inclouen al dipòsit de Fedora i són compatibles amb el gestor d'aplicacions nadiu del GNOME.

Clau innovacions a la branca Flatpak 1.6:

  • В Portal de l'API s'ha afegit el mètode CreateUpdateMonitor, que permet a les aplicacions controlar l'aparició de les actualitzacions i sol·licitar la instal·lació de l'actualització actualitzada.
    Per denegar el permís a una aplicació per instal·lar actualitzacions de manera independent, podeu utilitzar l'ordre "flatpak permission-set flatpak updates $APPID no" (si especifiqueu "preguntar" en lloc de "no", es mostrarà un diàleg cada vegada per confirmar el actualització);


  • Per simplificar la creació de gestors, es proposa una biblioteca
    libportal, que permet processar esdeveniments sense utilitzar directament l'API del portal i analitzar els senyals que arriben a través de D-Bus.
    Libportal proporciona capes asíncrones senzilles per a la majoria de "portals";

  • S'ha afegit un nou permís "--socket=cups" per proporcionar accés directe al servidor d'impressió CUPS;
  • S'han canviat el protocol i l'API per gestionar l'autenticació. S'ha afegit un autenticador per a OCI (Open Container Initiative). Suport implementat per a la instal·lació automàtica d'autenticadors des del dipòsit extern de flatpak. S'ha afegit un gestor de devolució de trucada a FlatpakTransaction per utilitzar l'autenticació d'inici de sessió i contrasenya, similar al mètode d'autenticació bàsic HTTP;
  • S'ha afegit suport per a aplicacions i sistemes protegits que requereixen autenticació a l'arrencada;
  • La capa de paper de bombolles utilitzada per a l'aïllament s'ha actualitzat per alliberar-se 0.4.0;
  • S'ha afegit suport opcional per als controls parentals mitjançant l'aplicació de la biblioteca libmalcontent, que permet restringir l'accés a determinats tipus de contingut;
  • Les extensions s'instal·len abans de l'aplicació, la qual cosa us permet obtenir una aplicació que funcioni immediatament després de completar-ne la instal·lació;
  • S'han reelaborat les manipulacions amb fitxers temporals, la qual cosa ha millorat el rendiment quan hi ha falta d'espai lliure al disc;
  • Per executar l'ordre "flatpak entra"Ja no és necessari utilitzar sudo;
  • S'ha afegit als portals la possibilitat de llançar entorns aïllats imbricats (subsandbox) per a processos fills;
  • S'han afegit noves ordres "flatpak permission-set" i "permission-remove" per controlar la configuració de permisos;
  • S'ha afegit l'opció "flatpak install --or-update", que realitza una actualització si l'aplicació ja està instal·lada;
  • S'ha afegit l'ordre "flatpak mask" per arreglar la versió i prohibir la instal·lació d'actualitzacions;
  • Per a les imatges en format OCI (Open Container Initiative), s'ha afegit suport per a l'enquadernació d'etiquetes, generant un historial de canvis a la imatge i habilitant els tipus docker mime, a més dels tipus mime OCI;
  • La clau d'idiomes predeterminats s'ha afegit a la configuració per definir la llista d'idiomes utilitzats, a més de la llista del sistema.

Recordem que Flatpak fa possible que els desenvolupadors d'aplicacions simplifiquen la distribució dels seus programes que no s'inclouen als repositoris de distribució estàndard mitjançant preparació un contenidor universal sense crear conjunts separats per a cada distribució. Per als usuaris conscients de la seguretat, Flatpak us permet executar una aplicació qüestionable en un contenidor, proporcionant accés només a les funcions de xarxa i als fitxers d'usuari associats a l'aplicació. Per als usuaris interessats en nous productes, Flatpak us permet instal·lar les darreres versions de proves i versions estables d'aplicacions sense necessitat de fer canvis al sistema. Per exemple, actualment els paquets Flatpak ja hi són van per a LibreOffice, Firefox, GIMP, Inkscape, Kdenlive, Steam, 0 AD, Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android Studio, etc.

Per reduir la mida del paquet, només inclou dependències específiques de l'aplicació, i les biblioteques bàsiques del sistema i de gràfics (biblioteca Gtk+, Qt, GNOME i KDE, etc.) estan dissenyades com a entorns d'execució estàndard de connectors. La diferència clau entre Flatpak i Snap és que Snap utilitza els components de l'entorn del sistema principal i l'aïllament basat en el filtratge de les trucades del sistema, mentre que Flatpak crea un contenidor separat del sistema i funciona amb grans conjunts de temps d'execució, proporcionant no paquets com a dependències, sinó estàndard. els entorns del sistema (per exemple, totes les biblioteques necessàries per al funcionament dels programes GNOME o KDE).

A més de l'entorn del sistema estàndard (temps d'execució), instal·lat a través d'un especial repositori, es proporcionen dependències addicionals (paquet) necessàries perquè l'aplicació funcioni. En total, el temps d'execució i el paquet formen l'ompliment del contenidor, malgrat que el temps d'execució s'instal·la per separat i lliga a diversos contenidors alhora, la qual cosa permet evitar la duplicació dels fitxers del sistema comuns als contenidors. Un sistema pot tenir instal·lats diversos temps d'execució diferents (GNOME, KDE) o diverses versions del mateix temps d'execució (GNOME 3.26, GNOME 3.28). Un contenidor amb una aplicació com a dependència utilitza una vinculació només a un temps d'execució específic, sense tenir en compte els paquets individuals que componen el temps d'execució. Tots els elements que falten s'empaqueten directament amb l'aplicació. Quan es forma un contenidor, el contingut del temps d'execució es munta com a partició /usr i el paquet es munta al directori /app.

L'ompliment dels contenidors de temps d'execució i d'aplicacions es forma mitjançant tecnologia OSTree, en què la imatge s'actualitza atòmicament des d'un dipòsit semblant a Git, que us permet aplicar mètodes de control de versions als components de la distribució (per exemple, podeu tornar ràpidament el sistema a un estat anterior). Els paquets RPM es tradueixen al repositori OSTree mitjançant una capa especial rpm-ostree. No s'admet la instal·lació i actualització de paquets per separat dins de l'entorn de treball; el sistema s'actualitza no a nivell de components individuals, sinó en conjunt, canviant el seu estat atòmicament. Proporciona eines per aplicar actualitzacions de manera incremental, eliminant la necessitat de substituir completament la imatge amb cada actualització.

L'entorn aïllat generat és completament independent de la distribució utilitzada, i amb la configuració adequada del paquet, no té accés als fitxers i processos de l'usuari o del sistema principal, no pot accedir directament a l'equip, a excepció de la sortida via DRI, i el subsistema de xarxa. Organització d'entrada i sortida gràfica implementat utilitzant el protocol Wayland o mitjançant el reenviament del sòcol X11. La interacció amb l'entorn extern es basa en el sistema de missatgeria DBus i una API especial de Portals. Per aïllament usat intercapa Plàstic de bombolles i tecnologies tradicionals de virtualització de contenidors Linux basades en l'ús de cgroups, espais de noms, Seccomp i SELinux. PulseAudio s'utilitza per emetre so.

Font: opennet.ru

Afegeix comentari