Liberigo de la sistemo de memsufiĉaj pakoj Flatpak 1.6.0

Eldonita nova stabila branĉo de la ilaro Plata pako 1.6, kiu provizas sistemon por konstrui memstarajn pakaĵojn, kiuj ne estas ligitaj al specifaj Linuksaj distribuoj kaj funkcias en speciala ujo, kiu izolas la aplikaĵon de la resto de la sistemo. Subteno por ruli Flatpak-pakaĵojn estas provizita por Arch Linukso, CentOS, Debian, Fedora, Gentoo, Mageia, Linux Mint kaj Ubuntu. Flatpak-pakaĵoj estas inkluzivitaj en la deponejo Fedora kaj estas subtenataj de la denaska GNOME-aplikadministranto.

Ŝlosilo novigoj en la branĉo Flatpak 1.6:

  • В API Portalo la metodo CreateUpdateMonitor estis aldonita, permesante al aplikoj kontroli la aspekton de ĝisdatigoj kaj peti instaladon de la ĝisdatigita ĝisdatigo.
    Por nei permeson al aplikaĵo instali ĝisdatigojn sendepende, vi povas uzi la komandon "flatpak permission-set flatpak updates $APPID no" (se vi specifas "demandi" anstataŭ "ne", dialogo aperos ĉiufoje por konfirmi la ĝisdatigo);


  • Por simpligi la kreadon de prizorgantoj, biblioteko estas proponita
    libportal, kiu ebligas prilabori eventojn sen rekte uzi la Portal API kaj analizi signalojn venantajn per D-Bus.
    Libportal disponigas simplajn nesinkronajn tavolojn por la plej multaj "portaloj";

  • Aldonita nova permeso "--socket=cups" por havigi rektan aliron al la presa servilo CUPS;
  • Ŝanĝis la protokolon kaj API por pritrakti aŭtentikigon. Aldonita aŭtentikigilo por OCI (Open Container Initiative). Efektivigita subteno por aŭtomata instalado de aŭtentikiloj de la ekstera flatpak-deponejo. Revoka pritraktilo estis aldonita al FlatpakTransaction por uzi ensaluton kaj pasvortan aŭtentikigon, simile al la HTTP-baza aŭtentikigmetodo;
  • Aldonita subteno por protektitaj aplikoj kaj sistemoj, kiuj postulas aŭtentikigon post lanĉo;
  • La bobelkovraĵa tavolo uzata por izolado estis ĝisdatigita por liberigi 0.4.0;
  • Aldonita laŭvola subteno por gepatra kontrolo per biblioteka aplikaĵo libmalenhavo, kiu permesas vin limigi aliron al certaj specoj de enhavo;
  • Etendaĵoj nun estas instalitaj antaŭ la aplikaĵo, permesante al vi ricevi funkciantan aplikaĵon tuj post kiam ĝia instalado finiĝas;
  • Manipuladoj kun provizoraj dosieroj estis reverkitaj, kio plibonigis rendimenton kiam mankas libera diskspaco;
  • Por plenumi la komandon "flatpak eniru"Ne plu necesas uzi sudo;
  • La kapablo lanĉi nestitajn izolitajn mediojn (sub-sablokesto) por infanprocezoj estis aldonita al portaloj;
  • Aldonitaj novaj komandoj "flatpak permission-set" kaj "permeso-remove" por kontroli permesan agordon;
  • Aldonita opcio "flatpak install --or-update", kiu faras ĝisdatigon se la aplikaĵo jam estas instalita;
  • Aldonis la komandon "flatpak mask" por ripari la version kaj malpermesi la instaladon de ĝisdatigoj;
  • Por bildoj en la formato OCI (Open Container Initiative), subteno estis aldonita por ligado de etikedoj, generante historion de ŝanĝoj en la bildo, kaj ebligante docker-mimspecojn, krom OCI-mimspecoj;
  • La defaŭlta lingvoŝlosilo estis aldonita al la agordoj por difini la liston de uzataj lingvoj, krom la sistema listo.

