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.

Binary download step

Sous le capot, l'API JavaScript d'Electron est rattachée à un binaire contenant son implémentation. This binary is crucial to the function of any Electron app, and is downloaded by default the first time you run Electron in development mode (i.e. electron .).

If you want to install the binary on demand instead, you can run the install-electron bin script included in the electron package:

npx install-electron --no

Installing prereleases

Electron distributes experimental releases of future major versions via npm as well.

Nightly builds contain the latest changes from the main branch:

npm install electron-nightly --save-dev

Alpha and beta builds contain changes slated for the next major version:

npm install electron@alpha --save-dev
npm install electron@beta --save-dev

[!TIP] For more information on available Electron releases, see the Release Status dashboard.

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

If you want to change the architecture that is downloaded (e.g., x64 on an arm64 machine), you can set the ELECTRON_INSTALL_ARCH environment variable:

# Inside an npm script or with npx
ELECTRON_INSTALL_ARCH=x64 electron .

Supported architectures are a subset of Node.js process.arch values, and include:

  • x64 (Intel Mac and 64-bit Windows)
  • ia32 (32-bit Windows)
  • arm64 (Apple silicon, Windows on ARM, ARM64 Linux)
  • arm (32-bit ARM)

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

# Inside an npm script or with npx
ELECTRON_INSTALL_PLATFORM=mas electron .

Supported platforms are Node-like platform strings:

[!TIP] To see all available platform/architecture combinations for a particular release, see the artifacts on Electron's GitHub Releases.

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:

Custom mirrors and caches

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.

Si votre serveur miroir délivre des artefacts avec des somme de contrôle différentes de celles de la version officielle d'Electron, vous devrez définir electron_use_remote_checksums=1 ou le configurer dans un fichier .npmrc pour forcer Electron à utiliser le fichier distant SHASUMS256.txt afin de vérifier la somme de contrôle, au lieu de celles intégrées.

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

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.