Tso tawm ntawm cov txheej txheem ntawm cov pob khoom siv tus kheej txaus Flatpak 1.16.0

Tom qab ob thiab ib nrab xyoo ntawm txoj kev loj hlob, ib ceg ruaj khov tshiab ntawm Flatpak 1.16 cov cuab yeej tau raug luam tawm, muab cov txheej txheem rau kev tsim cov pob khoom siv tus kheej uas tsis khi rau Linux faib tshwj xeeb thiab khiav hauv lub thawv tshwj xeeb uas cais cov ntawv thov los ntawm tus so ntawm lub system. Kev them nyiaj yug rau khiav Flatpak tej pob khoom yog muab rau Fedora, CentOS, Debian, Arch Linux, Gentoo, Linux Mint, Alt Linux thiab Ubuntu. Cov pob Flatpak suav nrog hauv Fedora repository thiab tau txais kev txhawb nqa hauv haiv neeg GNOME thiab KDE daim ntawv thov kev tswj hwm cov kev pab cuam.

Cov kev hloov tshiab tseem ceeb hauv Flatpak 1.16 ceg:

  • Kev hloov pauv mus rau kev siv Meson los ua ke system tau ua. Kev them nyiaj yug rau lub tsev nrog Autotools tau raug txiav lawm. Tsev Flatpak tam sim no xav tau yam tsawg kawg version 3.5 ntawm Python ntawm koj lub cev.
  • Ua raws li kev sib koom nkag mus rau gssproxy socket, tso cai rau kev siv Kerberos authentication hauv cov ntawv thov khiav hauv hom kev cais sandbox.
  • Thaum tsim ib lub qhov (socket) rau Wayland, qhov kev ruaj ntseg-cov ntsiab lus txuas ntxiv tau qhib, los ntawm kev sib xyaw server tuaj yeem txheeb xyuas thiab txwv tsis pub siv khiav hauv sandbox cais hom. Ntxiv kev xaiv "--socket=inherit-wayland-socket" kom tau txais lub qhov (socket) uas twb muaj lawm rau Wayland.
  • Tom qab kev txhim kho lossis hloov kho daim ntawv thov, D-Bus kev sib kho lub tsheb npav raug txiav rov qab los khaws cov kev pabcuam D-Bus tshiab xa tawm los ntawm daim ntawv thov.
  • Distros tau muab lub peev xwm los txhais Flatpak pob repositories siv "/ usr/share/flatpak/remotes.d" directory ntxiv rau "/etc/flatpak/remotes.d".
  • Kev ua haujlwm tau ua tiav los cais cov ntaub ntawv loj hauv cov ntawv rau hauv cov qauv me me.
  • Ntxiv "--device = input" kev xaiv nkag mus rau cov khoom siv nkag ntawm /dev/input.
  • Txhawm rau cais cov ntawv thov, ib ceg tshiab ntawm bubblewrap 0.11 toolkit tau raug siv. Kev faib tawm uas tsim Flatpak siv bwrap system executable yuav tsum muaj tsawg kawg yog bubblewrap version 0.11. Txhim kho kev tiv thaiv kev tsim cov nested usernamespaces hauv sandbox ib puag ncig.
  • Kev teeb tsa yooj yim ntawm cov lus ntxiv. Kev tshawb nrhiav lus yog muab los ntawm cov neeg siv cov ntaub ntawv muab los ntawm AccountsService DBus kev pabcuam.
  • Cov ntawv thov uas siv kev sib cais sandbox, xws li cov raws li WebKit cav, raug tso cai siv AT-SPI raws tu qauv los cuam tshuam nrog cov neeg nyeem ntawv. Ntxiv "flatpak khiav -a11y-tus kheej-npe" kev xaiv los xaiv lub tsheb npav los ntawm cov chaw tsis taus nkag mus.
  • Thaum ua tiav cov lus txib "flatpak run -vv ", tag nrho cov kev siv sandbox cais tawm tau tso tawm.
  • Ntxiv qhov "--device = usb" kev xaiv, nrog rau "--usb" thiab "--no-usb" tsis los tswj cov ntawv thov nkag mus rau USB li.
  • Ntxiv kev txhawb nqa rau KCompletion lub moj khaum, siv rau kev ua tiav ntawm kev tshawb nrhiav cov yuam sij hauv KDE.
  • Ntxiv ib puag ncig hloov pauv "FLATPAK_DATA_DIR" thiab "FLATPAK_DOWNLOAD_TMPDIR" txhawm rau hla cov npe nrog cov ntaub ntawv (/usr/share/flatpak) thiab rub tawm cov ntaub ntawv ib ntus (/var/tmp).
  • Ntxiv kev khiav tawm ib ntus tso tawm kom pom qhov kev nce qib ntawm kev ua haujlwm hauv davhlau ya nyob twg emulators.

