Windowsネイティブな開発環境があるとよさそうという気持ちになったので、構築してみることにした記録です。
という条件のもと、Windows 10上にRubyおよびGolangの開発環境を構築しました。
なるべくネイティブ環境を目指すので、cmd.exeもしくはPowerShellを用いることになります。なので、PowerShellを使用しました。ただ、powershell.exeをそのまま使うのはちょっとつらいので、ターミナルエミュレーターからPowerShellを使用します。ConEmuやcmderなどがありますが、今回はConEmuを使うことにしました。
ConEmuでは、colorschemeとしてSolarized Darkを、PowerShellの起動オプションとして-executionpolicy remotesigned
を追加しました。
Windows 10の開発環境を整えた - YAMAGUCHI::weblog
LinuxでのaptやDNF、macOSでのhomebrewのようなパッケージマネージャーは開発には欠かせません。 Windowsで使用できるパッケージマネージャーといえばChocolateyなので、インストールしました。インストールにあたって、WMF経由ではなく、Chocolatey公式サイトの手順に従いました。
Rubyは、RubyInstallerを用いてインストールしました。場所はデフォルトのC直下にしています。
Rubyのバージョンを切り替えて使いたいとなっても、rbenvやrvmはPowerShellでは動作しません。なので、uruを使用してRubyのバージョンを切り替えることにします。
choco install uru.0.8.4.nupkg
を実行するインストールが終了したあとは、uru admin add C:\Ruby25-x64\bin --tag 2.5.0
などでuruにRubyを追加し、 .ruby-version
のあるディレクトリで uru auto
を実行するとRubyのversionが切り替わります。
Golangも、Rubyと同様にインストーラ(msi)を用いてインストールしました。
Downloads - The Go Programming Language
また、環境変数として、以下の値を登録しました。
C:\Users\unasuke
C:\Users\unasuke
C:\Users\unasuke\bin
公式のインストーラを使用することで、PowerShellからdockerを使用することができるようになりました。
Docker Community Edition for Windows - Docker Store
ChocolateyやDockerの環境を構築しても、どうしてもLinux環境がないとどうにもならないことがあるので、WSLのインストールも行ないます。
ちなみに、このブログを書くためのmiddlemanはWSL環境でしか動作しませんでした。
これに関しては、必要になったタイミングで使うという方針なので、あまり環境構築に手間をかけないことにしました。
最初はMSYS2でやっていくつもりだったのですが、Docker for Windowsを入れたタイミングでdocker
コマンドがMSYS2で入れたzshから使用できなかった(PATHが通ってなかっただけ?)のでエイヤでPowerShellに切り替えました。