diff --git a/atom.sh b/atom.sh index 57d7f71e6..768ab72b9 100755 --- a/atom.sh +++ b/atom.sh @@ -24,7 +24,11 @@ case $(basename $0) in ;; esac -export ATOM_DISABLE_SHELLING_OUT_FOR_ENVIRONMENT=true +# Only set the ATOM_DISABLE_SHELLING_OUT_FOR_ENVIRONMENT env var if it hasn't been set. +if [ -z "$ATOM_DISABLE_SHELLING_OUT_FOR_ENVIRONMENT" ] +then + export ATOM_DISABLE_SHELLING_OUT_FOR_ENVIRONMENT=true +fi ATOM_ADD=false ATOM_NEW_WINDOW=false diff --git a/resources/linux/atom.desktop.in b/resources/linux/atom.desktop.in index 43074179d..f028eba23 100644 --- a/resources/linux/atom.desktop.in +++ b/resources/linux/atom.desktop.in @@ -2,7 +2,7 @@ Name=<%= appName %> Comment=<%= description %> GenericName=Text Editor -Exec=<%= installDir %>/bin/<%= appFileName %> %F +Exec=env ATOM_DISABLE_SHELLING_OUT_FOR_ENVIRONMENT=false <%= installDir %>/bin/<%= appFileName %> %F Icon=<%= iconPath %> Type=Application StartupNotify=true diff --git a/src/update-process-env.js b/src/update-process-env.js index 20d937d96..a7e2622dd 100644 --- a/src/update-process-env.js +++ b/src/update-process-env.js @@ -51,7 +51,9 @@ function shouldGetEnvFromShell (env) { return false } - if (env.ATOM_DISABLE_SHELLING_OUT_FOR_ENVIRONMENT || process.env.ATOM_DISABLE_SHELLING_OUT_FOR_ENVIRONMENT) { + const disableSellingOut = env.ATOM_DISABLE_SHELLING_OUT_FOR_ENVIRONMENT || process.env.ATOM_DISABLE_SHELLING_OUT_FOR_ENVIRONMENT + + if (disableSellingOut === 'true') { return false }