Chocolateyを使って、楽に開発環境を構築しよう


初めに

この記事はWindows10が入っているpcにパッケージマネージャの「Chocolatey」を利用して環境構築を行うことで、手早く環境構築をする手順をまとめたものです。
MacOSやUbuntuにおけるhomebrewapt-get のようなパッケージマネージャはWindows単体でも利用できる!ということが伝われば幸いです。

Chocolateyのインストール

brew同様、コマンドで一発です。Chocolateyのサイト記載の
以下のコマンドを管理者権限で開いたpowerShellで入力します。

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

コマンドが完了したらテストしてみましょう。

choco --version
0.10.15

バージョン情報が表示されていればOKです。

Chocoコマンドで開発ツールをインストール

それでは早速、Chocoコマンドで開発ツールをインストールしてみましょう。
今回は説明不要のバージョン管理システム「Git」をインストールしてみます。
chocolateyでのインストールコマンドは以下です。

choco install 〇〇〇〇

〇〇〇〇にはインストールしたいソフトウェアが入ります。今回は

choco install git

で実行します。
途中で表示されるDo you want to run the script?([Y]es/[A]ll - yes to all/[N]o/[P]rint):はy(yes)を選択します。
インストールが完了したら環境変数を設定しましょう。
以下のコマンドで設定できます。

$env:ChocolateyInstall = Convert-Path "$((Get-Command choco).path)\..\.."
Import-Module "$env:ChocolateyInstall\helpers\chocolateyProfile.psm1"

refreshenv

ここまでを実施したら、gitがインストールされ、PATHが通っているかを確認します。

git --version
git version 2.30.1.windows.1

この3ステップでGitのインストールが完了しました!

複数のプログラムのインストール

Chocolateyでは、複数のプログラムをまとめてインストールできます。
構文は変わらず

choco install 〇〇〇〇 〇〇〇〇

今回はpythonとVSCodeをまとめてインストールしてみましょう。

choco install python vscode

双方がインストールされたと思います。再度環境変数を更新しましょう。

$env:ChocolateyInstall = Convert-Path "$((Get-Command choco).path)\..\.."
Import-Module "$env:ChocolateyInstall\helpers\chocolateyProfile.psm1"

refreshenv

更に楽をしよう

Chocolateyにはインストールしたいソフトウェアを.config形式で記述し、まとめてインストールする事が可能です。.configは自身で記述することもできるのですが今回は「ChocolateyGUI」を利用してみましょう。
ChocolateyGUIは読んで字の如く、GUIでChocolateyを操作できるソフトウェアです。
それでは、インストールしましょう。

choco install ChocolateyGUI

chocolateyでは、依存するパッケージがあった場合それもまとめてインストールしてくれます。
今回のChocolateyGUIをインストールする際に、もしpcになければDotNet4.5.2を同時にインストールしてくれているはずです。

それでは、ChocolateyGUIを開いてみましょう。

画像ではマスクしていますが、実際にはインストール済みのソフトウェアが一覧表示されていると思います。
画面右上の💾マーククリック ->エクスポートで、.configファイルを作成することができます。
作成した.configファイルを見てみましょう。

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="chocolatey-core.extension" version="1.3.5.1" />
  <package id="chocolatey-windowsupdate.extension" version="1.0.4" />
  <package id="chocolateygui" version="0.17.3" />
  <package id="DotNet4.5.2" version="4.5.2.20140902" />
  <package id="git" version="2.30.1" />
  <package id="git.install" version="2.30.1" />
  <package id="python" version="3.9.1" />
  <package id="python3" version="3.9.1" />
  <package id="vscode" version="1.53.2" />
</packages>

御覧の通り、記述形式はxml形式となります。
試しにこのconfigファイルを読み込んでみましょう。configファイルを配置したディレクトリに移動し、

choco install -y 〇〇〇〇.config

-yは途中で聞かれる質問すべてにyesで返答するオプションです。
しばらく待つと、以下のようにインストールしたソフトウェアが一覧表示されます。
(既にインストール済みのものははじかれます。)

Installed:
 - python v3.9.1
 - python3 v3.9.1
 - vscode.install v1.53.2
 - vscode v1.53.2
 - git.install v2.30.1
 - git v2.30.1

この.configファイルをGitなどに登録しておけば

  • チーム開発における新規開発者の手間の軽減
  • PC引っ越し時に前のPCの環境を引き継ぐ

といった点で手間が軽減できるのでオススメです。

終わりに

本記事はいかがでしたか?
Chocolateyはとても便利で、コマンドラインで実行できることを活かして.batファイルを作成してみたりするとよりよいかと思います。
バレンタインデーは過ぎてしまいましたが
ぜひ利用してみて下さい!