Aller au contenu principal

Instructions d’installation avancée

Pour installer des binaires Electron pré compilés, utilisez npm. La meilleure méthode est d'installer Electron en tant que dépendance de développement dans votre application :

npm install electron --save-dev

Voir la documentation sur la gestion des versions pour plus d'informations sur la façon de gérer différentes versions d'Electron dans vos applications.

Exécution directe d'Electron

Si vous préférez ne pas utiliser npm install dans votre projet local, vous pouvez exécuter directement Electron à l’aide de npx qui est un exécuteur de packages fourni avec npm:

npx electron .

La commande ci-dessus exécutera Electron dans le répertoire de travail actuel. Veuillez noter qu'aucune dépendance de votre application ne sera installée.

Personnalisation

Si vous souhaitez modifier l'architecture qui est téléchargée (par exemple, ia32 sur une machine x64), vous pouvez utiliser le paramètre --arch avec npm install ou définir la variable d'environnement npm_config_arch :

npm install --arch=ia32 electron

En plus de modifier l'architecture, vous pouvez également spécifier la plateforme (par exemple, win32, linux, etc.) en utilisant le paramètre --platform :

npm install --platform=win32 electron

Les proxys

Si vous avez besoin d'utiliser un proxy HTTP, vous devez définir la variable ELECTRON_GET_USE_PROXY et des variables d'environnement supplémentaires en fonction de la version de Node de votre système hôte:

Miroirs et Caches personnalisés

Lors de l’installation, le module electron appellera @electron/get pour télécharger les binaires précompilés d’Electron pour votre plateforme. Cela se fera en se connectant à la page GitHub des publications (https://github.com/electron/electron/releases/tag/v$VERSION, ou $VERSION est la version exacte d'Electron).

Si vous êtes dans l'incapacité d'accéder à Github ou si vous avez besoin de fournir un binaire personnalisé, vous pouvez le faire en fournissant un miroir ou un répertoire de cache existant.

Miroir

Vous pouvez utiliser des variables d’environnement pour surcharger l’URL de base, le chemin d’accès où chercher les binaires d'Electron ou le nom du fichier binaire. L’URL utilisée par @electron/get est composée de la manière suivante :

url = ELECTRON_MIRROR + ELECTRON_CUSTOM_DIR + '/' + ELECTRON_CUSTOM_FILENAME

Par exemple, pour utiliser le miroir Chinois:

ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/"

Par défaut, ELECTRON_CUSTOM_DIR est défini à v$VERSION. Pour changer le format, utilisez le marqueur {{ version }}. Par exemple, version-{{ version }} se résout à version-5.0.0, {{ version }} se résout à 5.0.0, et v{{ version }} est équivalent à la valeur par défaut. À titre d’exemple plus concret, pour utiliser le miroir chinois non CDN :

ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/"
ELECTRON_CUSTOM_DIR="{{ version }}"

La configuration ci-dessus sera téléchargée à partir d'URL telles que https://npmmirror.com/mirrors/electron/8.0.0/electron-v8.0.0-linux-x64.zip.

If your mirror serves artifacts with different checksums to the official Electron release you may have to set electron_use_remote_checksums=1 directly, or configure it in a .npmrc file, to force Electron to use the remote SHASUMS256.txt file to verify the checksum instead of the embedded checksums.

Cache

Vous pouvez d'autre part remplacer le cache local. @electron/get mettra en cache le téléchargement des binaires dans un répertoire local afin d'économiser de la bande passante. Vous pouvez utiliser ce répertoire de cache pour fournir des binaires personnalisés d'Electron ou pour éviter d'utiliser le réseau.

  • Linux: $XDG_CACHE_HOME or ~/.cache/electron/
  • macOS: ~/Library/Caches/electron/
  • Windows: $LOCALAPPDATA/electron/Cache or ~/AppData/Local/electron/Cache/

Sur les environnements qui utilisent des versions plus anciennes d’électron, vous pouvez trouver le cache aussi dans ~/.electron.

Vous pouvez également substituer l’emplacement du cache local en fournissant une variable d’environnement electron_config_cache.

Le cache contient le fichier zip officiel de la version ainsi qu'une checksum, stocké en tant que [checksum]/[filename]. Un cache typique peut ressembler à ceci :

├── a91b089b5dc5b1279966511344b805ec84869b6cd60af44f800b363bba25b915
│ └── electron-v15.3.1-darwin-x64.zip

Désactiver le téléchargement des binaires

Sous le capot, l'API JavaScript d'Electron est rattachée à un binaire contenant son implémentation. Ce binaire est indispensable au fonctionnement de toute application Electron, il est donc téléchargé par défaut dans l’étape du postinstall chaque fois que vous installez electron à partir du dépôt npm.

Toutefois, si vous souhaitez installer les dépendances de votre projet sans avoir besoin d’utiliser les fonctionnalité d'Electron, vous pouvez définir la variable d’environnement ELECTRON_SKIP_BINARY_DOWNLOAD pour empêcher le téléchargement du fichier binaire. Ce peut être utile, par exemple dans les environnements d’intégration continue lors de l’exécution de tests unitaires simulant le module electron .

ELECTRON_SKIP_BINARY_DOWNLOAD=1 npm install

Résolution des problèmes

Certains utilisateurs rencontrent parfois des erreurs d'installation lors de l'exécution de npm install electron.

Dans la plupart des cas, ces erreurs sont le résultat d'un problème de réseau et non un soucis avec le package npm electron. Les erreurs telles ELIFECYCLE, EAI_AGAIN, ECONNRESET et ETIMEDOUT indiquent toutes un problème de réseau. La meilleure solution est d'essayer de changer de réseau ou juste d'attendre un peu et de réessayer l'installation.

Vous pouvez également essayer de télécharger Electron directement depuis electron/electron/releases si l'installation via npm ne marche pas.

Si l'installation échoue avec une erreur EACCESS, vous devrez peut-être corriger vos droits npm.

Si l'erreur ci-dessus persiste, le paramètre unsafe-perm devra être mis à true :

sudo npm install electron --unsafe-perm=true

Sur les réseaux lents, Il est conseillé d’utiliser l’indicateur --verbose afin d’afficher la progression du téléchargement :

npm install --verbose electron

Si vous devez forcer le re-téléchargement de l'asset et du fichier SHASUM, mettez la variable d'environnement force_no_cache à true.