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
See the Electron versioning doc for info on how to manage Electron versions in your apps.
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
.
- npm
- Yarn
ELECTRON_SKIP_BINARY_DOWNLOAD=1 npm install
ELECTRON_SKIP_BINARY_DOWNLOAD=1 yarn 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
.