エンターテイメント!!

遊戯王好きのJavaエンジニアのブログ。バーニングソウルを会得する特訓中。

ChocolateyによるWindowsのパッケージ管理

Chocolateyのすゝめ

Chocolateyとは、Windows上で動作するソフトウェアパッケージの管理マネージャーです。
Chocolateyリポジトリに登録されているパッケージのインストールを行ってくれます。

Chocolateyのメリット

  • いちいちソフトウェアが置いてあるサイトを見つけなくてもいい。
  • コマンドラインからインストールができる
  • 環境構築の高速化
  • xmlから環境を作れるので、統一した環境構築が楽になる。

Chocolateyのインストール

PowerShellを管理者として実行して以下のコマンドを叩く

iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))

インストールできたかは以下のコマンドで確認する

chocolatey version

もしくは

choco version

※人によってはスクリプトがデフォルト無効になっているので、できないことがある。

現在の実行ポリシーを確認方法

Get-ExecutionPolicy

ps1の実行ポリシーは以下の通り

実行ポリシー 概要
Restricted 全てのスクリプトが実行禁止。PowerShellまたはWindows OSインストール直後のデフォルト設定(Windows Server 2012 R2を除く)
AllSigned 署名されているスクリプトのみが実行可能。署名されていないスクリプトは実行禁止
RemoteSigned ローカルに保存されているスクリプトは実行可能。インターネットからダウンロードしたスクリプト(非ローカルのスクリプト)は、署名されているもののみが実行可能。Windows Server 2012 R2では、この設定がデフォルト
Unrestricted 全てのスクリプトが実行可能。ただしインターネットからダウンロードしたスクリプトは、実行するかどうかが確認されるので、ユーザーが明示的に許可した場合のみ実行される
Bypass 警告やユーザーへの確認なしに、全てのスクリプトが実行可能

Chocolateyの基本操作

検索

以下のコマンドで検索する。

choco list

検索結果を絞り込む場合は以下の。

choco list {keyword}

また、-localonlyオプションをつけるとインストール済みのパッケージを表示できます

choco list -localonly
choco list {keyword} -localonly

インストール

choco install {packageName}

バージョンを指定する場合は以下。

choco install {packageName} -Version {Verison}

xmlでまとめてインストール

xmlをpackages.configという名前で用意しておき、下記コマンドで食わせるとインストールできる。

choco install packages.config

xmlサンプル

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="virtualbox" />
</packages>

packagesの中にインストールしたいパッケージを列挙しておく

アップデート

choco update {packageName}

面倒だから全部アップデートしたい場合は以下のコマンド

choco update all

Chocolatey自体のアップデートは以下。

choco update

アンインストール

choco uninstall {packageName}