Содержание

Удаление SNAP из Ubuntu и альтернативные источники приложений

В последнее время майнтейнеры Ubuntu все больше и больше припухают, вкорячивая в дистрибутивы софт из snap-репозитория, обрубая при этом юзерам самостоятельный выбор источников приложений. Внаглую навязывают использование сервисов, которые нам не нужны и малоинтересны. А учитывая мнение пользователей о snap-приложениях, можно сделать вывод, что людям хотят навязать тормозное унылое говно. Но пока существуют сторонние репозитории, прямые руки и огромное желание избавится от snap, Canonical не удастся заставить нас жрать кактусы… Это проблема решаема несколькими способами и тут мы покажем, как провернуть этот финт ушами.

Удаление snap-приложений и snapd

Перво-наперво посмотрим, что у нас есть на борту из репозитория snap, используя команду snap list и получив следующий выхлоп:

user@ubuntu:~$ snap list
    Name                       Version          Rev    Tracking         Publisher   Notes
    bare                       1.0              5      latest/stable    canonical✓  base
    core22                     20240408         1380   latest/stable    canonical✓  base
    firefox                    125.0.2-1        4173   latest/stable/…  mozilla✓    -
    firmware-updater           0+git.5007558    127    latest/stable/…  canonical✓  -
    gnome-42-2204              0+git.510a601    176    latest/stable/…  canonical✓  -
    gtk-common-themes          0.1-81-g442e511  1535   latest/stable/…  canonical✓  -
    snap-store                 0+git.1419621    1124   latest/stable/…  canonical✓  -
    snapd                      2.62             21465  latest/stable    canonical✓  snapd
    snapd-desktop-integration  0.9              157    latest/stable/…  canonical✓  -
    subiquity                  24.04.1          5741   latest/stable/…  canonical✓  classic
    ubuntu-desktop-bootstrap   0+git.2d119e1b3  171    latest/stable/…  canonical✓  classic

Затем начинаем планомерно выкорчевывать из системы эти адские всходы, выполняя последовательно команды:

sudo snap remove --purge firefox gtk-common-themes snapd-desktop-integration gnome-42-2204 subiquity ubuntu-desktop-bootstrap firmware-updater snap-store
sudo snap remove --purge bare
sudo snap remove --purge core22
sudo snap remove --purge snapd

И вычищаем оставшиеся хвосты snap'а и перезагружаемся:

sudo apt purge firefox snapd
sudo apt remove gnome-software-plugin-snap
sudo reboot

Удаляем папку snap из домашнего каталога:

rm -rf ~/snap

Задаем наименьший приоритет для установки из snap-репозитория:

sudo nano /etc/apt/preferences.d/nosnap.pref

Вставляем следующее содержимое:

# To prevent repository packages from triggering the installation of snap,
# this file forbids snapd from being installed by APT.

Package: snapd
Pin: release a=*
Pin-Priority: -10

Сохраняем файл нажатием CTRL+O и выходим CTRL+X.

Добавляем альтернативные источники приложений

Теперь необходимо обеспечить систему другими, отличными от snap источниками софта, в нашем случае это репозитории с Launchpad. Также можно использовать DEB-пакеты, flatpack, тарболы с готовым к запуску софтом (например, тот же Firefox или Thunderbird) или собрать приложения из сорцов. Подключаем PPA Mozilla Team

sudo add-apt-repository ppa:mozillateam/ppa

Таким образом можно подключить любой репозиторий, которому вы доверяете… А теперь надо сделать так, чтобы приоритет PPA был выше при будущих обновлениях, для этого надо создать пару файлов:

sudo nano /etc/apt/preferences.d/mozilla-firefox

Вставляем и сохраняем:

Package: firefox*
Pin: release o=LP-PPA-mozillateam
Pin-Priority: 501

Package: firefox*
Pin: release o=Ubuntu
Pin-Priority: -101

И еще:

sudo nano /etc/apt/apt.conf.d/51unattended-upgrades-firefox

Вставляем и сохраняем:

Unattended-Upgrade::Allowed-Origins:: "LP-PPA-mozillateam:${distro_codename}";

Ну и, дальше дело техники, обновляем список пакетов в репозиториях и устанавливаем Firefox из привычных источников:

sudo apt update && sudo apt install firefox firefox-locale-ru

Как вариант без установки - использование тарбола от Mozilla

Скачаем и распакуем тарбол в хомяк, затем создадим рабочий каталог в ~/.local и переместим в него распакованный firefox:

wget https://ftp.mozilla.org/pub/firefox/releases/129.0b9/linux-x86_64/ru/firefox-129.0b9.tar.bz2
tar xvjf firefox-129.0b9.tar.bz2
mkdir -p ~/.local/bin && mv ~/firefox ~/.local/bin/

Создадим ярлык запуска в меню:

sudo nano /usr/share/applications/Firefox.desktop

Вставить следующее:

[Desktop Entry]
Name=Firefox
Comment=Веб-браузер от Mozilla
GenericName=Firefox - веб-браузер
Keywords=firefox;ашкуащч;файерфокс;лиса
Exec=/home/$USER$/.local/bin/firefox/firefox
Terminal=false
Type=Application
Icon=/home/$USER$/.local/bin/firefox/browser/chrome/icons/default/default64.png
Categories=Network;
NoDisplay=false

Сохраняем файл нажатием CTRL+O и выходим CTRL+X. Готово! Радуемся, что у нас все лучше всех)))

Если вам нравятся хромоподобные поделия, то вам надо идти сюда