Ni memorigu vin, ke Flatpak ebligas al programistoj de aplikaĵoj simpligi la distribuadon de siaj programoj, kiuj ne estas inkluzivitaj en la normaj distribuaj deponejoj per preparado unu universala ujo sen krei apartajn asembleojn por ĉiu distribuo. Por sekureckonsciaj uzantoj, Flatpak permesas ruli dubindan aplikaĵon en ujo, havigante aliron nur al la retaj funkcioj kaj uzantdosieroj asociitaj kun la aplikaĵo. Por uzantoj interesitaj pri novaj produktoj, Flatpak permesas instali la plej novajn testajn kaj stabilajn eldonojn de aplikaĵoj sen la bezono fari ŝanĝojn al la sistemo. Ekzemple, nuntempe Flatpak-pakaĵoj jam estas iras por LibreOffice, Firefox, GIMP, Inkscape, Kdenlive, Steam, 0 AD, Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android Studio, ktp.

Por redukti la grandecon de la pakaĵo, ĝi inkluzivas nur aplikaĵ-specifajn dependecojn, kaj la bazaj sistemo kaj grafikaj bibliotekoj (Gtk+, Qt, GNOME kaj KDE-bibliotekoj, ktp.) estas desegnitaj kiel aldonaĵaj normaj rultempaj medioj. La ŝlosila diferenco inter Flatpak kaj Snap estas, ke Snap uzas la komponantojn de la ĉefa sistema medio kaj izoladon bazitan sur filtraj sistemvokoj, dum Flatpak kreas ujon apartan de la sistemo kaj funkcias kun grandaj rultempaj aroj, provizante ne pakaĵojn kiel dependecojn, sed normajn. tiaj sistemaj medioj (ekzemple, ĉiuj bibliotekoj necesaj por la funkciado de GNOME aŭ KDE-programoj).

Krom la norma sistemo medio (runtime), instalita tra speciala deponejo, kromaj dependecoj (pakaĵo) necesaj por ke la aplikaĵo funkciu estas liveritaj. Entute, rultempo kaj pakaĵo formas la plenigon de la ujo, malgraŭ tio, ke rultempo estas instalita aparte kaj ligita al pluraj ujoj samtempe, kio ebligas al vi eviti duobligi sistemajn dosierojn komunajn al ujoj. Unu sistemo povas havi plurajn malsamajn rultempojn instalitajn (GNOME, KDE) aŭ plurajn versiojn de la sama rultempo (GNOME 3.26, GNOME 3.28). Ujo kun aplikaĵo kiel dependeco uzas ligon nur al specifa rultempo, sen konsideri la individuajn pakaĵojn kiuj konsistigas la rultempon. Ĉiuj mankantaj elementoj estas enpakitaj rekte kun la aplikaĵo. Kiam ujo estas formita, la rultempa enhavo estas muntita kiel la /usr-disko, kaj la pakaĵo estas muntita en la /app-dosierujo.

La plenigo de rultempo kaj aplikaj ujoj estas formita uzante teknologion OSTree, en kiu la bildo estas atome ĝisdatigita de Git-simila deponejo, kiu ebligas al vi apliki versikontrolajn metodojn al la komponantoj de la distribuo (ekzemple, vi povas rapide revenigi la sistemon al antaŭa stato). RPM-pakaĵoj estas tradukitaj en la OSTree-deponejon uzante specialan tavolon rpm-ostree. Aparta instalado kaj ĝisdatigo de pakaĵoj ene de la labormedio ne estas subtenataj; la sistemo estas ĝisdatigita ne je la nivelo de individuaj komponantoj, sed kiel tuto, atome ŝanĝante sian staton. Provizas ilojn por apliki ĝisdatigojn pliige, forigante la bezonon tute anstataŭigi la bildon kun ĉiu ĝisdatigo.

La generita izolita medio estas tute sendependa de la distribuo uzata, kaj kun taŭgaj pakaj agordoj, ne havas aliron al dosieroj kaj procezoj de la uzanto aŭ la ĉefa sistemo, ne povas rekte aliri la ekipaĵon, escepte de eligo per DRI, kaj la reto subsistemo. Grafika eligo kaj eniga organizo efektivigita uzante la Wayland-protokolon aŭ per X11-ingo plusendado. Interagado kun la ekstera medio baziĝas sur la mesaĝsistemo DBus kaj speciala Portals API. Por izolado estas uzata intertavolo Bubblewrap kaj tradiciaj Linukso kontenera virtualigo teknologioj bazita sur la uzo de cgroups, nomspacoj, Seccomp kaj SELinux. PulseAudio estas uzata por eligi sonon.

fonto: opennet.ru

Aldoni komenton