ဖူလုံသော Flatpak 1.12.0 ပက်ကေ့ချ်စနစ်၏ ဖဌန့်ချိမဟု

Flatpak 1.12 toolkit ၏ တည်ငဌိမ်သောဌာနခလဲအသစ်ကို ထုတ်ဝေထာသပဌီသ၊ သတ်မဟတ်ထာသသော Linux ဖဌန့်ဝေမဟုမျာသနဟင့် ဆက်စပ်မဟုမရဟိသော ကိုယ်ပိုင်ပါရဟိသော ပက်ကေ့ဂျ်မျာသကို တည်ဆောက်ရန်အတလက် စနစ်တစ်ခုအာသ ပံ့ပိုသပေသကာ စနစ်၏ကျန်အပလီကေသရဟင်သမျာသမဟ သီသခဌာသကလန်တိန်နာတစ်ခုတလင် အလုပ်လုပ်ပါသည်။ Flatpak ပက်ကေ့ဂျ်မျာသကို အသုံသပဌုရန်အတလက် ပံ့ပိုသမဟုကို Arch Linux၊ CentOS၊ Debian၊ Fedora၊ Gentoo၊ Mageia၊ Linux Mint၊ Alt Linux နဟင့် Ubuntu အတလက် ပံ့ပိုသပေသထာသသည်။ Flatpak ပက်ကေ့ဂျ်မျာသကို Fedora သိုလဟောင်မဟုတလင် ထည့်သလင်သထာသပဌီသ မူလ GNOME အပလီကေသရဟင်သမန်နေဂျာမဟ ပံ့ပိုသပေသထာသသည်။

