كيف تتخلص من snap على توزيعه Ubuntu

snap هي صيغه جديده لنشر البرامج استخدمتها canonical بدايه من 20.04 وتم تحويل المتجر لتطبيق snap بشكل افتراضي.

لكن فيها مشاكل اخلاقيه اهمها
انه كود السيرفر مغلق, وان snap مركزي بالكامل وشركة canonical تتحكم بكل شيء ولا يمكن فتح مستودع منافس

في هذا الشرح سوف اشرح كيفيه حذف snap و snap store من اوبونتو بالكامل واستبداله ب gnome-software وتنزيل فلاتباك.

يذكر انه هناك توزيعات لاتستخدم snap مبنيه على Ubuntu
مثل linux mint و pop os.

حذف جميع برامج Snap

snap list

ستظهر لك برامج Snap المثبته على النظام, مثال:

Name               Version             Rev   Tracking         Publisher   Notes
core18             20200724            1885  latest/stable    canonical✓  base
gnome-3-34-1804    0+git.3556cb3       60    latest/stable/…  canonical✓  -
gtk-common-themes  0.1-36-gc75f853     1506  latest/stable/…  canonical✓  -
snap-store         3.36.0-82-g80486d0  481   latest/stable/…  canonical✓  -
snapd              2.47.1              9721  latest/stable    canonical✓  snapd

سنقوم بحذفها, تاكد ان core18 و snapd هم الاخيرين بالحذف

sudo snap remove --purge gnome-3-34-1804
sudo snap remove --purge gtk-common-themes
sudo snap remove --purge snap-store
sudo snap remove --purge core18
sudo snap remove --purge snapd

الان عند عمل snap list
المفترض ظهور اشعار انه لا يوجد اي برنامج على النظام.

No snaps are installed yet. Try 'snap install hello-world'.

حذف Snap

sudo apt autoremove --purge snapd gnome-software-plugin-snap

حذف مجلدات Snap الباقية

rm -rf ~/snap
sudo rm -rf /snap
sudo rm -rf /var/snap
sudo rm -rf /var/lib/snapd

منع تنزيل Snap

في اوبونتو 20.04 فما فوق, لا توجد حزمة متصفح كروميم deb, فقط كحزمة snap
لذلك عند تنزيل كروميم من apt على اوبونتو سيقوم بتثبيت snap بشكل تلقائي.
يمكنك منع apt من تثبيت snap
عبر هذا الامر:

sudo apt-mark hold snapd

قد احيانا البرنامج يحتاج سناب بشكل ضروري
سيظهر snapd بسطر منفصل
مثال:

  pinentry-curses python3 python3-dbus python3-gi python3-minimal python3.8
  python3.8-minimal readline-common shared-mime-info snapd squashfs-tools
  systemd systemd-timesyncd tzdata udev xauth xdg-user-dirs xz-utils
The following held packages will be changed:
  snapd
The following packages will be upgraded:
  libsystemd0 libudev1

الان تم حذف سناب بالكامل من نظامك ولم يتم تنزيله تلقائيا

تنزيل Gnome-software متجر للنظام.

sudo apt install gnome-software --no-install-recommends

لماذا نستخدم --no-install-recommends ?
لانه يثبت سناب بشكل افتراضي مع اضافته الخاصه عند تثبيت gnome-software

تنزيل فلاتباك

البديل الاقوى لsnap هو flatpak
وعكس snap فهو مفتوح المصدر بالكامل و يمكنك عمل مستودعاتك الخاصه, كما فعلت فيدورا مع بعض البرامج.
وكمشروع هو بدء قبل سناب بسنين. داعمه الاساسي الان هم red hat و free desktop

sudo apt install flatpak gnome-software gnome-software-plugin-flatpak --no-install-recommends

وجود --no-install-recommends هو لنفس السبب.

اضافه مستودع flathub

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

اعاده تشغيل gnome-software للتاكد من ظهور برامج flathub

في حاله تم تشغيل gnome-software قبل اضافه flathub فلن تظهر برامج من مستودع flathub

killall gnome-software

المصادر

https://flatpak.org/setup/Ubuntu/

Disabling Snaps in Ubuntu 20.10 (and 20.04 LTS) - Kevin Custer

5 إعجابات

اعجبني الشرح, مع اني من داعمي SNAP بسبب Hardware Acceleration وسهولة بناء التطبيقات وتوزيعها وكثرتها

إعجاب واحد (1)

شرح جميل … مشكور اخي الكريم :white_heart: