Advanced Installation Instructions
To install prebuilt Electron binaries, use npm
. The preferred method is to install Electron as a development dependency in your app:
npm install electron --save-dev
Por favor, echa un vistazo a Electron versioning doc para información de como manejar version de Electron en tus apps.
Running Electron ad-hoc
If you're in a pinch and would prefer to not use npm install
in your local project, you can also run Electron ad-hoc using the npx
command runner bundled with npm
:
npx electron .
The above command will run the current working directory with Electron. Note that any dependencies in your app will not be installed.
Personalización
Si quieres cambiar la arquitectura que será descargada (e.g, ia32
en una máquina x64
), puedes usar el flag --arch
con npm install o configurar la variable de entorno npm_config_arch
:
npm install --arch=ia32 electron
Además de cambiar la arquitectura, también se puede especificar la plataforma (e.g., win32
, linux
, etc.) utilizando el flag --platform
:
npm install --platform=win32 electron
Proxies
If you need to use an HTTP proxy, you need to set the ELECTRON_GET_USE_PROXY
variable to any value, plus additional environment variables depending on your host system's Node version:
Espejos y cachés personalizados
Durante la instalación, el módulo electron
llamara a electron-download
para descargar binarios precompilados de Electron para tu plataforma. Lo hará poniéndose en contacto con la página de descarga de versiones de GitHub (https://github.com/electron/electron/releases/tag/v$VERSION
, donde $VERSION
es la versión exacta de Electron).
Si no puede acceder a GitHub o necesita proporcionar una compilación personalizada, puede hacerlo proporcionando un espejo o un directorio de caché existente.
Espejo
Puede usar variables de entorno para anular la URL base, la ruta en la cual buscar binarios de Electron y el nombre del archivo binario. The URL used by @electron/get
is composed as follows:
url = ELECTRON_MIRROR + ELECTRON_CUSTOM_DIR + '/' + ELECTRON_CUSTOM_FILENAME
For instance, to use the China CDN mirror:
ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/"
By default, ELECTRON_CUSTOM_DIR
is set to v$VERSION
. To change the format, use the {{ version }}
placeholder. For example, version-{{ version }}
resolves to version-5.0.0
, {{ version }}
resolves to 5.0.0
, and v{{ version }}
is equivalent to the default. As a more concrete example, to use the China non-CDN mirror:
ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/"
ELECTRON_CUSTOM_DIR="{{ version }}"
The above configuration will download from URLs such as https://npmmirror.com/mirrors/electron/8.0.0/electron-v8.0.0-linux-x64.zip
.
Si tu réplica sirve artefactos con diferentes sumas de verificación al del oficial de Electron, puede que tengas que establecer electron_use_remote_checksums=1
para forzar a Electron a usar el archivo SHASUMS256.txt
para verificar la suma de verificación en lugar de la comprobación incrustada.
Caché
Alternativamente, puede anular la memoria caché local. @electron-get
almacenará en caché los archivos binarios descargados en un directorio local para no sobrecargar tu red. Puede usar esa carpeta de caché para proporcionar compilaciones personalizadas de Electron o para evitar hacer contacto con la red en absoluto.
- Linux:
$XDG_CACHE_HOME
or~/.cache/electron/
- macOS:
~/Library/Caches/electron/
- Windows:
$LOCALAPPDATA/electron/Cache
or~/AppData/Local/electron/Cache/
En entornos que han estado usando versiones anteriores de Electron, también podrás encontrar la caché en ~/.electron
.
También se puede anular la ubicación de almacenamiento en caché local al proporcionar una variable de entorno electron_config_cache
.
The cache contains the version's official zip file as well as a checksum, and is stored as [checksum]/[filename]
. A typical cache might look like this:
├── a91b089b5dc5b1279966511344b805ec84869b6cd60af44f800b363bba25b915
│ └── electron-v15.3.1-darwin-x64.zip
Omitir la descarga del archivo binario
Bajo suyo, la API JavaScript de Electron se une a un binario que contiene sus implementaciones. Because this binary is crucial to the function of any Electron app, it is downloaded by default in the postinstall
step every time you install electron
from the npm registry.
However, if you want to install your project's dependencies but don't need to use Electron functionality, you can set the ELECTRON_SKIP_BINARY_DOWNLOAD
environment variable to prevent the binary from being downloaded. For instance, this feature can be useful in continuous integration environments when running unit tests that mock out the electron
module.
- npm
- Yarn
- pnpm
ELECTRON_SKIP_BINARY_DOWNLOAD=1 npm install
ELECTRON_SKIP_BINARY_DOWNLOAD=1 yarn install
ELECTRON_SKIP_BINARY_DOWNLOAD=1 pnpm install
Problemas
Cuando ejecutamos npm install electron
, ocasionalmente algunos usuarios encuentran errores en la instalación.
En casi todos los casos, estos errores son resultados de problemas en la red y no de problemas con el paquete npm de electron
. Errores como ELIFECYCLE
, EAI_AGAIN
, ECONNRESET
y ETIMEDOUT
son indicadores de dichos problemas de red. La mejor solución es tratar de cambiar las redes, o esperar un poco e instalar de nuevo.
También puede intentar descargar Electron directamente de electron/electron/releases si la ruta de instalación npm
está fallando.
Si la instalación falla con un error EACCESS
puede que se necesite los fix your npm permissions.
Si el error de arriba persiste, puede ser que la marca unsafe-perm necesite sea establecido a true:
sudo npm install electron --unsafe-perm=true
En redes lentas, puede ser aconsejable utilizar la marca --verbose
de manera que se muestre el progreso de la descarga:
npm install --verbose electron
Si necesita forzar que se vuelvan a descargar el recurso y el archivo SHASUM, fije la variable de entorno force_no_cache
a true
.