Cia peb nco qab tias Flatpak ua kom yooj yim rau kev faib cov kev pab cuam uas tsis suav nrog hauv cov chaw muab khoom faib tawm los ntawm kev npaj ib lub thawv thoob ntiaj teb, uas ua rau cov neeg tsim kho cov kev pab cuam los ntawm qhov xav tau los tsim cov rooj sib tham sib cais rau txhua qhov kev faib tawm. Rau cov neeg siv kev ruaj ntseg, Flatpak muab lub peev xwm los khiav cov lus nug hauv ib lub thawv, muab kev xaiv nkag rau tsuas yog tus neeg siv lub luag haujlwm tsim nyog thiab cov ntaub ntawv. Rau cov neeg siv txaus siab rau cov khoom tshiab, Flatpak tso cai rau koj los nruab qhov kev sim tshiab thiab ruaj khov tso tawm ntawm daim ntawv thov yam tsis tas yuav hloov pauv rau lub kaw lus. Piv txwv li, Flatpak tej pob khoom yog tsim rau LibreOffice, GIMP, Inkscape, Kdenlive, Chav, 0 AD, Visual Studio Code, VLC, Slack, Telegram Desktop, Android Studio, thiab lwm yam.

Txhawm rau txo qhov loj me, tsuas yog daim ntawv thov tshwj xeeb kev cia siab tau suav nrog hauv pob. Cov tsev qiv ntawv yooj yim thiab cov duab duab (GTK, Qt, GNOME thiab KDE cov tsev qiv ntawv, thiab lwm yam) tau muab rau hauv daim ntawv ntawm plug-in standard runtime ib puag ncig. Qhov sib txawv tseem ceeb ntawm Flatpak thiab Snap yog tias Snap siv cov khoom ntawm lub hauv paus system ib puag ncig thiab kev sib cais raws li kev lim dej hu, thaum Flatpak tsim lub thawv cais tawm ntawm lub kaw lus thiab ua haujlwm nrog cov sijhawm ua haujlwm loj, tsis muab cov pob khoom raws li kev cia siab, tab sis tus qauv. system ib puag ncig (piv txwv li, tag nrho cov tsev qiv ntawv tsim nyog rau kev ua haujlwm ntawm GNOME lossis KDE cov haujlwm).

Ntxiv nrog rau cov txheej txheem txheej txheem ib puag ncig (runtime), ntsia los ntawm lub chaw cia khoom tshwj xeeb, ntxiv kev cia siab (khoom) xav tau rau kev ua haujlwm ntawm daim ntawv thov raug muab. Nyob rau hauv tag nrho, "runtime" thiab "bundle" tsim cov ntsiab lus ntawm lub thawv, thaum "runtime" yog ntsia nyias thiab khi rau ob peb lub thawv ib zaug, uas tso cai rau koj kom tsis txhob duplicating system cov ntaub ntawv ntau rau ntim.