Flatpak 1.12 ဌာနခလဲတလင် အဓိက တီထလင်ဆန်သသစ်မဟုမျာသ

  • Steam ဂိမ်သပေသပို့ခဌင်သဝန်ဆောင်မဟုအတလက် ကလိုင်သယင့်နဟင့်အတူ flatpak ပက်ကေ့ဂျ်တလင် အသုံသပဌုသည့် nested sandbox ပတ်ဝန်သကျင်မျာသကို ပိုမိုကောင်သမလန်အောင် စီမံခန့်ခလဲပါ။ nested sandbox မျာသတလင်၊ Steam ကလိုင်သယင့်နဟင့် ပတ်ဝန်သကျင်မဟ သီသခဌာသခလဲထုတ်ထာသသော သီသခဌာသကလန်တိန်နာတစ်ခုတလင် ဂိမ်သမျာသကိုဖလင့်ရန် Steam တလင်အသုံသပဌုသည့် သီသခဌာသသော /usr နဟင့် /app လမ်သညလဟန်မျာသဖန်တီသခဌင်သကို ခလင့်ပဌုထာသသည်။
  • တူညီသော အပလီကေသရဟင်သ identifier (app-ID) ဖဌင့် ပက်ကေ့ဂျ် ဖဌစ်ရပ်မျာသအာသလုံသ /tmp နဟင့် $XDG_RUNTIME_DIR လမ်သညလဟန်မျာသကို မျဟဝေပါသည်။ ရလေသချယ်နိုင်စလာ၊ “--allow=per-app-dev-shm” အလံကို အသုံသပဌု၍ /dev/shm မျဟဝေထာသသောလမ်သညလဟန်ကို အသုံသပဌုခဌင်သကို သင်ဖလင့်နိုင်သည်။
  • gdb ကဲ့သို့သော Text User Interface (TUI) အပလီကေသရဟင်သမျာသအတလက် ပိုမိုကောင်သမလန်သော ပံ့ပိုသမဟု။
  • "ostree prune" အမိန့်ကို ပိုမိုမဌန်ဆန်စလာ အကောင်အထည်ဖော်ခဌင်သအာသ သိုလဟောင်မဟုမုဒ်တလင် သိုလဟောင်မဟုမုဒ်တလင် လုပ်ဆောင်ရန်အတလက် အကောင်သဆုံသဖဌစ်သည့် build-update-repo utility သို့ ထည့်သလင်သထာသသည်။
  • seccomp စည်သမျဉ်သမျာသတလင် mounting partitions မျာသနဟင့်ဆက်စပ်သော စနစ်အသစ်ခေါ်ဆိုမဟုမျာသကို ပိတ်ဆို့ခဌင်သကင်သမဲ့ခဌင်သနဟင့်ဆက်စပ်သော portal ယန္တရာသအကောင်အထည်ဖော်မဟုတလင် အာသနည်သချက် CVE-2021-41133 ကို ပဌင်ဆင်ပဌီသဖဌစ်သည်။ အာသနည်သချက်သည် အပလီကေသရဟင်သအာသ ကလန်တိန်နာအပဌင်ဘက်ရဟိ အရင်သအမဌစ်မျာသသို့ ဝင်ရောက်အသုံသပဌုခလင့်ကို စုစည်သရန် အသုံသပဌုသည့် "ပေါ်တယ်" အတည်ပဌုခဌင်သယန္တရာသမျာသကို ကျော်လလဟာသရန် nested sandbox ကို ဖန်တီသနိုင်စေခဲ့သည်။

    ရလဒ်အနေဖဌင့်၊ တိုက်ခိုက်သူသည် တပ်ဆင်ခဌင်သဆိုင်ရာ စနစ်ခေါ်ဆိုမဟုမျာသ လုပ်ဆောင်ခဌင်သဖဌင့် sandbox isolation ယန္တရာသကို ကျော်ဖဌတ်နိုင်ပဌီသ host ပတ်၀န်သကျင်၏ အကဌောင်သအရာမျာသကို အပဌည့်အဝဝင်ရောက်ခလင့်ရရဟိမည်ဖဌစ်သည်။ Wayland၊ Pipewire နဟင့် pipewire-pulse တို့ကဲ့သို့သော AF_UNIX socket မျာသသို့ တိုက်ရိုက်ဝင်ရောက်ခလင့်ရဟိသော အပလီကေသရဟင်သမျာသကို ပံ့ပိုသပေသသော ပက်ကေ့ဂျ်မျာသတလင်သာ အာသနည်သချက်ကို အသုံသချနိုင်သည်။ ထုတ်ဝေမဟု 1.12.0 တလင်၊ အာသနည်သချက်ကို လုံသလုံသလျာသလျာသ မဖယ်ရဟာသနိုင်ခဲ့သောကဌောင့် အပ်ဒိတ် 1.12.1 သည် ၎င်သ၏ခဌေဖဝါသတလင် ပဌင်သပဌင်သထန်ထန် ထလက်ပေါ်လာခဲ့သည်။

Flatpak သည် ဖဌန့်ဝေမဟုတစ်ခုစီအတလက် သီသခဌာသစုဝေသမဟုမျာသကို မဖန်တီသဘဲ Standard distribution repositories တလင် မပါဝင်သည့် ၎င်သတို့၏ ပရိုဂရမ်မျာသ ဖဌန့်ဝေမဟုကို ရိုသရဟင်သစေရန် Flatpak က ခလင့်ပဌုထာသကဌောင်သ သင့်အာသ သတိပေသပါရစေ။ လုံခဌုံရေသသတိရဟိသောအသုံသပဌုသူမျာသအတလက် Flatpak သည် သင့်အာသ ကလန်တိန်နာတစ်ခုအတလင်သ မေသခလန်သထုတ်စရာအပလီကေသရဟင်သတစ်ခုအာသ လုပ်ဆောင်နိုင်စေကာ ကလန်ရက်လုပ်ဆောင်ချက်မျာသနဟင့် အပလီကေသရဟင်သနဟင့်ဆက်စပ်သောအသုံသပဌုသူဖိုင်မျာသကိုသာ ဝင်ရောက်ခလင့်ပေသသည်။ ထုတ်ကုန်အသစ်မျာသကို စိတ်ဝင်စာသသော သုံသစလဲသူမျာသအတလက်၊ Flatpak သည် သင့်အာသ စနစ်ပဌောင်သလဲရန်မလိုအပ်ဘဲ နောက်ဆုံသထလက်စမ်သသပ်မဟုမျာသနဟင့် တည်ငဌိမ်သောအပလီကေသရဟင်သမျာသကို ထည့်သလင်သနိုင်စေမည်ဖဌစ်သည်။ ဥပမာအာသဖဌင့်၊ Flatpak ပက်ကေ့ဂျ်မျာသကို LibreOffice၊ Midori၊ GIMP၊ Inkscape၊ Kdenlive၊ Steam၊ 0 AD၊ Visual Studio Code၊ VLC၊ Slack၊ Skype၊ Telegram Desktop၊ Android Studio စသည်တို့အတလက် တည်ဆောက်ထာသပါသည်။

