Windowsで使えるパッケージマネージャ(Chocolatey)を導入してみた

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

普段使いはMacなので、パッケージ管理はHomebrewを用いていますが、
まれにWindowsを使うことがあります。

Windows環境においてJavaやNode.jsなどをインストールしようとすると、
サイトに行ってインストーラーを落としてきて、インストールをして・・・と意外と手間がかかります。

このような悩みの解決策として、Chocolateyというパッケージマネージャが出ているようです。

導入方法

以下の環境で試しました。

  • Windows 2012 Server
  • Windows 8.1
  • Windows 7

PowerShell 経由で実行をするため、スクリプトの実行を許可する必要があります。

PowerShellスクリプトの実行セキュリティ・ポリシーを変更する

上記のサイトにある通りですが、PowerShellを管理者権限で立ち上げた後に
以下のコマンドでスクリプトの実行が可能です。

PowerShellスクリプトの実行セキュリティポリシーの変更

PS C:\Windows\system32> Set-ExecutionPolicy RemoteSigned …ポリシーの設定
PS C:\Windows\system32> Get-ExecutionPolicy …結果の確認
RemoteSigned …結果

その後、chocolateyのインストールについては、
オフィシャルサイトに記載されているコマンドを実行することでインストールが可能です。

chocolatyインストール

PS C:\Windows\system32> iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
PS C:\Windows\system32> choco version 

found         : 0.9.8.32
name          : chocolatey
latestCompare : 000000000000.000000000009.000000000008.000000000032
verMessage    : Latest version installed
latest        : 0.9.8.32
foundCompare  : 000000000000.000000000009.000000000008.000000000032

パッケージの導入方法

chocolatyの導入が完了後、提供されているパッケージのインストールを行いたいと思います。

提供されているパッケージ郡は下記のサイトで確認することが可能です。

Chocolatey Gallery | Packages

今回は上記の中で導入する機会の多い、JAVA・Gitのインストールを行ってみたいと思います。

JAVA (Java SE 8.0.31)

検索してみたところ、Java 7 とJava 8でパッケージ名が異なるようです。

今回はJava 8のJDKを導入してみようと思うのでjdk8と指定します。

環境変数への適用も行ってくれるのかも確認してみたいと思います。

インストール前段階の確認

PS C:\Windows\system32> choco list -localonly
パッケージが見つかりませんでした。
PS C:\Windows\system32> java
java : 用語 'java' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません
。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから、再試行してくださ
い。
発生場所 行:1 文字:1
+ java -version
+ ~~~~
    + CategoryInfo          : ObjectNotFound: (java:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

何もインストールされておらず、またJAVAに対してパスが通っていないことがわかります。

インストール&確認作業を実施

PS C:\Windows\system32> choco install jdk8
(PowerShellを再起動)
PS C:\Windows\system32> choco list -localonly
jdk8 8.0.31
PS C:\Windows\system32> java -version
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)

Javaがインストールされ、環境変数も含めて設定されていることがわかります。

Node.js

PS C:\Windows\system32> choco install nodejs
PS C:\Windows\system32> choco list -localonly
jdk8 8.0.31
nodejs 0.10.36
nodejs.commandline 0.10.36
npm 1.4.9
PS C:\Windows\system32>node -v
v0.10.36
PS C:\Windows\system32>npm -v
1.4.9

Node.jsのインストールに関しては関連するパッケージとしてnpmのインストールも行ってくれている模様です。

Git

PS C:\Windows\system32> choco install git
(PowerShellを再起動)
PS C:\Windows\system32> git --version
git version 1.9.5.msysgit.0

まとめ

MacやLinuxを使っているとHomebrewやyum・aptといったパッケージマネージャの恩恵があり、
ソフトウェアの導入が非常に容易となります。

Windows環境でも上記のようなパッケージマネージャの仕組みを用いることで、
開発環境の構築の手間を減らすことができそうです。