Proxies

Equo Chromium allows you to enable seamless configuration of the browser’s proxy settings by using a PAC (Proxy Auto-Config) script or any of the other supported methods.

A PAC script is a small JavaScript file that tells the browser how to route each web request, deciding whether to send it directly or through one or more proxy servers. By defining these rules in a single, centralized file, you can:

  • Send different URLs through different proxies.

  • Bypass the proxy when connecting to local or trusted hosts.

  • List multiple proxies in order of preference, with a final fallback to direct connection.

You can also configure proxies by setting environment variables, using system properties, integrating with your desktop’s system proxy settings, or leveraging WPAD (Web Proxy Auto-Discovery).

PAC Script (Proxy Auto-Config)

A PAC script uses a standard JavaScript function, FindProxyForURL(url, host), which returns a proxy configuration string for each request. Equo Chromium can fetch and evaluate this script at startup. To point Chromium to your PAC file, set the following JVM‐style system property:

-Dchromium.proxy_pac_script="http://proxy.example.com/config.pac"

Environment Variables

Equo Chromium honors the standard UNIX environment variables for proxies:

export http_proxy="http://proxy-user:proxy-pass@proxy.example.com:3128"
export https_proxy="http://proxy-user:proxy-pass@proxy.example.com:3128"
export ftp_proxy="http://proxy.example.com:3128"
export no_proxy="localhost,127.0.0.1,*.mycompany.internal"

http_proxy/https_proxy/ftp_proxy: Full proxy URLs including credentials. no_proxy: Comma-separated hostnames/domains to bypass the proxy. Wildcards supported.

CEF switches

Proxy flags, as any CEF switch, can be passed via the -Dchromium.args system property. For Example:

Force all traffic through a proxy:

-Dchromium.args="--proxy-server=http://proxy.example.com:3128"

Use a PAC script:

-Dchromium.args="--proxy-pac-url=http://proxy.example.com/config.pac"

Add a proxy bypass list:

-Dchromium.args="--proxy-server=http://proxy.example.com:3128;--proxy-bypass-list=localhost;127.0.0.1;*.internal"

Enable WPAD:

-Dchromium.args="--proxy-auto-detect"

System Proxy Settings (Desktop Integration)

Equo Chromium integrates with your desktop environment’s proxy settings.

  • GNOME: GSettings keys read at startup (e.g., /system/proxy/mode, /system/proxy/autoconfig-url)

  • KDE: Settings read from KConfig or environment variables (e.g., HTTP_PROXY)

  • XFCE and others: Proxy picked up from exported environment variables

WPAD (Web Proxy Auto-Discovery)

Equo Chromium supports automatic discovery of a PAC script via WPAD, as it automatically queries DHCP (Option 252) or DNS (wpad.<domain>/wpad.dat). It can also be explicitly enabled:

-Dchromium.args="--proxy-auto-detect"

Chromium Preferences File (Advanced/Static Configuration)

You can define proxy settings in Chromium’s JSON preferences file by editing ~/.config/chromium/Default/Preferences and adding:

{
  "proxy": {
    "mode": "fixed_servers",
    "server": "socks5://127.0.0.1:1080",
    "bypass_list": ["localhost", "127.0.0.1", "*.internal"]
  }
}

Summary of Available Methods

  • -Dchromium.proxy_pac_script — Load PAC script via system property

  • Environment variables — http_proxy, https_proxy, no_proxy

  • Supported Chromium flags passing them via -Dchromium.args.

  • System proxy settings — GNOME, KDE, XFCE integration

  • WPAD — DHCP/DNS-based PAC script discovery

  • Preferences file — Static JSON configuration for locked-down setups