Working Behind a Network Proxy
This page lists some configuration tips for working behind a proxy.
HTTP/HTTPS/FTP Setup
Set the following environment variables in your ~/.bashrc file. This example uses the same proxy server and port number for all three protocols.
export http_proxy='http://myproxy.example.com:1080/' export https_proxy='https://myproxy.example.com:1080/' export ftp_proxy='http://myproxy.example.com:1080/' export no_proxy = '.example.com'
Git Setup (with nc)
First make sure you have the netcat utility (nc) installed on your host.
Create a script named git-proxy and put it in /usr/local/bin:
#!/bin/bash PROXY=myproxy.example.com PORT=1080 case $1 in # list internal git servers here that you do not want to use # the proxy with, separated by a pipe character '|' as below: internalgit1.example.com|internalgit2.example.com) METHOD="-X connect" ;; *) METHOD="-X 5 -x ${PROXY}:${PORT}" ;; esac /usr/bin/nc $METHOD $*
Note that on some Linux distros, the nc binary is in /bin. You can also change the '5' in the second METHOD line to '4' if your proxy server only supports SOCKS v4.
Then set the environment variable GIT_PROXY_COMMAND in your ~/.bashrc file and point it to this script:
export GIT_PROXY_COMMAND=/usr/local/bin/git-proxy export GIT_PROXY_IGNORE="example.com"
Subversion Setup
You'll need to have the following in your ~/.subversion/servers file:
[global] http-proxy-exceptions = *.exception.com, www.internal-site.org http-proxy-host = myproxy.example.com http-proxy-port = 1080
You can also set http-proxy-username and http-proxy-password if your proxy requires authentication.
CVS Setup
For CVS checkouts to work correctly, you need to add some options in your Poky local.conf file.
CVS_PROXY_HOST = "myproxy.example.com" CVS_PROXY_PORT = "1080"