Одна команда для преобразования всех ваших приложений Snap в Flatpak в Ubuntu
Для тех, кто ненавидит Snap, но предпочитает Flatpak, теперь есть скрипт, который автоматически удаляет все приложения Snap, установленные в вашей системе, и устанавливает их обратно как Flatpak в Debian и Ubuntu.
Это Unsnap, бесплатный скрипт с открытым исходным кодом, написанный Аланом Поупом и некоторыми другими участниками. Этот мужчина был сотрудником Canonical (компании, стоящей за Ubuntu) и одним из разработчиков Snap.
Как вы, возможно, знаете, Snap и Flatpak — это универсальный формат пакетов Linux, запускаемый в «песочнице». Они позволяют запускать новые приложения (или приложения в нескольких версиях) в Linux, не беспокоясь о проблемах с зависимостями. Однако они занимают больше места на диске, поскольку библиотеки времени выполнения также изолированы в изолированной программной среде и пока имеют ограничения на взаимодействие за пределами изолированной программной среды.
Snap работает на платформе Canonical. Клиент и среда выполнения имеют открытый исходный код, а серверная часть является проприетарной. Flatpak имеет полностью открытый исходный код, и за проектом стоит RedHat. И сообщество разработчиков открытого исходного кода, похоже, (IMO) предпочитает Flatpak немного больше.
Используйте Unsnap для преобразования приложений Snap в Flatpak
Unsnap НЕ перестраивает ваши приложения Snap в Flatpak. Он автоматизирует процесс удаления приложений Snap и обратной установки эквивалентных приложений Flatpak. Что полезно для начинающих и опытных пользователей, желающих сэкономить время на поиске пакетов.
Поддерживаемые системы:
Судя по содержимому скрипта, на данный момент он поддерживает: Debian, Ubuntu (и его официальные версии), Linux Mint, Pop! _OS, Elementary OS и Zorin OS.
Рабочий процесс
Скрипт работает в двух режимах: default
и auto
.
По умолчанию он определяет состояние вашей системы и привязывает приложения, а затем генерирует следующие новые сценарии:
- 00-backup — скрипт для запуска
snap save
для сохранения текущих данных приложений Snap. - 01-install-flatpak – скрипт для установки демона Flatpak.
- 02-enable-flathub – скрипт для добавления репозитория Flathub.
- 03-install-flatpaks – скрипт для установки эквивалентных приложений Flatpak.
- 04-remove-snaps – скрипт для удаления всех приложений Snap.
- 99-remove-snapd – скрипт для удаления отключения снапа. Хотя его можно установить обратно через обновление системы.
Сценарии 01/02 могут быть пропущены, если вы уже установили демон Flatpak и добавили репозиторий Flathub. И сценарии довольно просты и понятны тем, кто имеет базовые навыки командования Linux и программирования. Затем вы можете вручную запустить все или любой из сценариев соответственно!
Режим auto
генерирует сценарии и запускает их автоматически!
Ограничения:
На данный момент сценарии поддерживают 219 приложений. Опытные пользователи могут добавить поддержку дополнительных приложений, отредактировав файл конфигурации applist.csv.
Он не удалит неподдерживаемые и исключенные приложения Snap, хотя они исчезнут после запуска сценария 99-remove-snapd вручную или автоматически.
Скрипт может сохранять текущие данные всех приложений Snap. Но, похоже, нет возможности импортировать их в эквивалентные приложения Flatpak. И НЕТ скрипта для отмены изменений!
Загрузите Unsnap и запустите скрипт.
1. Пользователь может либо загрузить Unsnap со страницы github, либо открыть терминал (нажмите Ctrl+Alt+T в Ubuntu) и запустить команду:
git clone https://github.com/popey/unsnap
Запустите sudo apt install git
, если команда git не найдена.
2. После загрузки сценария либо
- запустите cd unsnap, чтобы перейти к исходной папке, и ./unsnap auto, чтобы сделать все АВТОМАТИЧЕСКИ с помощью одной команды.
- или запустите cd unsnap, затем ./unsnap, чтобы сгенерировать сценарии для использования ВРУЧНУЮ.
В ручном режиме все сгенерированные сценарии доступны в подпапке «log-202x-xxx».
Просто запустите команду cd log-*, чтобы перейти к этой папке, а затем выберите любой сценарий, который хотите запустить. Например, создайте резервную копию данных приложения Snap с помощью ./00-backup.
Как уже упоминалось, скрипта для отмены изменений не существует! Вы можете безопасно удалить папку unsnap после завершения всех работ!