Bar

PowerShell PackageManagementのPackageProviderにChocolateyを追加/削除する

今年に入ってからPackageManagement(a.k.a OneGet)を使うようになりました。
PackageManagementは非常に便利で、Windows アプリケーションのインストールやPowerShell モジュールのインポートをPowerShellから行う事が出来ます。
今回は、Windows向けパッケージ マネージャー「Chocolatey」をPackage Providerに追加/削除する方法をメモ。

PackageManagementとは

PackageManagementは、Windows10 / Windows Server 2016から標準搭載されたパッケージ管理で、PowerShellのPackageManagement モジュールに含まれるコマンドレットを実行する事でアプリケーションをインストールしたり、PowerShell モジュールをインポートできます。

Linuxのパッケージ管理システム「yum」や「apt-get」のWindows版といえばわかりやすいでしょうか。
Introducing PackageManagement in Windows 10

今までAdobe ReaderやVirtualBoxなどアプリケーションをインストールする場合、
  1. ブラウザを開く
  2. ダウンロードサイトへ移動
  3. 実行ファイルをダウンロード
  4. 手動でインストール
の手順を踏みましたが、PowreShell だとたった1行だけで同じ処理をしてくれます。
例えば、Adobe Readerをインストールしたい場合は
Find-Package -Name adobereader | Install-Package
を実行するだけ、簡単でしょ!

    ChocolateyをPackageManagement Providerに追加する方法

    ChocolateyはWindows用アプリケーションをPowerShell からインストール/アン インストール/アップデート/検索することができるパッケージマネージャーです。
    Chocolatey Gallery
    Windows 10 / Windows Server 2016 のPackageManagement ProviderにChocolateyが登録されていない場合は、Install-PackageProvider コマンドレットを実行します。
    ※Install-PackageProviderを実行する場合は管理者権限でPowerShellを起動してください。
    #Chocolatey インストール
    Install-PackageProvider -Name Chocolatey -Force
    又は、Get-PackageProviderでChocolateyを指定すると対話形式でインストールする事も可能です。
    なお、
    Get-PackageProvider -Name Chocolatey

    追加したPackageManagement Providerを削除したい場合

    Chocolateyなど追加したPackageManagement Providerを削除したい場合は以下に示す手順を行います
    1. 全てのPowerShell/PowerShell ISEを閉じる
    2. 以下のフォルダーを削除する
      • C:\Program Files\PackageManagement\ProviderAssemblies\

    なお、Providerのインストール パスはProviderPathプロパティで確認できます。
    (Get-PackageProvider -Name <ProviderName>).ProviderPath
    
    余談:PackageManagementを調べたい
    まずはPowerShell のヘルプを見てはどうでしょうか。
    Get-Help about_PackageManagement