Programming Self-Study Notebook

勉強したことを忘れないように! 思い出せるように!!

Windows10にChocolateyをインストールする

f:id:overworker:20210303225721p:plain:h200

近々、PC(Windows10)の入れ替えがありそうなので、前々から気になっていたChocolateyについて調べてみました。

Chocolateyとは?

ChocolateyとはWindowsOS上に、ソフトウェアをインストールするためのツールです。WindowsPCにソフトウェアをインストールする場合、インストーラmsiファイル等)を起動し、表示された画面の内容に従いチクチクと進めていくのが一般的ですが、ChocolateyコマンドプロンプトPowerShell上にコマンド入力することでソフトウェアのインストールを行います。Chocolateyはそれ自体がソフトウェアですので、Chocolateyを用いたソフトウェアのインストールを実施するためには、最初にChocolatey自体のインストールが必要になります。

ここまでを読むと、「コマンド入力になじみのないWindowsユーザーにとってはインストーラを用いたインストールの方が分かりやすいのではないか?」と感じると思いますが、Chocolatey愛用者は以下の項目をメリットとして挙げることが多いようです。

Chocolateyのメリット

  • MacOSLinuxのようにソフトウェアを管理することが可能
  • ソフトウェア間に生じる依存関係を気にする必要が無い
  • インストールするソフトウェアのバージョンを管理する必要が無い
  • インストール済みソフトウェアの情報をもとに設定をエクスポートすることができる。
  • エクスポートされた設定情報を他端末上にインポートすることで、他端末上に環境を再現することができる。

Chocolateyを使ってみる。

Chocolateyのインストール状況を確認する

Chocolateyバージョン確認コマンドの結果を確認することでChocolateyのインストール状況を確認することができます。

// 入力コマンド:例1
>choco -v

// 入力コマンド:例2
>chocolatey -v

// 入力コマンド:例3
>choco

Chocolateyがインストールされていない場合のコマンド実行結果

// 実行結果:未インストール(例1)
C:\Users\******>choco -v
'choco' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

// 実行結果:未インストール(例2)
C:\Users\******>chocolatey-v
'chocolatey' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

// 実行結果:未インストール(例3)
C:\Users\******>choco
'choco' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

Chocolateyがインストールされている場合のコマンド実行結果

// 実行結果:インストール済み(例1)
C:\Users\****>choco -v
0.10.15

// 実行結果:インストール済み(例2)
C:\Users\****>chocolatey -v
0.10.15

// 実行結果:インストール済み(例3)
C:\Users\****>choco
Chocolatey v0.10.15
Please run 'choco -?' or 'choco <command> -?' for help menu.

※ バージョン情報が表示された場合はChocolateyを使ってソフトウェアをインストールするまでスキップしてOKです。

Chocolateyをインストールする

  • 公式サイトの手順(5ステップ)に従ってインストールします。
Step1:Chocolatey NewsLetterを購読する(オプション)
f:id:overworker:20210304215447p:plain

Be the first to know about upcoming features, security releases, and news about Chocolatey.
Chocolateyに関する今後の機能、セキュリティリリース、ニュースについて最初に知ってください。

※ メールアドレスを登録すると、chocolateyの最新情報を受信できます。(多分、、、)

Step2:インストール方法を選択してください
f:id:overworker:20210304222802p:plain
Step2-1:

First, ensure that you are using an administrative shell - you can also install as a non-admin, check out Non-Administrative Installation.
まず、管理シェルを使用していることを確認します。 (非管理者としてインストールすることもできます。非管理者インストールを確認してください。)

Step2-2:

Install with powershell.exe
powershell.exeを使用してインストールします

NOTE:
注意:

Please inspect https://chocolatey.org/install.ps1 prior to running any of these scripts to ensure safety.
安全を確保するために、これらのスクリプトを実行する前にhttps://chocolatey.org/install.ps1を調べてください。

We already know it's safe, but you should verify the security and contents of any script from the internet you are not familiar with.
安全であることはすでにわかっていますが、インターネットのスクリプトのセキュリティと内容を確認する必要があります。

All of these scripts download a remote PowerShell script and execute it on your machine.
これらのスクリプトはすべて、リモートPowerShellスクリプトをダウンロードして、マシン上で実行します。

We take security very seriously.
私たちはセキュリティを非常に重要視しています。

Learn more about our security protocols.
セキュリティプロトコルの詳細をご覧ください。

With PowerShell, you must ensure Get-ExecutionPolicy is not Restricted.
PowerShellでは、Get-ExecutionPolicyが制限されていないことを確認する必要があります。

We suggest using Bypass to bypass the policy to get things installed or AllSigned for quite a bit more security.
バイパスを使用してポリシーをバイパスし、インストールするか、AllSignedを使用してセキュリティを強化することをお勧めします。

Run Get-ExecutionPolicy.
Get-ExecutionPolicyを実行します。

If it returns Restricted, then run Set-ExecutionPolicy AllSigned or Set-ExecutionPolicy Bypass -Scope Process.
Restrictedが返される場合は、Set-ExecutionPolicyAllSignedまたはSet-ExecutionPolicyBypass -ScopeProcessを実行します。

Now run the following command:
次に、次のコマンドを実行します。

以下が、コピーしたコマンドです。

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'))
Step2-3:

Paste the copied text into your shell and press Enter.
コピーしたテキストをシェルに貼り付けて、Enterキーを押します。

Step2-4:

Wait a few seconds for the command to complete.
コマンドが完了するまで数秒待ちます。

Step2-5:

If you don't see any errors, you are ready to use Chocolatey!
エラーが表示されない場合は、Chocolateyを使用する準備ができています。

Type choco or choco -? now, or see Getting Started for usage instructions.
chocoまたはchoco-?と入力します。 今すぐ、または使用方法については「はじめに」を参照してください。

Chocolateyを使ってソフトウェアをインストールする

  • 公式サイトのDocsより、インストール時に使用する以下のオプションを紹介します。

    -y, --yes, --confirm

    Confirm all prompts - Chooses affirmative answer instead of prompting.
    すべてのプロンプトを確認する-プロンプトを表示する代わりに、肯定的な回答を選択します。

    Implies --accept-license
    --accept-licenseを意味します

gitのインストール

  • chocolateygitをインストールします。
choco install git -y

node.js のインストール

  • chocolateynode.jsをインストールします。
choco install nodejs -y

pythonのインストール

  • chocolateypythonをインストールします。
choco install python -y

Chocolateyのコマンド

公式サイトのDocsより、よく使いそうなコマンドを紹介します。

コマンド入力例 処理内容
choco upgrade nodejs インストール済みパッケージを
アップデート(最新版)する(nodejsの場合)
choco upgrade all chocolateyでインストールした
すべてのパッケージを一気にアップデートする
choco list パッケージの一覧を取得

その他の記事へ