<~2015>「Chocolatey」でWindowsでも楽々パッケージ管理

「Chocolatey」とは

今回はWindows環境でJenkinsを始めとする開発支援ツールを簡単にパッケージ管理できるツール「Chocolatey」をご紹介します。

最近はWeb系の開発を中心にMacを開発マシンとして用意する企業も増えてきましたが、未だ多くの企業はSIerを中心に開発マシンはWindowsだと思います。システムの開発ではVisual StudioやEclipseのような統合開発環境の他にも、Git, Maven, Ant, GradleといったCLIのツールやRubyやPerlのプログラミング言語環境を導入する必要があります。

MacやUbuntuではHomebrewやaptといったパッケージ管理システムがあり、またRubyやPerlにもRVMやPerlbrewといったパッケージ管理システムがあり、依存関係も含めて自動でパッケージ管理ができるようになっています。プライベートでの開発でそのような便利なパッケージ管理システムを使っていると、Windowsで個別ツールをちまちまインストール&管理していくのが非常にしんどくなってきます。プロジェクトによっては専用のインストール手順書とかあるかも知れません。でも、インストールだけで一日潰すとかやってられませんね。

Windowsでこのようなパッケージ管理を実現するのが今回ご紹介する「Chocolatey」です。

Chocolatey

インストール

インストールは非常に簡単で、以下のどちらかが便利です。
1. コマンド・プロンプトを起動して以下を入力します。

@powershell -NoProfile -ExecutionPolicy unrestricted -Command "iex ((new-object net.webclient).DownloadString('http://bit.ly/psChocInstall'))" && SET PATH=%PATH%;%systemdrive%\chocolatey\bin

2. Windows 7以降でWindows PowerShellがインストールされている環境であれば、PowerShellを起動して以下を入力します。

iex ((new-object net.webclient).DownloadString("http://bit.ly/psChocInstall"))

ただし、事前にPowerShellを「管理者として実行する」で起動して、下記を実施済みである必要があります(これは一度だけやっておけば大丈夫です)。

Set-ExecutionPolicy Unrestricted

PowerShellはオブジェクト指向ベースの強力なシェル環境で、Windows XPやWindows Vistaでもインストールできますので、この際にインストールできる環境の人はインストールしておきましょう。

3. 使い方
インストールは「cinst」です。Jenkinsをインストールしたい場合、PowerShellを起動して以下のように入力します。

cinst jenkins

依存関係がある場合、依存するパッケージもまとめてインストールされます。
アンインストールは以下のように入力します。

cuninst jenkins

Jenkinsのようにインストール時にサービスとして登録されるパッケージはPowerShellを「管理者として実行する」で起動しておく必要があることに注意してください。

PowerShellのパイプライン機能を使えば、複数のパッケージをインストールするのも簡単です。

Jenkins, Apache Ant, Apache Maven, Gradle, Gitをまとめてインストールするには以下のようにPowerShell上で入力します。

'jenkins', 'apache.ant', 'mvn', 'gradle', 'msysgit', 'poshgit' | % { cinst $_ }

ちまちまインストールするのに対して、1行で終わってしまいますね。インストール手順書とかも1行で終わりです。

インストールできるパッケージは下記のURLから調べることができます。

http://chocolatey.org/packages

今回は開発支援ツールばかり紹介していますが、Google ChromeやFireFox, Skype, Evernoteなども普通にパッケージとして用意されていますので、開発以外でのソフトウェア一括導入にも利用できます。

また、自分が使っているソフトウェアをChocolateyのパッケージとして公開したい場合、下記のURLからアップロードできます。パッケージとしてあったらなーという思ったら是非アップロードして他の人達のインストールも楽にしてあげましょう。

https://chocolatey.org/packages/upload

#開発者登録が必要です

その他様々な使い方は、Chocolateyのドキュメントが充実しています。

まとめ

依存関係のある多数の開発支援ツールを誤りなくインストールする、最新版にアップデートして不具合を解消するというのは結構大変で時間や労力がかかるものです。WindowsでもいまやChocolateyという強力なパッケージ管理システムがあるので、このような作業はChocolateyに任せてしまいましょう。

お問合せはお気軽に
https://service.shiftinc.jp/contact/

SHIFTについて(コーポレートサイト)
https://www.shiftinc.jp/

SHIFTのサービスについて(サービスサイト)
https://service.shiftinc.jp/

SHIFTの導入事例
https://service.shiftinc.jp/case/

お役立ち資料はこちら
https://service.shiftinc.jp/resources/

SHIFTの採用情報はこちら
https://recruit.shiftinc.jp/career/