chocolateyをはじめて触ってみたのでメモ。
chocolateyってなに?
Windowsでapt-get install や apt-get update、apt-get upgradeのようなことをするパッケージ管理ツール。
https://chocolatey.org/docs/history
によると"Chocolatey nougat"と"nuget(MSがやってるやつ)"を「かけて」あるらしい。へー。
どんなパッケージを扱えるの?
https://chocolatey.org/packages に行ってぐぐる。
rubyやpythonやJREはもちろんgolangもある。
sysinternalsってなんだか懐かしい名前も。
chromeもあるけど別にパッケージ管理ツールでインストールしなくてもいいような。。。コマンドラインからパッケージをずらっと並べてインストールする分には欲しいか。
あ、kobitoもあるでよ。(この文章はchocoでインストールしたkobitoで書いてる)
chocolateyインストール方法
スタートメニューから[Windows PowerShell]を[管理者として実行する]で開き
https://chocolatey.org/install から以下のコマンドをコピペしてきて実行。
インストールが始まる。
PS C:\WINDOWS\system32> iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex
そのあと環境変数の再設定のためwindowsを再起動した(と思う)。
パッケージはどうやってインストールするの?
以下は例としてgolang 1.7.3 (2017/01/14現在)をインストールする様子。
非管理者権限のコマンドプロンプトで実行しようとしたら怒られたので、管理者実行したPowerShellから実行した。パッケージによって非管理者権限でインストールできるものと管理者権限でしかインストールできないものがある?よーわからん。
golangに必要な環境変数(GOROOT)も設定してくれた。
大抵のパッケージはインストールするとc:\ProgramData以下にインストールされるのだがgolangは
c:\tools\go
にインストールされた。うーん、やめて欲しい。。。
インストール時の引数でインストール先を変更できないのかな。「Do you want to run the script?」で「[P]rint」を選択したら引数説明が表示されるのかな。誰か試してみて。
PS C:\WINDOWS\system32> choco install golang
Chocolatey v0.10.3
Installing the following packages:
golang
By installing you accept licenses for the packages.
golang v1.7.3 [Approved]
golang package files install completed. Performing other installation steps.
The package golang wants to run 'chocolateyinstall.ps1'.
Note: If you don't run this script, the installation will fail.
Note: To confirm automatically next time, use '-y' or consider setting
'allowGlobalConfirmation'. Run 'choco feature -h' for more details.
Do you want to run the script?([Y]es/[N]o/[P]rint): y
C:\tools
Downloading golang 64 bit
from 'https://storage.googleapis.com/golang/go1.7.3.windows-amd64.zip'
Progress: 100% - Completed download of C:\Users\eijim\AppData\Local\Temp\chocolatey\golang\1.7.3\go1.7.3.windows-amd64.zip (84.73 MB).
Download of go1.7.3.windows-amd64.zip (84.73 MB) completed.
Hashes match.
Extracting C:\Users\eijim\AppData\Local\Temp\chocolatey\golang\1.7.3\go1.7.3.windows-amd64.zip to C:\tools...
C:\tools
PATH environment variable does not have C:\tools\go\bin in it. Adding...
Environment Vars (like PATH) have changed. Close/reopen your shell to
see the changes (or in powershell/cmd.exe just type `refreshenv`).
The install of golang was successful.
Software installed to 'C:\tools'
Chocolatey installed 1/1 packages. 0 packages failed.
See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).
自分用メモ
今回chocolateyを使ったのはVisual Studio Code用にgit.commandlineを導入するため。(参考: Visual Studio Codeはmsys2版gitに対応していない)
chocoでgit.commandlineをインストールした後、Visual Studio Codeの[ファイル][基本設定][ユーザ設定]を開き以下の通り編集するとgitが使えるようになる。
{
"git.path": "%ChocolateyInstall%\\lib\\git.commandline\\tools\\bin\\git.exe"
}