はるなぴログ

ブログ・WEBサイト作成技術研究

InstChocoでのChocolateyインストールでWindowsソフトウェア引っ越しが楽々!

InstChocoでChocolateyをインストールするとWindowsソフトウェアの引っ越しが超簡単にできます。

ChocolateyをインストールするならInstChocoも使うのがお勧めです。単なるパッケージ管理ソフトウェアとして利用するのはもったいないです。

ChocolateyでWindowにインストールしたパッケージリストや設定をiCloudやDropbox、GoogleDrive、OneDriveに保存してくれるChoco Package List Backup to Local and Cloudの使い方も併せてご紹介します。

InstChocoとChoco Package List Backup to Local and Cloudの使い方を日本語で説明した記事が見当たらないので書いてみました。本邦初公開記事です!

  1. Chocolateyとは
  2. Chocolateyのインストール方法
    1. 初回インストールはコマンドプロンプトが簡単
  3. Chocolateyの使い方
    1. Chocolateyのリポジトリに欲しいソフトウェアがあるか確認する
    2. ローカルPCにインストール済みのパッケージを確認する
    3. パッケージのインストールを自動承認付きで実行する
    4. 古いバージョンのパッケージ一を確認する
    5. パッケージのアップグレードを実行する
    6. インストール済みソフトウェアをアンインストールする
    7. Chocolateyコマンド一覧
    8. Chocolateyを使う時の注意点
    9. Chocolateyの更に便利な使い方
  4. Chocolateyでインストールしたパッケージリストの自動保存
    1. Choco Package List Backup to Local and Cloudのインストール
    2. Choco Package List Backup to Local and Cloud (Script + Task)の使い方
  5. InstChocoによるChocolateyインストールでWindowソフトウェアのお引越し
    1. InstChocoのインストール
    2. InstChocoによるWindows10ソフトウェアの引っ越し

f:id:hal7pi:20191107094827j:plain

Chocolateyとは

ChocolateyとはWindow用のパッケージ管理ソフトウェアです。MacのHomebrew、Linuxのapt-getやyumに相当します。

パッケージ管理ソフトウェアとはパッケージのインストール/アンインストールや最新バージョンへのアップグレード、依存関係の解決などパッケージに関する様々な管理を行ってくれるソフトウェアです。

ChocolateyはWindowsのパッケージ管理ソフトウェアの中でも最もポピュラーなものです。以前はアンインストールがうまくできない、リポジトリに登録されているパッケージソフトウェアの数が限られる、など不安やデメリットもありました。しかし最近は知名度も上がり、かなりの改善が図られています。

Chocolateyのインストール方法

Chocolateyにはさまざまなインストール方法があります。

詳しくは公式サイト(英語)をご参照ください。

chocolatey.org

Windows10の場合はコマンドプロンプトからインストールするのが簡単です。

初回インストールはコマンドプロンプトが簡単

初めてChocolateyをWindowsにインストールする場合はコマンドプロンプトからインストールするのが簡単でお勧めです。

コマンドプロンプトというと黒い画面ということで初心者には敬遠されがちですが、慣れてしまえばどうということはありません。

コマンドプロンプトの一覧表や便利な設定方法についてはこちらの過去記事をご参照ください。

www.halu7.com

初心者の方のためにコマンドプロンプトのチュートリアルも書きました。こちらの記事をご参照ください。

www.halu7.com

オフィシャルサイトにも解説がありますが、コマンドプロンプトから以下のインストールコマンドを打つだけでChocolateyのインストールが可能です。

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

次回からのためにInstChocoやChoco Package List Backup to Local and Cloudをインストールして使う方法については後ほど説明します。

Chocolateyの使い方

ChocolateyはGUI版もありますがコマンドベースで使うのがシンプルで簡単です。

コマンドプロンプトでコマンドを打ちソフトウェアのインストール/アンイントールなどを行っていきます。

代表的なコマンドについて使い方を説明します。

Chocolateyのリポジトリに欲しいソフトウェアがあるか確認する

choco search パッケージ名

choco searchコマンドによって欲しいソフトウェアがChocolateyのリポジトリに登録されているかどうかを確認します。