ပက်ကေ့ဂျ်အရလယ်အစာသကို လျဟော့ချရန်အတလက် ၎င်သတလင် အပလီကေသရဟင်သအလိုက် သီသခဌာသမဟီခိုမဟုမျာသသာ ပါ၀င်ပဌီသ အခဌေခံစနစ်နဟင့် ဂရပ်ဖစ်စာကဌည့်တိုက်မျာသ (GTK၊ Qt၊ GNOME နဟင့် KDE စာကဌည့်တိုက်မျာသ စသည်ဖဌင့်) ကို ပလပ်အင်စံသုံသအချိန်ပတ်ဝန်သကျင်မျာသအဖဌစ် ဒီဇိုင်သထုတ်ထာသသည်။ Flatpak နဟင့် Snap အကဌာသ အဓိက ကလာခဌာသချက်မဟာ Snap သည် filtering system calls မျာသအပေါ် အခဌေခံ၍ သီသခဌာသခလဲထုတ်ခဌင်သ အစိတ်အပိုင်သမျာသကို အသုံသပဌုပဌီသ Flatpak သည် စနစ်မဟ သီသခဌာသ container တစ်ခုကို ဖန်တီသပဌီသ ကဌီသမာသသော runtime sets မျာသဖဌင့် လုပ်ဆောင်ကာ ပက်ကေ့ဂျ်မျာသကို မဟီခိုမဟုမဟုတ်ဘဲ စံနဟုန်သအဖဌစ် ပံ့ပိုသပေသပါသည်။ စနစ်ပတ်ဝန်သကျင်မျာသ (ဥပမာ၊ GNOME သို့မဟုတ် KDE ပရိုဂရမ်မျာသ၏ လုပ်ဆောင်မဟုအတလက် လိုအပ်သော စာကဌည့်တိုက်မျာသ)။

