Variables d'environnement
Gèrent la configuration et le comportement de l'application sans modifier le code.
Certains comportements d'Electron sont contrôlés par les variables d'environnement car ils sont initialisés avant les indicateurs de ligne de commande et le code de l'application.
Exemple sur un shell POSIX :
$ export ELECTRON_ENABLE_LOGGING=true
$ electron
Exemple sur la console Windows :
> set ELECTRON_ENABLE_LOGGING=true
> electron
Variables de production
Les variables d'environnement suivantes sont destinées principalement à être utilisée lors de l'exécution des applications Electron empaquetées.
NODE_OPTIONS
Electron inclut le support pour un sous-ensemble des NODE_OPTIONS
de Node. La majorité sont supportés à l'exception de celles rentrant en conflit avec l'utilisation de BoringSSL de Chromium.
Exemple :
export NODE_OPTIONS="--no-warnings --max-old-space-size=2048"
Les options non supportées sont :
--use-bundled-ca
--force-fips
--enable-fips
--openssl-config
--use-openssl-ca
NODE_OPTIONS
sont explicitement interdites dans les applications empaquetées, à l'exception des éléments suivants :
--max-http-header-size
--http-parser
Si le fuse nodeOptions
est désactivé, NODE_OPTIONS
sera ignorée.
NODE_EXTRA_CA_CERTS
Voir la documentation de Node.js cli pour plus de détails.
export NODE_EXTRA_CA_CERTS=/path/to/cert.pem
Si le fuse nodeOptions
est désactivé, NODE_EXTRA_CA_CERTS
sera ignorée.
GOOGLE_API_KEY
La prise en charge de la géolocalisation dans Electron nécessite l'utilisation du service web de géolocalisation de la plateforme Google Cloud . Pour activer cette fonctionnalité, vous devez obtenir une clé API Google et placer le code suivant dans votre fichier de processus principal, avant d'ouvrir une fenêtre de navigateur effectuant des requêtes de géolocalisation :
process.env.GOOGLE_API_KEY = 'VOTRE_CLE_ICI'
Par défaut, une clé Google API nouvellement générée peut ne pas être autorisée à faire des requêtes de géolocalisation. Pour activer le service Web de géolocalisation pour votre projet, activez-le à travers la bibliothèque API.
N.B. Vous devrez ajouter un Compte de Facturation au projet associé à la clé de l'API pour que le service Web de géolocalisation fonctionne.
ELECTRON_NO_ASAR
Désactive la prise en charge d'ASAR. Cette variable n’est prise en charge que dans les processus enfants issus d'un fork et les processus enfants engendrés qui définissent ELECTRON_RUN_AS_NODE
.
ELECTRON_RUN_AS_NODE
Démarre le processus comme un processus normal de Node.js.
Dans ce mode, vous pourrez transmettre des options d’interface de ligne de commande à Node.js comme vous le feriez lors de l’exécution normale de Node.js, à l’exception toutefois des indicateurs suivants :
- "--openssl-config"
- "--use-bundled-ca"
- "--use-openssl-ca",
- "--force-fips"
- "--enable-fips"
Etant donné qu’Electron utilise BoringSSL au lieu d’OpenSSL lors de la construction du module crypto
de Node.js, ces indicateurs sont désactivés car ils ne fonctionneraient pas comme prévu.
Si le fuse runAsNode
est désactivé, ELECTRON_RUN_AS_NODE
sera ignorée.
ELECTRON_NO_ATTACH_CONSOLE
Windows
Ne s'attache pas la session courante de la console.
ELECTRON_FORCE_WINDOW_MENU_BAR
Linux
N'utilise pas la bar de menu global sur Linux.
ELECTRON_TRASH
Linux
Définit l’implémentation de la corbeille sous Linux. Par défaut la valeur est gio
.
Options :
gvfs-trash
trash-cli
kioclient5
kioclient
ELECTRON_OZONE_PLATFORM_HINT
Linux
Selects the preferred platform backend used on Linux. The default one is x11
. auto
selects Wayland if possible, X11 otherwise.
Options :
auto
wayland
x11
Variables de développement
Les variables d'environnement suivantes sont destinés principalement aux développement et débogage.
ELECTRON_ENABLE_LOGGING
Affiche les logs interne de Chromium sur la console.
Définir cette variable revient à transmettre --enable-logging
sur la ligne de commande. For more info, see --enable-logging
in command-line switches.
ELECTRON_LOG_FILE
Définit le fichier destination pour l'enregistrement interne de Chromium.
Définir cette variable revient à transmettre --log-file
sur la ligne de commande. For more info, see --log-file
in command-line switches.
ELECTRON_DEBUG_NOTIFICATIONS
Adds extra logs to Notification
lifecycles on macOS to aid in debugging. Les logs supplémentaires seront affichés lorsque de nouvelles Notifications seront créées ou activées. Ils seront également affichés lorsque des actions courantes : affichage d'une notification, son rejet, son bouton cliqué, ou qu'il lui a été répondu.
Exemple de sortie :
Notification created (com.github.Electron:notification:EAF7B87C-A113-43D7-8E76-F88EC9D73D44)
Notification displayed (com.github.Electron:notification:EAF7B87C-A113-43D7-8E76-F88EC9D73D44)
Notification activated (com.github.Electron:notification:EAF7B87C-A113-43D7-8E76-F88EC9D73D44)
Notification replied to (com.github.Electron:notification:EAF7B87C-A113-43D7-8E76-F88EC9D73D44)
ELECTRON_LOG_ASAR_READS
Lorsque Electron lit depuis un fichier ASAR, enregistre l'offset de lecture et le chemin d'accès vers le tmpdir
du système. Le fichier résultant peut être fourni au module ASAR pour optimiser l'ordre des fichiers.
ELECTRON_ENABLE_STACK_DUMPING
Affiche la stack trace sur la console lorsqu'Electron plante.
Cette variable d'environnement ne fonctionnera pas si crashReporter
est démarré.
ELECTRON_DEFAULT_ERROR_MODE
Windows
Affiche la boite de dialogue de plantage lorsqu'Electron plante.
Cette variable d'environnement ne fonctionnera pas si crashReporter
est démarré.
ELECTRON_OVERRIDE_DIST_PATH
Quand lancée depuis le paquet electron
, cette variable dit à la commande d'electron
d'utiliser la version spécifiée au lieu de celle installée avec npm install
. Utilisation:
export ELECTRON_OVERRIDE_DIST_PATH=/Users/username/projects/electron/out/Testing
Défini par électron
Electron définit certaines variables dans votre environnement lors de son exécution.
ORIGINAL_XDG_CURRENT_DESKTOP
Cette variable est affectée avec la valeur de XDG_CURRENT_DESKTOP
avec laquelle votre application a été lancée à l’origine. Electron modifie parfois la valeur de XDG_CURRENT_DESKTOP
pour influer sur d’autres logiques dans Chromium, donc si vous voulez accéder à la valeur d’origine vous devrez rechercher cette variable d’environnement à la place.