すべてのソフトウェアがChocolateyでインストールできるとは限りません。なのでまずchoco searchコマンドで登録されているかどうかを確かめます。

ローカルPCにインストール済みのパッケージを確認する

choco list -l

既にChocolateyでインストールしたソフトウェアを確認します。どんなソフトをインストールしたか忘れたらこのコマンドです。

インストールしたソフトウェアのバージョンを確認するときにもよく使うコマンドです。

パッケージのインストールを自動承認付きで実行する

choco install パッケージ名 -y

-yのオプションをつけるといちいちYやyesを入力しなくても自動で承認されインストールが中断せずに進行します。

古いバージョンのパッケージ一を確認する

choco outdated

バージョンが最新ではなくなってしまったインストール済みパッケージを調べます。

パッケージのアップグレードを実行する

指定したソフトウェアの最新バージョンへのアップデートは以下のコマンドを打ちます。

choco upgrade パッケージ名

すべてのインストール済みソフトウェアをアップデートしたい時はallを指定します。

choco upgrade all -y

このコマンド一発でChocolateyでインストールしたソフトウェアがすべて最新バージョンにアップデートされますので大変便利です。

インストール済みソフトウェアをアンインストールする

インストール済みソフトウェアをアンインストールするには以下のコマンドを入力します。

choco uninstall パッケージ名

Chocolateyコマンド一覧

Chocolateyでよく使うコマンドの一覧表を作りました。

コマンド 意味
choco search パッケージ名 リポジトリにソフトがあるか検索
choco list -l インストール済パッケージの一覧を表示
choco install パッケージ名 -y パッケージのインストール(自動承認付)
choco outdated 古いバージョンのパッケージ一覧を表示
choco upgrade パッケージ名 指定したパッケージのアップグレード
choco upgrade all -y 全パッケージのアップグレード(自動承認付)
choco uninstall パッケージ名 指定したパッケージの削除

とりあえずこれだけ覚えておけば困ることはあまりないと思います。その他のコマンドやオプションについてはchoco /?と入力すれば説明(英語)が表示されます。

Chocolateyを使う時の注意点

Chocolateyを使う上でいちばん注意しなければならない点は既にインストール済みの同じソフトウェアとの競合です。

同じソフトウェアが既にインストールしてある場合はパスを書き換えしないと前のソフトを実行してしまいます。

同名ソフトウェアがインストールされているかどうか確かめるにはコマンドプロンプトでwhereコマンドを打ちます。Linuxのwhichコマンドのように使えます。

where git

はるなぴの場合は次のように表示されます。

C:\Users\hal7pi>where git
C:\Program Files\Git\cmd\git.exe
C:\tools\Cmder\vendor\git-for-windows\bin\git.exe

2つのgitがインストールされていますね。どちらを優先して使用するかはWindow10の環境設定でパスの優先順位を指定することで設定します。そのためにコントロールパネルを開きます。

Windows10で簡単にコントロールパネルを開く方法

Window10でコントロールパネルを簡単に開く方法です。

まずWindowsキーを押しながらRキーを押します。

f:id:hal7pi:20191107100914p:plain

「ファイル名を指定して実行」というウィンドウが開きますので「control」と入力してOKボタンを押せばコントロールパネルを開くことができます。

f:id:hal7pi:20191107100928p:plain

エクスプローラーに表示されていればこちらからコントロールパネルを開くのも簡単です。

f:id:hal7pi:20191107101008p:plain

Windows10のパス設定を変更する方法

コントロールパネルから「システムとセキュリティ」を選びます。

f:id:hal7pi:20191107101110p:plain

更に「システム」を選択します。

f:id:hal7pi:20191107101128p:plain

「システムの詳細設定」をクリックします。

f:id:hal7pi:20191107101144p:plain

「システムのプロパティ」から「詳細設定」のタブを選択し、「環境変数」を選んでクリックします。

f:id:hal7pi:20191107101206p:plain

「システム環境変数」のウィンドウの中の「Path」の項目を選んでダブルクリックします。

f:id:hal7pi:20191107101227p:plain

「環境変数名の編集」のウィンドウが開きますので所望のパスを選択して「上へ」と「下へ」ボタンをクリックして優先度を上げたり下げたりできます。

