Linux
Linux doesn't have one universal proxy setting — there's the shell environment, the desktop environment (GNOME / KDE), and per-app config. This page covers the patterns you actually need.
Environment variables (cli + most apps)
The de-facto standard. Works for curl, wget, apt, pip, npm, git, and most server software.
export http_proxy="http://helo_s1a2b3c4d5e-type-res-region-us:PASSWORD@gate.helodata.io:7777"
export https_proxy="$http_proxy"
export no_proxy="localhost,127.0.0.1,.local"
# Also set the uppercase variants — some apps only honor those:
export HTTP_PROXY="$http_proxy"
export HTTPS_PROXY="$https_proxy"
export NO_PROXY="$no_proxy"Put it in ~/.bashrc, ~/.zshrc, or /etc/environment for persistence.
GNOME
gsettings set org.gnome.system.proxy mode 'manual'
gsettings set org.gnome.system.proxy.http host 'gate.helodata.io'
gsettings set org.gnome.system.proxy.http port 7777
gsettings set org.gnome.system.proxy.https host 'gate.helodata.io'
gsettings set org.gnome.system.proxy.https port 7777GNOME's proxy dialog does not store credentials — set them via the secret-tool or per-app. Easier: just use envvars from a terminal-launched session.
KDE
System Settings → Network → Proxy → Use manually specified proxy. Fill the same host/port. KDE stores creds in KWallet.
apt (Debian / Ubuntu)
Create /etc/apt/apt.conf.d/99helo-proxy:
yum / dnf (RHEL / Fedora)
Add to /etc/yum.conf (yum) or /etc/dnf/dnf.conf (dnf):
Docker
Daemon-level (affects image pulls):
Container-level — pass --env http_proxy=… per docker run or build.
systemd services
For a service to pick up a proxy, add to its unit file:
then systemctl daemon-reload && systemctl restart <service>.
Verify
Common pitfalls
Case-sensitive envvars — many apps only respect lowercase
http_proxy, some only uppercase. Set both.localhostbypass missing — withoutno_proxy=localhost, local dev servers route through helodata and fail.Special characters in password — URL-encode (
@→%40,:→%3A) when embedding inhttp_proxy.
Last updated
Was this helpful?