Ib lub kaw lus tuaj yeem muaj ntau qhov sib txawv "runtimes" ntsia (GNOME, KDE) lossis ntau lub versions ntawm tib "runtime" (GNOME 46, GNOME 47). Lub thawv nrog ib daim ntawv thov raws li kev vam khom siv tsuas yog khi rau ib lub sijhawm tshwj xeeb, tsis suav nrog cov pob khoom ntawm tus kheej uas tsim lub sijhawm xaiv. Tag nrho cov ntsiab lus uas ploj lawm yog ntim ncaj qha nrog daim ntawv thov. Thaum tsim ib lub thawv, cov ntsiab lus ntawm "runtime" yog mounted li / usr muab faib, thiab "bundle" yog mounted nyob rau hauv /app directory.

Lub sijhawm ua haujlwm thiab daim ntawv thov ntim tau tsim los siv OSTree thev naus laus zis, uas cov duab tau hloov kho atomically los ntawm Git-zoo li repository, uas tso cai rau cov txheej txheem tswj hwm los siv rau cov khoom faib (piv txwv li, koj tuaj yeem yob rov qab lub kaw lus mus rau yav dhau los. xeev). RPM tej pob khoom raug txhais rau hauv OSTree repository siv rpm-ostree txheej.

Kev xaiv kev teeb tsa thiab hloov kho cov pob khoom hauv qhov chaw ua haujlwm tsis tau txais kev txhawb nqa - lub kaw lus tau hloov kho tsis yog nyob rau theem ntawm tus kheej cov khoom, tab sis tag nrho, atomically hloov nws lub xeev. Muab cov cuab yeej los siv cov kev hloov tshiab nce ntxiv, tshem tawm qhov xav tau los hloov tag nrho cov duab nrog txhua qhov hloov tshiab.

Lub chaw tsim khoom raug cais tawm yog ywj pheej ntawm kev faib khoom siv thiab, nrog rau cov pob khoom tsim nyog, tsis muaj kev nkag mus rau cov ntaub ntawv thiab cov txheej txheem ntawm tus neeg siv lossis cov txheej txheem tseem ceeb, thiab tsis tuaj yeem nkag mus ncaj qha rau cov cuab yeej, tshwj tsis yog cov zis ntawm DRI. Graphics tso zis thiab lub koom haum input yog siv los ntawm Wayland raws tu qauv los yog ntawm X11 socket forwarding. Kev cuam tshuam nrog ib puag ncig sab nraud yog tsim los ntawm DBus kev xa xov thiab ib qho tshwj xeeb Portals API.

Rau kev sib cais, Bubblewrap txheej thiab ib txwm siv Linux ntim virtualization technologies, raws li kev siv cgroups, namespaces, Seccomp thiab SELinux. PulseAudio lossis PipeWire yog siv rau cov zis suab. Thaum tsim ib pob, kev sib cais tuaj yeem raug cuam tshuam, uas yog siv los ntawm cov neeg tsim khoom ntawm ntau pob nrov kom tau txais kev nkag mus rau tag nrho cov ntaub ntawv kaw lus thiab txhua yam khoom siv hauv lub cev.

Piv txwv li, GIMP, VSCodium, PyCharm, Octave, Inkscape, Audacity, thiab VLC tuaj nrog ib qho kev txwv cais tawm uas tawm tag nrho nkag mus rau hauv cov npe hauv tsev. Yog tias cov pob khoom uas muaj kev nkag mus rau cov npe hauv tsev raug cuam tshuam, txawm tias muaj "sandboxed" daim ntawv lo hauv cov lus piav qhia ntawm pob, tus neeg tawm tsam tsuas yog xav hloov cov ntaub ntawv ~ / .bashrc los ua nws cov cai. Ib qho teeb meem tshwj xeeb yog tswj hwm cov kev hloov pauv ntawm cov pob khoom thiab kev ntseeg siab ntawm cov neeg tsim cov pob khoom, uas feem ntau tsis cuam tshuam nrog cov phiaj xwm loj lossis kev faib khoom.

Tau qhov twg los: opennet.ru

Ntxiv ib saib