f:id:hal7pi:20191107101243p:plain

最後に「OK」ボタンを押して再起動するとパス設定が反映されます。お疲れさまでした。

Chocolateyの更に便利な使い方

ここまでのコマンドを使ってGolangやPythonなどのプログラミング言語をChocolateyを使ってインストールするだけでも随分とラクチンになります。

しかし更に便利な使い方があります。

インストール済みソフトウェアのパッケージリストの保存とWindows PCの引っ越し時におけるリストの活用です。日本語記事としては初公開の内容です。

以下順を追って説明します。

Chocolateyでインストールしたパッケージリストの自動保存

ChocolateyによってインストールしたパッケージリストをローカルのフォルダやGoogleDrive、OneDrive、Dropbox、iCloudなどのクラウドにコマンド一発で保存してくれます。

それにはChoco Package List Backup to Local and Cloud (Script + Task)を使います。

インストール方法と使い方を見ていきましょう。

Choco Package List Backup to Local and Cloudのインストール

Choco Package List Backup to Local and CloudはChocolateyでインストールすれば簡単です。

choco install choco-package-list-backup -y

コマンド一発でインストールすることが可能です。

Choco Package List Backup to Local and Cloud (Script + Task)の使い方

コマンドプロンプトからコマンドを打ちます。

choco-package-list-backup

はるなぴの場合は次のように保存されます。

C:\Users\hal7pi>choco-package-list-backup
choco-package-list-backup.ps1 v2019.08.27 - backup Chocolatey packages list locally and to the cloud
Copyleft 2017-2019 Bill Curran ([email protected]) - free for personal and commercial use

Choco Package List Backup Summary:
  ** C:\Users\hal7pi\Documents\ChocolateyPackageListBackup\packages.config SAVED!
  ** C:\Users\hal7pi\Documents\ChocolateyPackageListBackup\choco-package-list-backup.config SAVED!
  ** C:\Users\hal7pi\Documents\ChocolateyPackageListBackup\AllProgramsList.txt SAVED!
  ** C:\Users\hal7pi\Documents\ChocolateyPackageListBackup\InstChoco.exe SAVED!

  ** C:\Users\hal7pi\Dropbox\ChocolateyPackageListBackup\PC-4\packages.config SAVED!
  ** C:\Users\hal7pi\Dropbox\ChocolateyPackageListBackup\PC-4\choco-package-list-backup.config SAVED!
  ** C:\Users\hal7pi\Dropbox\ChocolateyPackageListBackup\PC-4\AllProgramsList.txt SAVED!
  ** C:\Users\hal7pi\Dropbox\ChocolateyPackageListBackup\PC-4\InstChoco.exe SAVED!

  ** C:\Users\hal7pi\iCloudDrive\ChocolateyPackageListBackup\PC-4\packages.config SAVED!
  ** C:\Users\hal7pi\iCloudDrive\ChocolateyPackageListBackup\PC-4\choco-package-list-backup.config SAVED!
  ** C:\Users\hal7pi\iCloudDrive\ChocolateyPackageListBackup\PC-4\AllProgramsList.txt SAVED!
  ** C:\Users\hal7pi\iCloudDrive\ChocolateyPackageListBackup\PC-4\InstChoco.exe SAVED!

  ** C:\Users\hal7pi\OneDrive\ChocolateyPackageListBackup\PC-4\packages.config SAVED!
  ** C:\Users\hal7pi\OneDrive\ChocolateyPackageListBackup\PC-4\choco-package-list-backup.config SAVED!
  ** C:\Users\hal7pi\OneDrive\ChocolateyPackageListBackup\PC-4\AllProgramsList.txt SAVED!
  ** C:\Users\hal7pi\OneDrive\ChocolateyPackageListBackup\PC-4\InstChoco.exe SAVED!

  ** C:\Users\hal7pi\OneDrive\ChocolateyPackageListBackup\PC-4\packages.config SAVED!
  ** C:\Users\hal7pi\OneDrive\ChocolateyPackageListBackup\PC-4\choco-package-list-backup.config SAVED!
  ** C:\Users\hal7pi\OneDrive\ChocolateyPackageListBackup\PC-4\AllProgramsList.txt SAVED!

