Lëshimi i sistemit të pakove të vetë-mjaftueshme Flatpak 1.16.0

Pas dy vjet e gjysmë zhvillimi, është publikuar dega e re stabile e mjetit Flatpak 1.16, i cili ofron një sistem për ndërtimin e pakove të vetëqëndrueshme, të pa lidhura me shpërndarje të caktuara Linux dhe që ekzekutohen në një konteiner të veçantë, që izolon aplikacionin nga pjesa tjetër e sistemit. Mbështetje për ekzekutimin e pakove Flatpak është siguruar për Fedora, CentOS, Debian, Arch Linux, Gentoo, Linux Mint, Alt Linux dhe Ubuntu. Pakot Flatpak janë përfshirë në depozitat e Fedora dhe mbështeten në programet menaxhuese të aplikacioneve GNOME dhe KDE.

Risi kryesore në degën Flatpak 1.16:

  • ËshtĂ« realizuar kalimi nĂ« pĂ«rdorimin e sistemit tĂ« ndĂ«rtimit Meson. MbĂ«shtetja pĂ«r ndĂ«rtim me mjetin Autotools Ă«shtĂ« ndĂ«rprerĂ«. PĂ«r tĂ« ndĂ«rtuar Flatpak tani kĂ«rkohet tĂ« ketĂ« nĂ« sistem Python, tĂ« paktĂ«n versionin 3.5.
  • ËshtĂ« realizuar ndarja e soketit gssproxy, e cila lejon pĂ«rdorimin e autentifikimit pĂ«rmes Kerberos nĂ« aplikacione, tĂ« cilat ekzekutohen nĂ« modin e izolimit sandbox.
  • Kur krijohet njĂ« soket pĂ«r Wayland Ă«shtĂ« pĂ«rdorur shtrirja security-context, pĂ«rmes sĂ« cilĂ«s kompozita server mund tĂ« identifikojĂ« dhe tĂ« kufizojĂ« aplikacionet e ekzekutuara nĂ« modin e izolimit sandbox. ËshtĂ« shtuar opsioni "—socket=inherit-wayland-socket" pĂ«r trashĂ«giminĂ« e soketit ekzistues pĂ«r Wayland.
  • Pas instalimit ose pĂ«rditĂ«simit tĂ« aplikacioneve, Ă«shtĂ« siguruar rinovimi automatik i konfiguracionit tĂ« shiritit sesion D-Bus pĂ«r tĂ« kapur shĂ«rbimet e reja tĂ« eksportuara nga aplikacionet e D-Bus.
  • ShpĂ«rndarjet kanĂ« marrĂ« mundĂ«sinĂ« tĂ« pĂ«rcaktojnĂ« depozitat me pakot Flatpak, duke pĂ«rdorur katalogun "/usr/share/flatpak/remotes.d", pĂ«rveç "/etc/flatpak/remotes.d".
  • JanĂ« kryer punĂ« pĂ«r ndarjen e skedarĂ«ve tĂ« mĂ«dhenj me kod burimor nĂ« module tĂ« vogla.
  • ËshtĂ« shtuar opsioni "—device=input" pĂ«r qasje nĂ« pajisjet e hyrjes pĂ«rmes /dev/input.
  • PĂ«r izolimin e aplikacioneve Ă«shtĂ« pĂ«rdorur dega e re e mjetit bubblewrap 0.11. NĂ« shpĂ«rndarjet qĂ« ndajnĂ« Flatpak duke pĂ«rdorur skedarin ekzekutiv sistemor bwrap, Ă«shtĂ« e nevojshme qĂ« tĂ« kete tĂ« paktĂ«n versionin bubblewrap 0.11. ËshtĂ« pĂ«rforcuar mbrojtja kundĂ«r krijimit tĂ« hapĂ«sirave tĂ« brendshme tĂ« identifikuesve tĂ« pĂ«rdoruesit nĂ« ambientet sandbox.
  • ËshtĂ« lehtĂ«suar konfigurimi i gjuhĂ«ve shtesĂ«. ËshtĂ« siguruar pĂ«rcaktimi i gjuhĂ«ve bazuar nĂ« informacionin e pĂ«rdoruesve, i dhĂ«nĂ« nga shĂ«rbimi DBus-SERVICE AccountsService.
  • Aplikacionet qĂ« pĂ«rdorin izolimin e sandboxes tĂ« thelluar, si ato qĂ« bazohen nĂ« motorin WebKit, lejohet tĂ« pĂ«rdorin protokollin AT-SPI pĂ«r tĂ« ndĂ«rvepruar me lexuesit e ekranit. U shtua mundĂ«sia "flatpak run —a11y-own-name" pĂ«r tĂ« zgjedhur autobusin pĂ«rmes tĂ« cilit bĂ«het akses nĂ« mjetet pĂ«r personat me aftĂ«si tĂ« kufizuara.
  • Kur ekzekutohet komanda "flatpak run -vv ", shfaqen tĂ« gjitha parametrat e reporteve tĂ« sandboxes tĂ« aplikueshĂ«m.
  • U shtua opsioni "—device=usb", si dhe parametrat "—usb" dhe "—no-usb" pĂ«r tĂ« menaxhuar aksesin e aplikacionit nĂ« pajisjet USB.
  • U shtua mbĂ«shtetje pĂ«r framework-un KCompletion, i cili pĂ«rdoret pĂ«r aut kompletimin e fjalĂ«ve kyçe nĂ« KDE.
  • U shtuan variablat e mjedisit "FLATPAK_DATA_DIR" dhe "FLATPAK_DOWNLOAD_TMPDIR" pĂ«r tĂ« rivendosur katalogĂ«t e tĂ« dhĂ«nave (\/usr\/share\/flatpak) dhe skedarĂ«t e pĂ«rkohshĂ«m tĂ« shkarkuar (\/var\/tmp).
  • U shtua output-i i sekencave escape pĂ«r tĂ« treguar progresin e operacioneve nĂ« emulatorĂ«t e terminaleve.

