dega e re stabile e mjetit , i cili ofron një sistem për ndërtimin e paketave të vetë-mjaftueshme, të pa të lidhura me shpërndarjet specifike të Linux-it dhe që ekzekutohen në një kontejner të veçantë, duke izuluar aplikacionin nga pjesa tjetër e sistemit. Mbështetje për ekzekutimin e paketave Flatpak sigurohet për Arch Linux, , Debian, Fedora, Gentoo, Mageia, Linux Mint dhe Ubuntu. Paketat me Flatpak janë përfshirë në repositorin e Fedora dhe mbështeten në programin e menaxhimit të aplikacioneve GNOME.
Karakteristikat kryesore në degen Flatpak 1.4:
- ĂshtĂ« ndryshuar organizimi i konfigurimit tĂ« parametrave tĂ« depozita tĂ« jashtme. NĂ« katalogun /etc/flatpak/remotes.d, nĂ« vend tĂ« skedarĂ«ve *.conf me konfigurime, tani aplikohet skedarĂ« tĂ« zakonshĂ«m «.flatpakrepo», tĂ« cilat importohen automatikisht gjatĂ« pĂ«rdorimit tĂ« parĂ« tĂ« flatpak. KĂ«ta skedarĂ« mund tĂ« redaktohen dhe fshihen lirisht, nĂ« pĂ«rputhje me depozitat e shtuar manualisht;
- ĂshtĂ« ndryshuar ndjeshĂ«m organizimi i instalimeve tĂ« paketave tĂ« disponueshme pĂ«r tĂ« gjithĂ« sistemin. NĂ« versionet e kaluara, fillimisht, paketa instalohej nĂ« njĂ« katalog temporar tĂ« pĂ«rdoruesit, dhe pastaj procesi system-helper thirrej pĂ«r ta importuar nĂ« sistem nga ky katalog. Kjo qasje shkaktonte shpenzim tĂ« madh tĂ« burimeve tĂ« diskut, hyrje/dalje tĂ« tepĂ«rta dhe probleme tĂ« mundshme me sigurinĂ«. NĂ« versionin e ri, pĂ«r instalimin e paketimeve sistemike, pĂ«rdoret njĂ« sistem i ri skedarĂ«sh FUSE, nĂ« tĂ« cilin pĂ«rdoruesi mund tĂ« shkruajĂ« tĂ« dhĂ«na, por pas pĂ«rfundimit tĂ« shkruarjes, aksesin nĂ« skedarĂ«t e shkruar bllokohet pĂ«r pĂ«rdoruesin. Qasja e re parashikon nevojĂ«n pĂ«r tĂ« krijuar njĂ« pĂ«rdorues tĂ« veçantĂ« pĂ«r flatpak (siç Ă«shtĂ« default «flatpak») dhe ndryshimin e rregullave tĂ« SELinux;
- ĂshtĂ« shtuar mundĂ«sia pĂ«r tĂ« pĂ«rcaktuar nga ana e sistemit klient filtrat pĂ«r depozitat e jashtme. NĂ«pĂ«rmjet filtrave mund tĂ« kufizoni aplikacionet e dukshme nĂ« depo, duke pĂ«rdorur modelin e listave tĂ« bardha dhe tĂ« zeza;
- ĂshtĂ« shtuar njĂ« API bibliotekor pĂ«r tĂ« shtuar depozita tĂ« jashtme nga skedarĂ«t flatpakref;
- ĂshtĂ« shtuar njĂ« profil seccomp pĂ«r Docker, i cili lejon ekzekutimin e flatpak nĂ« brenda kontejnerĂ«ve;
- ĂshtĂ« pĂ«rmirĂ«suar mundĂ«sia pĂ«r instalim nga disa burime P2P (pĂ«rmes uniteteve USB ose pĂ«rmes rrjetit lokal);
- Në komandën «flatpak remote-ls» është siguruar filtrimi automatik i aplikacioneve për të cilat ka skaduar koha e mbështetjes;
- NĂ« «flatpak remote-ls» dhe «flatpak remote-info» Ă«shtĂ« realizuar opsioni «âcached» pĂ«r tĂ« dorĂ«zuar informacionin mbi bazĂ«n e tĂ« dhĂ«nave tĂ« mbajtura lokal.
- Shtuar mundësinë e specifikimit të versionit të skadimit të paketës, pas së cilës do të shfaqet një ofertë për t'u kaluar në një degë të re;
- Shtuar opsioni "âsocket=pcsc" pĂ«r tĂ« aksesuar karta smart;
- Shtuar mbështetje për sisteme që përmbajnë disa karta grafike NVIDIA;
- Implementuar mbështetje për dconf të vendosur në sandbox;
- NĂ« komandĂ«n build-update-repo janĂ« shtuar opsionet "âno-update-[summary,appstream]" dhe "âstatic-delta-ignore-ref=PATTERN";
- Rritur ndjeshëm shpejtësinë e rinovimit të degevë appstream për depo të mëdha.
Kujtojmë se Flatpak u jep zhvilluesve të aplikacioneve mundësinë për të thjeshtuar shpërndarjen e programeve të tyre, që nuk janë në depo të zakonshme të distribucioneve, përmes një konteineri universale pa formimin e ndarjeve të veçanta për çdo distribucion. Për përdoruesit që kujdesen për sigurinë, Flatpak lejon ekzekutimin e aplikacioneve problematike në një kontenier, duke ofruar akses vetëm në funksionet rrjet dhe skedarët e përdoruesit që lidhen me aplikacionin. Për përdoruesit që janë të interesuar për risitë, Flatpak lejon instalimin e releve më të reja testuese dhe stabile të aplikacioneve, pa nevojën e ndryshimeve në sistem. Për shembull, aktualisht paketat Flatpak janë tashmë për LibreOffice, Firefox, GIMP, Inkscape, Kdenlive, Steam, 0 A.D., Visual Studio Code, VLC, Slack, Skype, Telegram Desktop, Android Studio etj.
Për të reduktuar madhësinë e paketës, ajo përfshin vetëm varësitë specifike për aplikacionet, ndërsa bibliotekat sistemore dhe grafike bazë (Gtk+, Qt, bibliotekat GNOME dhe KDE etj.) janë të organizuara si runtime të përshtatshme për tu lidhur. Dallimi kyç midis Flatpak dhe Snap është se Snap përdor komponentët e mjedisit të sistemit kryesor dhe izolim në bazë të filtrimit të thirrjeve sistemore, ndërsa Flatpak krijon një kontenier të veçantë nga sistemi dhe operon me grupe të mëdha runtime, duke ofruar si varësi jo paketa, por mjedise sistemore të zakonshme (p.sh., të gjitha bibliotekat e nevojshme për funksionimin e aplikacioneve GNOME ose KDE).
Përveç mjedisit tipik sistemor (runtime), i instaluar përmes një , ofrohen varësi shtesë (bundle), të nevojshme për funksionimin e aplikacionit. Në përmbledhje, runtime dhe bundle formojnë mbushjen e kontejnerit, duke qenë se runtime instalohet veçmas dhe lidhet menjëherë me disa kontejnerë, çka lejon të shmangen duplicimet e skedarëve sistemorë të zakonshëm për kontejnerët. Në një sistem mund të instalohen disa runtime të ndryshme (GNOME, KDE) ose disa versione të një runtime-i të vetëm (GNOME 3.26, GNOME 3.28). Një kontejner me aplikacion si varësi përdor lidhjen vetëm me një runtime të caktuar, pa marrë parasysh paketat e veçanta nga të cilat përbëhet runtime. Të gjitha elementet mungesë paketohen drejtpërdrejt me aplikacionin. Kur formohet kontejneri, përmbajtja e runtime-it montrohet si seksioni /usr, ndërsa bundle montrohet në direktoriumin /app.
Mbushja e runtime dhe kontejnerëve të aplikacioneve formohet duke përdorur teknologjinë , me të cilën imazhi përditësohet në mënyrë atomike nga një depo Git-të ngjashme, duke lejuar aplikimin e metodave të kontrollit të versioneve për komponentët e distribucionit (për shembull, mund të rikthejmë shpejt sistemin në një gjendje të kaluar). Paketat RPM përkthehen në depo OSTree përmes një shtrese të veçantë . Instalimi dhe përditësimi i paketave brenda ambientit të punës nuk përkrahet, sistemi përditësohet jo në nivelin e komponenteve të veçanta, por në tërësi, duke ndryshuar në mënyrë atomike gjendjen e tij. Ofrohen mjete për aplikimin inkremental të përditësimeve, duke eliminuar nevojën për zëvendësimin e plotë të imazhit me çdo përditësim.
Mjedisi i izoluar i formuar është plotësisht i pavarur nga distribuimi i përdorur dhe, me konfigurimet e duhura të paketës, nuk ka qasje në skedarët dhe proceset e përdoruesit apo të sistemit kryesor, nuk mund të qaset drejtpërdrejt te pajisjet, përveç daljes përmes DRI dhe nënësistemit rrjetor. Dalja e grafikës dhe organizimi i hyrjes nëpërmjet protokollit Wayland ose përmes kalimit të soketëve X11. Ndërveprimi me ambientin e jashtëm ndërtohet mbi sistemin e shkëmbimit të mesazheve DBus dhe një API të veçantë Portals. Për izolimin shtresa dhe teknologjitë tradicionale të virtualizimit të konteinerëve për Linux, të bazuara në përdorimin e cgroups, hapësirave të emrave (namespaces), Seccomp dhe SELinux. Për daljen e zërit përdoret PulseAudio.
Burimi: opennet.ru
