2016-06-30 3 views
5

Я использую electron для создания кросс-платформенного приложения. Для Windows и Mac это можно сделать с помощью электронных инструментов, таких как autoUpdate, Squirrel и т. Д.Как реализовать автоматическое обновление электронного приложения на Linux

Проблема только в Linux. Я создал пакет .deb для Ubuntu. Но я не могу найти ни одной «пошаговой» инструкции или полной информации об этом.

Я не знаком с java и не имел опыта создания приложений для Linux.

Так основные вопросы:

  1. Что такое стандартный процесс автоматического обновления с помощью менеджера пакетов дистрибутива? Кто должен скачать и установить обновление и перезапустить приложение.
  2. Каковы другие способы решения проблемы. Какова наилучшая практика создания пользовательского обновления?
  3. Каковы различия между пакетами .deb, .rpm и каковы различия между Ubuntu и Fedora?

Вся информация будет полезна, даже если она (информация) не будет связана с электронным приложением.

Спасибо!

ответ

3

На самом деле ничего нет стандарт в мире * nix. Вы всегда должны поддерживать определенные атрибуты, и каждый из этих распределений, в свою очередь, может иметь несколько возможных способов создания автоматического обновления.

на вопросы:

  1. Там нет никакого стандартного способа.

  2. Это зависит от вашего способа фактического распределения его пакета. Если вы планируете использовать менеджеров пакетов, таких как rpm/apt-get/apt install, каждый из этих менеджеров имеет конкретный способ настройки вашего приложения, чтобы быть среди тех пакетов, которые проверяются на автоматические обновления.

  3. Разница между .rpm/.deb:

    Основное отличие для сопровождающего пакета (я думаю, что было бы «разработчик» в Debian жаргоне) является способом пакет мета-данные и сопровождающие сценарии сходите вместе. Link

    Разница между Ubuntu & Fedora: Как создать подробный ответ на эти вопросы будут как бы слишком длинным и слишком много усилий, чтобы сохранить, проверить this blog post подробно различия между этими двумя распределениями.

+0

Хорошо, спасибо. Как я понял - обычной практикой является создание настраиваемого механизма автоматического обновления, не так ли? – Gleb

+0

Вы, по крайней мере, должны будете настраивать каждую дистрибутив Linux отдельно, некоторые из них могут иметь настраиваемые процедуры автоматического обновления. –

+0

Нет. Лучший способ - создать пакет. Когда вы выпускаете обновление, поместите его в репозиторий и позвольте пользователю решить, когда и как он обновит приложение. – msuchy

3

Ответ от Йенса действительно самый лучший.

Но если вы не хотите тратить свое время на изучение RPM и DEB и создание пакетов для всех дистрибутивов, вы можете рассмотреть возможность размещения своего приложения с помощью Flatpak.http://flatpak.org/#about

Он создает один большой архив, который можно запустить на Ubuntu, RHEL .... Везде.

Смежные вопросы