GNU/Linux >> Znalost Linux >  >> Linux

Jak implementovat automatickou aktualizaci elektronové aplikace na Linuxu?

Ve skutečnosti neexistuje nic standardního ve světě *nix. Vždy budete muset podporovat konkrétní distribuce a každá z těchto distribucí může mít několik možných způsobů vytvoření automatické aktualizace.

K vašim otázkám:

  1. Neexistuje žádný standardní způsob.

  2. To závisí na vašem způsobu skutečné distribuce balíčku. Pokud plánujete používat správce balíčků, jako je rpm/apt-get/apt install, pak každý z těchto správců má specifický způsob, jak nakonfigurovat vaši aplikaci tak, aby patřila mezi balíčky, u kterých se kontrolují automatické aktualizace.

  3. Rozdíl mezi .rpm / .deb:

    Hlavním rozdílem pro správce balíčků (myslím, že by to byl v žargonu Debianu „vývojář“) je způsob, jakým se metadata balíčku a doprovodné skripty spojují. Odkaz

    Rozdíl mezi Ubuntu a Fedorou:Protože vytvoření podrobné odpovědi na tyto otázky by bylo příliš zdlouhavé a příliš náročné na údržbu, podívejte se na tento blogový příspěvek s podrobnostmi o rozdílech mezi těmito dvěma distribucemi.


Pokud je formát AppImage pro váš projekt v pořádku, můžete zkusit electron-simple-updater.


Appimages

Můžete použít electron-builder k vytvoření Appimages pro instalaci nebo automatickou aktualizaci vaší aplikace téměř v jakékoli distribuci Linuxu

AppImage je univerzální formát softwarového balíku. Zabalením softwaru do AppImage vývojář poskytuje pouze jeden soubor, který je „ovládne všechny“. Koncový uživatel, tedy vy, jej můžete použít ve většině (pokud ne ve všech) moderních distribucích Linuxu

Pokud chcete aplikaci aktualizovat automaticky, budete také potřebovat electron-autoupdater . Cíle:

  • MacOS:DMG.
  • Linux:AppImage
  • Windows:NSIS

Příklad projektu, který to používá, najdete zde. Důležité soubory:package.json , updater.js , updater_renderer.js

Pomocí některých z těchto pokynů můžete vytvořit instalační programy:

yarn electron-builder --linux --x64
yarn dist_linux                        # shortcut in package.json

deb, rpm

Pomocí electron-builder můžete vytvářet balíčky jako deb nebo rpm , ale jejich automatická aktualizace závisí na tom, jak je distribuujete, jak říká Jens ve své odpovědi. Konečný uživatel možná bude muset přidat repozitář apt, aby byl aktuální


Odpověď od Jense je opravdu nejlepší.

Pokud ale nechcete trávit čas učením se RPM a DEB a sestavováním balíčků pro všechny distribuce, můžete zvážit zabalení aplikace pomocí Flatpak. http://flatpak.org/#about

Vytvoří jeden velký archiv, který lze spustit na Ubuntu, RHEL.... Všude.


Linux
  1. Jak upgradovat na Linux Mint 20.3:Správná cesta

  2. Jak vypsat seznam závislostí balíčku v Linuxu

  3. Jak zkontrolovat verzi balíčku Linux před jeho instalací

  1. Jak zabalit aplikace Python pro Linux

  2. Jak otevřít Appimage v Linuxu

  3. Jak najít verzi balíčku v Linuxu

  1. Jak otestovat balíček bez jeho instalace v Linuxu

  2. Jak vytvořit balíček RPM pro Linux

  3. Co je FirewallD a jak jej implementovat v systému Linux