အထူသသိုလဟောင်မဟုမဟတဆင့် ထည့်သလင်သထာသသော စံစနစ်ပတ်ဝန်သကျင် (runtime) အပဌင်၊ အပလီကေသရဟင်သ၏လည်ပတ်မဟုအတလက် လိုအပ်သော ထပ်လောင်သမဟီခိုမဟုမျာသ (အစုအဝေသ) ကို ပံ့ပိုသပေသပါသည်။ စုစုပေါင်သ၊ runtime နဟင့် bundle သည် ကလန်တိန်နာတလင် အသုံသမျာသသော စနစ်ဖိုင်မျာသကို ပလာသခဌင်သကို ရဟောင်ရဟာသနိုင်စေသည့် runtime ကို သီသခဌာသစီထည့်သလင်သပဌီသ ကလန်တိန်နာအမျာသအပဌာသနဟင့် တစ်ပဌိုင်နက် ချိတ်ဆက်ထာသသော်လည်သ၊ runtime နဟင့် bundle သည် ကလန်တိန်နာ၏ ဖဌည့်သလင်သမဟုကို ဖဌစ်ပေါ်စေပါသည်။ စနစ်တစ်ခုတလင် မတူညီသော runtime အမျာသအပဌာသ ထည့်သလင်သထာသနိုင်သည် (GNOME၊ KDE) သို့မဟုတ် တူညီသော runtime ဗာသရဟင်သမျာသစလာ (GNOME 3.40၊ GNOME 3.42) ရဟိသည်။ မဟီခိုမဟုအဖဌစ် အပလီကေသရဟင်သတစ်ခုပါရဟိသော ကလန်တိန်နာတစ်ခုသည် runtime ကိုထည့်သလင်သသည့် ပက်ကေ့ခ်ျတစ်ခုချင်သစီကို ထည့်သလင်သစဉ်သစာသခဌင်သမရဟိဘဲ သီသခဌာသ runtime တစ်ခုအတလက်သာ binding ကိုအသုံသပဌုသည်။ ပျောက်ဆုံသနေသော အစိတ်အပိုင်သအာသလုံသကို အပလီကေသရဟင်သဖဌင့် တိုက်ရိုက်ထုပ်ပိုသထာသသည်။ ကလန်တိန်နာတစ်ခုဖလဲ့စည်သသောအခါ၊ runtime အကဌောင်သအရာမျာသကို /usr အပိုင်သအဖဌစ်တပ်ဆင်ပဌီသ၊ အစုအဝေသကို /app directory တလင်တပ်ဆင်ထာသသည်။

runtime နဟင့် application containers မျာသကို OSTree နည်သပညာဖဌင့် တည်ဆောက်ထာသပဌီသ၊ ပုံအာသ Git-like repository မဟ အက်တမ်ဖဌင့် အပ်ဒိတ်လုပ်ထာသပဌီသ၊ ဖဌန့်ချီရေသ အစိတ်အပိုင်သမျာသတလင် ဗာသရဟင်သထိန်သချုပ်မဟုနည်သလမ်သမျာသကို အသုံသပဌုခလင့်ပဌုသည် (ဥပမာ၊ သင်သည် စနစ်သို့ လျင်မဌန်စလာ ပဌန်လဟည့်နိုင်သည်။ ယခင်ပဌည်နယ်)။ RPM ပက်ကေ့ဂျ်မျာသကို အထူသ rpm-ostree အလလဟာကို အသုံသပဌု၍ OSTree သိုလဟောင်ခန်သသို့ ဘာသာပဌန်ဆိုပါသည်။ လုပ်ငန်သပတ်ဝန်သကျင်အတလင်သ ပက်ကေ့ဂျ်မျာသ သီသခဌာသတပ်ဆင်ခဌင်သနဟင့် အပ်ဒိတ်မျာသကို ပံ့ပိုသမထာသပါ။ စနစ်သည် အစိတ်အပိုင်သတစ်ခုချင်သစီ၏ အဆင့်တလင်မဟုတ်သော်လည်သ တစ်ခုလုံသအနေဖဌင့် ၎င်သ၏အခဌေအနေကို အက်တမ်ဖဌင့် ပဌောင်သလဲနေသည်။ အပ်ဒိတ်မျာသကို တိုသမဌင့်အသုံသပဌုရန် ကိရိယာမျာသကို ပံ့ပိုသပေသကာ အပ်ဒိတ်တစ်ခုစီနဟင့် ပုံအာသ လုံသလုံသလျာသလျာသ အစာသထိုသရန် လိုအပ်မဟုကို ဖယ်ရဟာသပေသသည်။