To re-install your Chocolatey packages: run INSTCHOCO -Y

Found choco-package-list-backup.ps1 useful?
Buy me a beer at https://www.paypal.me/bcurran3donations
Become a patron at https://www.patreon.com/bcurran3

ローカルのChocolateyPackageListBackupの他にDropbox、iCloud、OneDriveのそれぞれにも同じディレクトリ名で設定を一気に保存してくれました。

これだけChocolateyの設定をバックアップしてあれば必ずどこかから引っ張ってこれそうですね。安心です。

packages.configファイルはXMLファイルで次のようにChocolateyでインストールしたソフトウェアが記録されています。

<?xml version="1.0" encoding="utf-8"?>
<packages>
   <package id="adobereader"/>
   <package id="choco-package-list-backup"/>
   <package id="choco-shortcuts-winconfig"/>
   <package id="chocolatey"/>
   <package id="chocolatey-core.extension"/>
   <package id="chocolateygui"/>
   <package id="cinebench"/>
   <package id="Cmder"/>
   <package id="crystaldiskmark"/>
   <package id="dropbox"/>
   <package id="Firefox"/>
   <package id="git"/>
   <package id="git.install"/>
   <package id="gnuplot"/>
   <package id="GoogleChrome"/>
   <package id="hidemaru-editor"/>
   <package id="iCloud"/>
   <package id="instchoco"/>
   <package id="iTunes"/>
   <package id="KB2919355"/>
   <package id="KB2919442"/>
   <package id="maxima"/>
   <package id="pandoc"/>
   <package id="screenpresso"/>
   <package id="vcredist2010"/>
   <package id="zotero"/>
</packages>

InstChocoによるChocolateyインストールでWindowソフトウェアのお引越し

InstChocoをインストールしておくとパソコン買い換えなどの後にWindowsソフトウェアの引っ越しを行うことがChocolateyを使って簡単にできるようになります。

InstChocoのインストール

InstChocoのインストール方法はいくつかあります。

既にChocolateyがインストールしてあるならば簡単です。Chocolateyを使ってインストールすればOKです。

choco install instchoco -y

Chocolateyがインストールしてあるのに何故わざわざまたInstChocoもインストールするのか不思議に思うかもしれないですね。

InstChocoをインストールしておけば先ほどChoco Package List Backup to Local and Cloudを使ってバックアップしたpackages.configを使ってパッケージのインストールを行うことが可能になります。

つまり他のパソコンで使用していたパッケージリストを用いて同じ環境をコピーすることができるようになるのです。

InstChocoのインストールはChocolateyを使わなくても行うことができます。これを利用すると新しく購入したパソコンにWindows10ソフトウェアの引っ越しを行うこともできるようになります。詳しく説明していきます。

InstChocoによるWindows10ソフトウェアの引っ越し

InstChocoを新しいパソコンにインストールします。

chocolatey.org

上のページからTo download InstChoco directly, click here.と書いてある部分を見つけてhereの部分をクリックします。

セキュリティソフトによってアクセスがブロックされる場合もあるかもしれません。自己責任でお願いします。

クリックするとinstchoco.exeがダウンロードできますのでダブルクリックすればInstChocoによるChocolateyのインストールが開始されます。

この時にpackages.configが見つかれば設定保存したパッケージが全てChocolateyによってインストールされます。

ですので事前にpackages.configをクラウド経由、ネットワーク経由、メール添付、USB経由などの方法によって入手しておけばOK。

Choco Package List Backup to Local and Cloud を使うとChocolateyPackageListBackupというローカルディレクトリにpackages.configが保存されます。なのでこのディレクトリを丸ごとコピーして持ってくるのが良いでしょう。

InstChocoをインストール済みであれば次のコマンドをコマンドプロンプトから打つことでpackages.configに基づいたパッケージの一括インストールを行うことができます。

instchoco -y

パッケージリストにインストールするパッケージが大量に書かれている場合にはすべてのインストールが完了するまでにかなり時間がかかりますのでご注意ください。

それにしてもコマンド一発でWindowsソフトウェアがこんなに簡単にインストールできるなんて驚きです。しかもすべてをバージョンアップするのもアップグレードコマンド一発で可能。Chocolateyお勧めです!