KujtojmĂ« se Flatpak lehtĂ«son shpĂ«rndarjen e programeve qĂ« nuk janĂ« pjesĂ« e depove standarde tĂ« distribucioneve, duke pĂ«rgatitur njĂ« kontenier universale, duke i liruar zhvilluesit nga nevoja pĂ«r tĂ« krijuar ndarje tĂ« veçanta pĂ«r çdo distribucion. PĂ«rdoruesit qĂ« shqetĂ«sohen pĂ«r sigurinĂ«, Flatpak u ofron mundĂ«sinĂ« pĂ«r tĂ« ekzekutuar njĂ« aplikacion me dyshime nĂ« njĂ« kontenier, duke ofruar akses selektiv vetĂ«m nĂ« funksionet rr сДт dhe skedarĂ«t e pĂ«rdoruesit. PĂ«rdoruesit qĂ« janĂ« tĂ« interesuar pĂ«r risitĂ«, Flatpak u lejon tĂ« instalojnĂ« versionet mĂ« tĂ« reja tĂ« aplikacioneve testuese dhe stabile pa pasur nevojĂ« pĂ«r tĂ« bĂ«rĂ« ndryshime nĂ« sistem. PĂ«r shembull, pakot Flatpak janĂ« krijuar pĂ«r LibreOffice, GIMP, Inkscape, Kdenlive, Steam, 0 A.D., Visual Studio Code, VLC, Slack, Telegram Desktop, Android Studio, etj.

Për të reduktuar madhësinë, në paketë përfshihen vetëm varësi specifike për aplikacionin. Bibliotekat bazë të sistemeve dhe grafike (GTK, Qt, bibliotekat GNOME dhe KDE etj.) ofrohen si runtime të zakonshme. Dallimi kryesor midis Flatpak dhe Snap është se Snap përdor komponentët e mjedisit të sistemit kryesor dhe izolimin në bazë të filtrimit të thirrjeve sistemore, ndërsa Flatpak krijon një kontejner të veçantë nga sistemi dhe operon me grupe të mëdha runtime, duke ofruar si varësi jo paketa, por mjedise të zakonshme sistemore (p.sh., të gjitha bibliotekat e nevojshme për të funksionuar aplikacionet GNOME ose KDE).

