1
0
mirror of https://github.com/ohmyzsh/ohmyzsh.git synced 2024-12-11 15:33:41 +08:00
ohmyzsh/plugins/shell-proxy/README.md
fengkx e96b8bd523
refactor(shell-proxy)!: rename env vars to SHELLPROXY_* and add usage message (#10456)
BREAKING CHANGE: the `DEFAULT_PROXY` setting has been renamed to `SHELLPROXY_URL`,
and `CONFIG_PROXY` has been renamed to `SHELLPROXY_CONFIG`. See the plugin README
for more information.

Co-authored-by: Marc Cornellà <hello@mcornella.com>
2021-12-13 11:26:05 +01:00

1.3 KiB

shell-proxy plugin

This a pure user-space program, shell-proxy setter, written in Python3 and Zsh.

To use it, add shell-proxy to the plugins array in your zshrc file:

plugins=(... shell-proxy)

Key features

  • Supports macOS and Linux (Ubuntu, Archlinux, etc.)
  • Supports git via setting $GIT_SSH
  • Supports ssh, sftp, scp, slogin and ssh-copy-id via setting aliases
  • Built-in autocomplete

Usage

Method 1

Set SHELLPROXY_URL environment variable to the URL of the proxy server:

SHELLPROXY_URL="http://127.0.0.1:8123"
proxy enable

Method 2

Write a program file in $HOME/.config/proxy so that the proxy URL is defined dynamically.
Note that the program file must be executable.

Example:

#!/bin/bash

if [[ "$(uname)" = Darwin ]]; then
  echo "http://127.0.0.1:6152" # Surge Mac
else
  echo "http://127.0.0.1:8123" # polipo
fi

Method 3

Use method 2 but define the location of the program file by setting the
SHELLPROXY_CONFIG environment variable:

SHELLPROXY_CONFIG="$HOME/.dotfiles/proxy-config"

Reference

Maintainer