Is there any proxy settings?



for the record under windows7:
https-proxy = http://server:port
http-proxy = http://server:port


I’m still having trouble getting any packages installed or updated (let alone Atom built) when I’m sitting in a public hotspot, such as Starbucks or what have you.

Because in that case I wouldn’t know what Proxy I need to enter, and these networks usually meddle with the SSL encryption so that none of the above will work.

Any idea what to do with that?

Ideally, I would prefer I could simply force all building, downloading, cloning and updating, to be done over normal http.


And for OS X, add those lines to /Applications/


I think your path should be similar to this:


As a Windows 8 user, this solution seems rather awkward. Firstly, I need admin privileges to edit the .apmrc file. Secondly, I think that the file is version dependent, so I will need to repeat the edit after an update.

It would be nicer to be able to set the proxy via Settings.


Try following the instructions in the apm README and edit the ~/.atom/.apmrc file. For Windows users ~ is Unix shorthand for your home directory … which on Windows I believe defaults to C:\Users\[Username], but it has been a few years since I’ve used Windows regularly.

Nothing in Atom should require you to edit anything under the Atom program directory. Solutions that require this are hacky at best.

How to install an Atom package on Windows 8 behind a proxy server?

I can say my proxy settings are partly working, there are two .apmrc files:


if I set it there atom has access to net, but some packages during upgrade not, looks like git has a problem with connecting but I set it correctly for git itself.


In Windows, changing the .apmrc and environment variables were working on Atom up to version 0.168.0.
It’s not working anymore.
Now it keeps throwing this error:

TUNNEL: tunneling socket could not be established, cause=connect EAFNOSUPPORT
Error: connect EAFNOSUPPORT
    at errnoException (net.js:905:11)
    at connect (net.js:767:19)
    at net.js:846:9
    at asyncCallback (dns.js:68:16)
    at Object.onanswer [as oncomplete] (dns.js:121:9)


Hi, adding a proxy setting to a config file is not a good solution. Here are two cases: (I’m using a Mac but I suspect these are applicable to all supported systems)

First, I have a laptop. It moves around with me. Sometimes I’m at work, where I have a proxy, sometimes I’m other places where there is no proxy. It’s a pain in the butt to have to change my config every time I change locations. Most Mac apps can detect these settings from the network settings. I don’t know how they do it, but they do, and it’s effortless.

Second, my company requires us to change the password regularly. That means I’d also need to remember to change my config file as well. If I forget and an application tries to access the Internet three times with the wrong password it locks my account and I can’t use my computer nor check my e-mail on any device. Again, other apps on my system get this information from the Mac OS keychain so when I change my password one time, Mac OS asks me to update the keychain and then I don’t have to update any apps.


On Windows I had to run this:

apm config set https-proxy %HTTPS_PROXY%

Confirming that it worked with the aforementioned command:

apm config get https-proxy


On Linux works too!

In my case with user and password to authenticate on proxy:

$ apm config set proxy "http://user:pass@host:port"
$ apm config set https_proxy "http://user:pass@host:port"


Why are there versions with dash and versions with underscore anyways?!


on Ubunto i run

apm config set proxy "http://domain\user:pass@host:port/"
apm config set https_proxy "http://domain\user:pass@host:port/"

and i get a tunneling socket could not be established, cause=getaddrinfo, ENOTFOUND

error, any hints/tips ?

(also tried without the tailing ’ in the proxy confog)


I’m pretty sure if you type that in on the command line, the command line parser is going to garble the backslash unless you double it.


thanks !! it works now
turns out i can remove the domain part of the user completely and avoid the problem and the proxy still accepts it. yay


Ran this on Windows

apm config set proxy "http://ip:port/"
apm config set https_proxy "http://ip:port/"

Looks correct when I check with apm config get… And yet Atom and apm are unable to connect to anything

Request for package information failed: tunneling socket could not be established, cause=connect ETIMEDOUT

Not sure why this should even been needed, everything else on this computer works just fine with proxy set in Windows.


The correct setting is ‘https-proxy’, not ‘https_proxy’. So:

apm config set https-proxy ''


Oh, indeed it is…

Sadly that doesn’t work any better. Stupid proxies, ‘security measure’ that just makes work harder…
Guess I’ll just have to tether my phone occasionally to update atom.


Same problem here. I’m using Ubuntu. I’ve tried every possible combination of answers posted here and no success.
I set ~/.atom/.apmrc’s http-proxy, proxy and strict-ssl properties and:

gyp info it worked if it ends with ok
gyp info using node-gyp@1.0.2
gyp info using node@0.10.35 | linux | x64
gyp http GET
gyp WARN install got an error, rolling back install
gyp ERR! install error 
gyp ERR! stack Error: tunneling socket could not be established, cause=Parse Error
gyp ERR! stack     at ClientRequest.onError (/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/request/node_modules/tunnel-agent/index.js:168:17)
gyp ERR! stack     at ClientRequest.g (events.js:180:16)
gyp ERR! stack     at ClientRequest.emit (events.js:95:17)
gyp ERR! stack     at Socket.socketOnData (http.js:1593:9)
gyp ERR! stack     at TCP.onread (net.js:528:27)
gyp ERR! System Linux 3.13.0-37-generic
gyp ERR! command "/usr/share/atom/resources/app/apm/bin/node" "/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "install" "--target=0.22.0" "--dist-url=" "--arch=x64" "--ensure" "--proxy=http://user:pass@ip:port/"
gyp ERR! cwd /home/user/.atom
gyp ERR! node -v v0.10.35
gyp ERR! node-gyp -v v1.0.2
gyp ERR! not ok 

In a scary red font :rage:. User, pass… checked and changed.

Then in terminal I exported http_proxy and https_proxy settings.

$ export "http_proxy=http://..."
$ export "https_proxy=http://..."
$ apm install minimap

Same scary error.

Then I deleted the settings from ~/.atom/.apmrc and let alone those set in terminal:

$ env | grep proxy
 http_proxy=http://... OK
 https_proxy=http://... OK
$ apm install minimap
 Installing minimap to /home/user/.atom/packages ✗
 Request for package information failed: getaddrinfo ENOTFOUND (ENOTFOUND)

Same red, less scary.

Am I missing something?
Atom folks have done a great work, however proxy settings are so “basic” for an app these days… I think there is work to do.
Thanks in advance for any idea about this proxy issue.


I moved 2 posts to a new topic: How could one make a proxy setting UI?