Как мне обновить appimages?
У меня установлены приложения Kdenlive и Krita. Нужно ли обновлять их вручную или это автоматически?
2 ответа
Как указано в ответе ванадия, приложения AppImage не обновляются dpkg/apt.
Вы можете или не можете обновить AppImage без загрузки всей новой версии, зависит от конкретного AppImage.
Эта проблема решена в разделе Как обновить appimage:
AppImages (тип 2, с технической точки зрения) может содержать так называемую "информацию об обновлении"…
Чтобы обновить такие AppImages, сопровождающий проекта AppImage рекомендует загрузить последнюю версию AppImageUpdate.
Файл AppImageUpdate должен быть выполнен исполняемым, как и любой другой AppImage, и перемещен в местоположение в вашей переменной PATH.
Запустите AppImageUpdate и выберите приложение AppImage, которое вы хотите проверить на наличие обновлений, в диалоговом окне выбора файлов.
Если доступно обновление, будет выполнено дифференциальное (дельта) обновление:
AppImageUpdate реализует очень эффективный алгоритм ZSync2 и, таким образом, просто загружает несколько мегабайт, которые действительно изменились между вашим локальным AppImage и новым выпуском.
Вот вывод, который я увидел, когда я только что обновил свой AppImage ksnip:
Fetching release information for tag "continuous" from GitHub API.
Updating from GitHub Releases via ZSync
zsync2: /home/dkb/bin/ksnip/ksnip-1.6.0-continuous-x86_64.AppImage found, using as seed file
zsync2: Target file: /home/dkb/bin/ksnip/ksnip-1.6.0-continuous-x86_64.AppImage
zsync2: Reading seed file: /home/dkb/bin/ksnip/ksnip-1.6.0-continuous-x86_64.AppImage
zsync2: Usable data from seed files: 98.206243%
zsync2: Renaming temp file
zsync2: Fetching remaining blocks
zsync2: Downloading from https://github-production-release-asset-2e65be.s3.amazonaws.com/64607359/c2a6c880-5940-11e9-9790- …
zsync2: Verifying downloaded file
zsync2: checksum matches OK
zsync2: used 25901056 local, fetched 472808
Шестая строка сверху показывает, что 98% пакета не нужно загружать для этого конкретного обновления.
Как указано выше, возможность использования AppImageUpdate зависит от того, предоставляет ли этот конкретный AppImage эту возможность. Если это не так:
Пожалуйста, подойдите к автору и попросите его включить его. Если они размещают свои релизы на GitHub, это действительно легко реализовать.
Вы можете прочитать больше о AppImageUpdate здесь и здесь.
Более подробная информация, в первую очередь ориентированная на создателей AppImages, находится здесь. Эта ссылка решает, среди прочего, проблему "Нужно ли обновлять их вручную или это происходит автоматически?"
Никогда не загружайте обновления без явного согласия пользователя...
Уважайте глобальные флаги для "не проверять наличие новых версий" и "не пытаться обновить"…
Не мешайте пользователю обновлениями напрямую, в первую очередь при запуске приложения...
Спросите пользователя о разрешении, прежде чем делать проверки версий...
Вот короткое видео YouTube от 2016 года об обновлении AppImage, RetroArch.
Число рейнольдса Krita
Если это все, что вам нужно, вам нужно полностью загрузить новую версию. По-видимому, в настоящее время бинарные дельта-обновления недоступны. Это в соответствии с разделом под названием Обновление Крита здесь.
Если вы хотите перейти на новую версию, просто загрузите новый Krita AppImage.
По этой же ссылке разработчики Krita AppImage просят
… Добавить информацию об обновлении в Krita AppImage и отправить файл.zsync, чтобы его можно было обновить с помощью AppImageUpdate. Такие инструменты, как appimagetool и linuxdeployqt, могут сделать это для вас легко.
Вы обновляете их вручную. Это означает: если имеется обновленный файл appimage, вы загружаете его и заменяете старый файл appimage новым.
Аппликации работают как автономные исполняемые файлы. По своей природе они существуют в вашей системе, в той папке, куда вы их положили. В вашей системе нет программного обеспечения, которое позволяло бы обновлять их автоматически.
В отличие от приложений, другие системы для установки программного обеспечения, такие как APT (Debian, Ubuntu) или другие новые форматы распространения, flatpak и snap, предоставляют автоматизированную среду управления приложениями. Эти форматы упаковки представляют собой конкретные системы, с помощью которых можно поддерживать установленные приложения, проверять их в хранилище и обновлять в соответствии с их конкретными технологиями.