Thursday, November 14, 2013

proxyconf 0.1.0 リリース add, useなどのサブコマンドを追加

ターミナルのためのプロキシ切り替えコマンド"proxyconf"の0.1.0をリリースしました。

このリリースではadd, useなどのサブコマンドが追加され、ターミナルで任意のプロキシに素早く切り替えることができるようになりました。 基本的な使い方はGithubのREADMEと前のブログ投稿をみてください。

アップデート

旧バージョンを使っていた人は以下のコマンドでアップデートできます。
$ gem update proxyconf
$ proxyconf-setup update
$ source "$HOME/.proxyconf/proxyconf"

通常の使い方

システムに設定されているプロキシを使う場合はproxyconfコマンドを実行するだけです。(旧バージョンから変わらず)

$ proxyconf
set proxy: yourproxy.com:8080

これで環境変数のhttp_proxy, https_proxy, ftp_proxyに、今使っているネットワークに対してシステム環境設定で設定しているプロキシが設定されます。

任意のプロキシを設定して使う

addコマンドで任意のプロキシをproxyconfに登録し、useコマンドで設定したプロキシに切り替えることができます。

$ proxyconf add other other.proxy.com:8080
$ proxyconf use other

addで登録したプロキシの一覧はlistコマンドで表示できます。またinfoコマンドで指定したプロキシの設定内容を確認できます。

$ proxyconf list
current
other
$ proxyconf info other
export http_proxy=other.proxy.com:8080
export ftp_proxy=other.proxy.com:8080
export https_proxy=other.proxy.com:8080

登録したプロキシはremoveコマンドで削除できます。

$ proxyconf remove other
$ proxyconf list
current

Thursday, November 07, 2013

proxyconf : ターミナルのためのプロキシ切り替えコマンド

proxyconfというターミナルのためのプロキシ切り替えツールをgemでリリースしました。

いつも仕事でMacを使っているとき、Ethernetケーブルでは会社のネットワークに、WiFiでは別のプロバイダのネットワークに繋がっているんですが、会社のネットワークではプロキシサーバーを通さなければ行けません。Macだとブラウザでネットをみるときにはシステム環境設定で設定してあるプロキシを自動的に使ってくれるので問題ないのですが、ターミナルでcurlのようなネット接続するツールを使うにはいちいち環境変数のhttp_proxyを設定しなければいけないのが面倒でした。

そこでターミナルでも現在のネットワークに対応したプロキシを自動的に設定するツールとしてproxyconfを作りました。

インストール

以下の手順でインストールしてください。

$ gem install proxyconf
$ proxyconf-setup

proxyconf-setupコマンドで、~/.proxyconfディレクトリを作り、~/.bash_profileの最後にproxyconf用の設定を読み込むための一行を追加します。この設定は次にターミナルを開いたときから有効になります。インストールしたターミナルですぐに利用する場合は以下のコマンドをターミナルに入力してください。

$ source "$HOME/.proxyconf/proxyconf"

使い方

単純にproxyconfコマンドを実行するだけです。

$ proxyconf
set proxy: yourproxy.com:8080

これで環境変数のhttp_proxy, https_proxy, ftp_proxyに、今使っているネットワークに対してシステム環境設定で設定しているプロキシが設定されます。

アンインストール

以下のコマンドでファイルを削除します。

$ gem uninstall proxyconf
$ rm -rf ~/.proxyconf

次に、以下の行を~/.bash_profileまたは~/.bashrcから削除してください。

[[ -s "$HOME/.proxyconf/proxyconf" ]] && source "$HOME/.proxyconf/proxyconf"

対応OS

現時点ではMacにしか対応していません。今後、Linuxなら対応可能だと思います。Windowsは多分無理かな。一部bashを使っているので。