Snap — это система упаковки программного обеспечения, разработанная Canonical в первую очередь для использования в системах Linux с системой инициализации systemd. Он направлен на решение ряда проблем, связанных с упаковкой и распространением программного обеспечения, но имеет и свои недостатки. В этой статье рассмотрим недостатки использования Snap и узнаем, как отключить или удалить Snap.
Все команды были протестированы на Snap (2.62+24.04), работающем на Ubuntu Desktop 24.04 LTS.
Предварительно установите Firefox из PPA.
Удаление Snap
Проверяем версию Snap:
snap --version
snap 2.62+24.04build1
snapd 2.62+24.04build1
series 16
ubuntu 24.04
kernel 6.8.0-31-generic
Выводим список установленных пакетов snap:
snap list
Получаем список пакетов для удаления.
Удаляем последовательно каждый пакет snap:
snap remove thunderbird
snap remove firefox
snap remove firmware-updater
snap remove snapd-desktop-integration
snap remove gnome-42-2204
snap remove snap-store
snap remove gtk-common-themes
snap remove bare
snap remove core22
snap remove snapd
Проверяем, что осталось от Snap в системе:
snap list
Если всё чисто, переходим к следующему этапу.
Далее давайте теперь остановим, отключим, удалим и зафиксируем демон snapd:
sudo systemctl stop snapd
sudo systemctl disable snapd
sudo systemctl mask snapd
sudo apt purge snapd -y
sudo apt-mark hold snapd
Тестирование избавления от Snap
Canonical изменила пакет .deb chromium-browser, теперь он включает только сценарии-оболочки, которые запускают установку Snap.
Чтобы предотвратить такие случаи, нужно использовать следующую команду, одной строкой:
sudo cat <<EOF | sudo tee /etc/apt/preferences.d/nosnap.pref
Package: snapd
Pin: release a=*
Pin-Priority: -10
EOF
Можете проверить, что в файле nosnap.pref
sudo cat /etc/apt/preferences.d/nosnap.pref
Проверяем попыткой установить chromium-browser (не обязательно)
sudo apt install chromium-browser
Как мы видим из приведенной выше команды, Snap не сможет установить себя без нашего согласия. Остановите процесс CTRL+Z. И сделайте:
sudo apt update
sudo apt upgrade -y
И идём дальше.
Удаление всех оставшихся каталогов Snap
Если наша система не является новой, нам может потребоваться проверить и удалить некоторые каталоги созданные Snap.
Убедитесь, что вы вводите эти команды правильно, поскольку вы будете использовать sudo для рекурсивного удаления каталогов:
rm -rf ~/snap
sudo rm -rf /snap
sudo rm -rf /var/snap
sudo rm -rf /var/lib/snapd
Делаем рестарт всей системы
reboot
Некоторые возможности
Мы избавились от firefox, поставим альтернативу Chromium-Gost. Скачать можно по ссылке, и да, он отвязан от сервисов Google: https://github.com/deemru/Chromium-Gost/releases/latest
Как нам устанавливать другие приложения из пакетов .deb? Установим центр приложений, из которого и будем устанавливать приложения как и ранее мы это любили делать:
sudo apt install gnome-software
Можно вернуть некоторые приложение, которые были пакетами Snap, и установить их привычным способом из .deb:
sudo apt install firefox thunderbird
Заключение
В этой статье мы рассмотрели процесс удаления и отключения Snap из нашей системы, а также предотвращения его установки без нашего согласия при использовании команды apt.
Хотя Snap действительно предлагает ряд преимуществ, подход Canonical к продвижению его использования не был хорошо принят сообществом и в конечном итоге может привести к тому, что сообщество вообще избегает Snap.