Windowsのアプリ管理をChocolatelyでやろう
Windowsのアプリ管理って・・
Windowsのアプリ管理って何となく使い勝手が悪くありませんか?パッケージのバージョンを新しくしようにも通知機能はありませんし、まとめてアップデートしようにも一つひとつ行う必要があります。また、あるアプリを入れようとしても、わざわざ配布元サイトにアクセスしてアプリをダウンロードしインストールプログラムを実行する必要があり、煩雑な手間を取られます。
一方、LinuxやBSDといったOSには優れたパッケージ(アプリ)管理の仕組みが存在します。Ubuntu/Debianにはapt-get、RedHatにはrpm、GentooにはPortage、Arch Linuxにはpacman、FreeBSDにはportsといったものです。それらのパッケージ管理システムは、ほぼすべてのことをコマンド一行で実行でき、煩わしいステップを踏むこともなく自動的に行ってくれます。それらのパッケージ管理がWindowsで実現できないかと探ったところ、ありました。
Windows用パッケージ管理アプリ chocolatey
chocolateyをインストールすると、それ以降さまざまなアプリをchocolateyで一括管理できるようになります。さらに、ほとんどの操作がコマンド一行で行えます。以下のようなコマンドです。
chocolatey install [アプリ名]
前述しましたが、chocolateyはアプリを一括管理できます。一括でインストールもアップデートも削除もできます。また、いちいちインストールファイルをクリックなどといった手間はありません。
ただし、デメリットもあります。現時点でWindows用のアプリを全て網羅しているわけではなく、メジャーなものだけがインストールできます。chocolateyでインストールできないアプリは従来通りWindows側で管理する必要があります。将来的にすべてのアプリがchocolatey対応になれば良いのですが・・。
chocolateyのインストール方法
PowerShellを管理者権限で実行する
Winows10での方法です。キーボードのWindowsキーとXを同時に押し、Windows PowerShell (管理者)(A)を選択します。
もしPowerShellが見当たらない場合は、設定→個人用設定→タスクバーで、「[スタート]ボタンを右クリックするかWindowsキー + Xキーを押したときに表示されるメニューで、コマンドプロンプトをWindows PowerShellに置き換える」をオンにしてください。
実行ポリシーの確認
PowerShell側の制限で、デフォルトではスクリプトの実行が制限されています。そこで制限を緩めるために、以下のコマンドを予め実行しておきます。
PS C:\> Set-ExecutionPolicy RemoteSigned 実行ポリシーの変更 実行ポリシーは、信頼されていないスクリプトからの保護に役立ちます。実行ポリシーを変更すると、about_Execution_Policies のヘルプ トピック (https://go.microsoft.com/fwlink/?LinkID=135170) で説明されているセキュリティ上の危険にさらされる可能性があります。実行ポリシーを変更しますか? [Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "N"): Y
設問にはYと打ってEnterを押します。
chocolateyのインストールを実行
chocolateyのサイトにアクセスし、PowerShellに「Now run the following command:」と書かれた以下の箇所をコピーし貼り付けます。無事に貼り付けられたらそのままEnterキーを押して実行します。
無事にインストール完了後、PowerShellからchocolateyのコマンドが使用できるようになります。
chocolateyのコマンド
管理者権限を持ったPowerShellでさまざまなコマンドが実行でき、以下のような形式になります。
chocolatey [コマンド] [オプション]
chocoleteyの短縮形chocoでも同じように実行できます。
choco [コマンド] [オプション]
コマンドの例
アプリインストールの例
choco install gimp
chocolateyで登録されているアプリをリスト表示
choco list
特定のアプリを文字列で検索
choco list [アプリ名の文字列]
既にchocolateyにてインストールされたアプリ一覧
choco list -localonly
アプリをすべてアップデート
choco update all
特定のアプリのみアップデート
choco update [アプリ名]
アプリの削除
choco uninstall [アプリ名]
これ以外にも様々なコマンドがあります。あとは実際にさわってみてください。
(参考)chocoletey GUI版
chocolateyはコマンドで操作するのが基本ですが、実はGUI版もあります。とはいえ、GUI版はコマンドのラッパーになっていますので、内部的にはコマンド版と同じことを行っています。操作をコマンドではなくGUIで行いたい方にはこしらをどうぞ。
chocolatey GUIをインストールする場合は次のようにします。
choco install chocolateygui
Windowsのスタートメニューにアイコンが登録され、以降はGUIからchocolateyが操作できるようになります。
余談
どうやら、似たようなパッケージ管理システムがWindows10で公式にサポートされる流れのようです。そちらのほうが有益ならchocolateyからの乗り換えも考えてもいいかもしれません。