PĂ«rveç mjedisit tĂ« zakonshĂ«m sistemor (runtime), i instaluar pĂ«rmes njĂ« depoje speciale, ofrohen varĂ«si shtesĂ« (bundle) qĂ« kĂ«rkohen pĂ«r funksionimin e aplikacionit. NĂ« total, ‘runtime’ dhe ‘bundle’ formojnĂ« pĂ«rmbajtjen e kontejnerit, duke pasur parasysh qĂ« ‘runtime’ instalohet veçmas dhe lidhet menjĂ«herĂ« me disa kontejnerĂ«, gjĂ« qĂ« lejon shmangien e kopjimit tĂ« skedarĂ«ve sistemorĂ« tĂ« zakonshĂ«m pĂ«r kontejnerĂ«t.

NĂ« njĂ« sistem mund tĂ« jenĂ« instaluar disa ‘runtime’ tĂ« ndryshme (GNOME, KDE) ose disa versione tĂ« njĂ« ‘runtime’ (GNOME 46, GNOME 47). Konteineri me aplikacion si varĂ«si pĂ«rdor lidhjen vetĂ«m me njĂ« ‘runtime’ tĂ« caktuar, pa marrĂ« parasysh paketat e veçanta qĂ« formojnĂ« ‘runtime’ e zgjedhura. TĂ« gjitha elementet e munguar paketohen drejtpĂ«rdrejt me aplikacionin. Kur krijohet njĂ« kontejner, pĂ«rmbajtja e ‘runtime’ montoset si pjesĂ« e /usr, ndĂ«rsa ‘bundle’ montoset nĂ« direktoriumin /app.

PĂ«rmbajtja e ‘runtime’ dhe kontejnerĂ«ve tĂ« aplikacioneve formohet duke pĂ«rdorur teknologjinĂ« OSTree, e cila mundĂ«son pĂ«rditĂ«simin atomar tĂ« imazhit nga njĂ« depo si Git, duke lejuar aplikimin e metodave tĂ« menaxhimit tĂ« versioneve nĂ« komponentĂ«t e shpĂ«rndarjes (p.sh., mund tĂ« kthehet shpejt sistemi nĂ« njĂ« gjendje tĂ« kaluar). Paketat RPM konvertohen nĂ« depo OSTree pĂ«rmes njĂ« shtrese rpm-ostree.

Instalimi selektiv dhe përditësimi i paketeve brenda mjedisit të punës nuk mbështetet - sistemi përditësohet jo në nivelin e komponentëve të veçantë, por si një e tërë, duke ndërruar atomarisht gjendjen e tij. Ofrohen mjete për aplikimin incremental 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 distribucioni i përdorur dhe, me konfigurimin e duhur të paketës, nuk ka akses në skedarët dhe proceset e përdoruesit ose të sistemit kryesor, si dhe nuk mund të qaset drejtpërdrejt në pajisje, përveç daljes përmes DRI. Dalja e grafikës dhe organizimi i hyrjes janë implementuar përmes protokollit Wayland ose përmes kalimit të soketëve X11. Bashkëpunimi me mjedisin e jashtëm është ndërtuar nëpërmjet sistemit të shkëmbimit të mesazheve DBus dhe një API të posaçëm Portals.

Për izolimin përdoret një shtresë Bubblewrap dhe teknologji tradicionale për virtualizim me kontejnerë në 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 ose PipeWire. Gjatë krijimit të paketës, izolimi mund të çaktivizohet, gjë që përdoret nga zhvilluesit e shumë paketimeve popullore për të fituar akses të plotë në FS dhe në të gjitha pajisjet në sistem.

Për shembull, me regjimin e izolimit të kufizuar, i cili lë të gjithë aksesin në katalogun e shtëpisë, ofrohen paketa si GIMP, VSCodium, PyCharm, Octave, Inkscape, Audacity dhe VLC. Në rastin e kompromentimit të paketimeve me akses në katalogun e shtëpisë, pavarësisht nga prania e etiketës «sandboxed» në përshkrimin e paketës, për sulmuesin për të ekzekutuar kodin e tij mjafton të modifikojë skedarin ~/.bashrc. Një çështje e veçantë është kontrolli mbi ndryshimet në paketa dhe besimi tek ndërtuesit e paketimeve, të cilët shpesh nuk lidhen me projektin kryesor ose me distribucionet.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster