読者です 読者をやめる 読者になる 読者になる

なんとな~くしあわせ?の日記

ClojureとかAWSの設定とかをメモする技術ブログ

msys2 + pacmanをproxy環境で使う



msys2の設定

x86_64ネイティブなmsysがリリースされているので、社内環境でも使用できるようにしてみた。

以下、Qiitaの引用

Windowsgccなどを利用できるMSYS2の環境設定など


Windowsでgccなどを利用できるMSYS2の環境設定など - Qiita

http://sourceforge.net/projects/msys2/files/Base/

より、環境にあったものをダウンロードしてください。
64BitOSならば64bit版を落としておきましょう。
(64Bit→x86_64、32Bit→i686です)

その後インストーラよりインストールすると、c:\にフォルダができてます。(64Bitならmsys64になります)
その中にあるmsys2_shell.batを動かしてシェルが動けばOKです。
proxyの設定

社内環境からは簡単には動いてくれないので…ファイルパスはデフォルトの設定です。

認証が必要なproxyの記述形式

http://{user}:{password}@{ip:*.*.*.*}:{port}/

基本はこれなのだが、URLエンコードが必要な文字列がuser, passwordに入り込んだ場合ちょっと工夫が必要になる。

proxy.sh
C:\msys64\etc\profile.d

「@」はパーセントエンコーディングする

export http_proxy=http://nanashi.gonbei%40jp.fushianasan.com:1111111111@mordor.proxy.fushianasan.com:8080/
export https_proxy=http://nanashi.gonbei%40jp.fushianasan.com:1111111111@mordor.proxy.fushianasan.com:8080/
export ftp_proxy=http://nanashi.gonbei%40jp.fushianasan.com:1111111111@mordor.proxy.fushianasan.com:8080/
export HTTP_PROXY=http://nanashi.gonbei%40jp.fushianasan.com:1111111111@mordor.proxy.fushianasan.com:8080/
export HTTPS_PROXY=http://nanashi.gonbei%40jp.fushianasan.com:1111111111@mordor.proxy.fushianasan.com:8080/
export FTP_PROXY=http://nanashi.gonbei%40jp.fushianasan.com:1111111111@mordor.proxy.fushianasan.com:8080/
pacman.conf
C:\msys64\etc

以下のどちらかのコメントアウトを外す、たぶんcurlは最初から入ってるのでそっちを使う方がよい

XferCommand = /usr/bin/curl -C - -f %u > %o
XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
wgetrc
~/wgetrc

wgetを使う場合は以下のように設定する*1

export http_proxy=http://nanashi.gonbei%40jp.fushianasan.com:1111111111@mordor.proxy.fushianasan.com:8080/
export https_proxy=http://nanashi.gonbei%40jp.fushianasan.com:1111111111@mordor.proxy.fushianasan.com:8080/
export ftp_proxy=http://nanashi.gonbei%40jp.fushianasan.com:1111111111@mordor.proxy.fushianasan.com:8080/
pacmanでいろいろインストール

以下の要領でパッケージをインストールする。すばらっ!

 $ pacman -S <package>
で?これがなんなの?

あ?、別にUNIXコマンド使わないのならExcelEclipseで上等だろ

*1:msys2のx86_64版ではwgetも64bitビルドであることが要求される。まあどこかから拾ってくるなり、curlを使用するかしてください。