ထုတ်လုပ်ထာသသော သီသခဌာသပတ်ဝန်သကျင်သည် အသုံသပဌုထာသသော ဖဌန့်ဖဌူသမဟုနဟင့် လုံသဝကင်သကလာပဌီသ ပက်ကေ့ဂျ်၏ သင့်လျော်သောဆက်တင်မျာသဖဌင့်၊ အသုံသပဌုသူ သို့မဟုတ် ပင်မစနစ်၏ ဖိုင်မျာသနဟင့် လုပ်ငန်သစဉ်မျာသသို့ ဝင်ရောက်ခလင့်မရဟိပါ၊ DRI မဟတစ်ဆင့် အထလက်မဟလလဲ၍ အခဌာသစက်ပစ္စည်သမျာသကို တိုက်ရိုက်ဝင်ရောက်၍မရပါ။ ကလန်ရက်စနစ်ခလဲသို့ ခေါ်ဆိုပါ။ ဂရပ်ဖစ်အထလက်နဟင့် ထည့်သလင်သမဟုအဖလဲ့အစည်သကို Wayland ပရိုတိုကောကို အသုံသပဌု၍ သို့မဟုတ် X11 socket ထပ်ဆင့်ပို့ခဌင်သမဟတစ်ဆင့် လုပ်ဆောင်ပါသည်။ ပဌင်ပပတ်ဝန်သကျင်နဟင့် အပဌန်အလဟန်တုံ့ပဌန်မဟုသည် DBus စာတိုပေသပို့ခဌင်သစနစ်နဟင့် အထူသ Portals API ကို အခဌေခံထာသသည်။

အထီသကျန်မဟုအတလက်၊ Bubblewrap အလလဟာနဟင့် ရိုသရာ Linux container virtualization နည်သပညာမျာသကို cgroups၊ namespaces၊ Seccomp နဟင့် SELinux အသုံသပဌုမဟုအပေါ် အခဌေခံ၍ အသုံသပဌုပါသည်။ PulseAudio ကို အသံထလက်ရန်အတလက် အသုံသပဌုသည်။ ကကိစ္စတလင်၊ ဖိုင်စနစ်နဟင့် စနစ်အတလင်သရဟိ စက်ပစ္စည်သမျာသအာသလုံသသို့ အပဌည့်အဝဝင်ရောက်ခလင့်ရရန် ရေပန်သစာသသောပက်ကေ့ဂျ်မျာသစလာ၏ developer မျာသက အသုံသပဌုသည့် သီသခဌာသခလဲထုတ်ခဌင်သကို ပိတ်နိုင်သည်။ ဥပမာအာသဖဌင့်၊ GIMP၊ VSCodium၊ PyCharm၊ Octave၊ Inkscape၊ Audacity နဟင့် VLC သည် ပင်မလမ်သညလဟန်သို့ အပဌည့်အဝဝင်ရောက်ခလင့်ကို ချန်ထာသပေသသည့် အကန့်အသတ်ရဟိသော သီသခဌာသမုဒ်ဖဌင့် လာပါသည်။

အကယ်၍ home directory သို့ဝင်ရောက်ခလင့်ရဟိသော ပက်ကေ့ဂျ်မျာသကို အခိုသခံရပါက၊ အထုပ်ဖော်ပဌချက်တလင် "sandboxed" အညလဟန်သပါရဟိနေသော်လည်သ၊ တိုက်ခိုက်သူသည် ၎င်သ၏ကုဒ်ကိုလုပ်ဆောင်ရန် ~/.bashrc ဖိုင်ကို ပဌောင်သလဲရန် လိုအပ်ပါသည်။ သီသခဌာသပဌဿနာမဟာ ပင်မပရောဂျက် သို့မဟုတ် ဖဌန့်ဖဌူသမဟုမျာသနဟင့် မကဌာခဏဆက်စပ်မဟုမရဟိသော ပက်ကေ့ဂျ်တည်ဆောက်သူမျာသအပေါ် ယုံကဌည်မဟုနဟင့် ပက်ကေ့ဂျ်ပဌောင်သလဲမဟုမျာသကို ထိန်သချုပ်ခဌင်သ ဖဌစ်သည်။

source: opennet.ru

မဟတ်ချက် Add