【Boxstarter】インストール直後のWindowsにアプリと設定を一発自動適用する方法
この記事の内容
- Boxstarterを使うと、新しいWindows環境へのアプリインストールと設定変更をコマンド1つで自動化できます
- インストールスクリプトはGitHub Gistに保存しておくだけで管理できます
- アプリのインストールにはChocolateyのパッケージを利用します
- PowerShellを管理者モードで起動してコマンドを貼り付けるだけで実行できます
- 事前準備なし・前提条件なしで新しいWindowsにそのまま適用できます
Boxstarterとは
Boxstarterは、Windowsの構成を自動化するためのツールです。ソフトウェアのインストールや各種設定変更をスクリプトとして記述しておき、新しいWindows環境でそのスクリプトを実行するだけで、まとめて適用できます。
新しいWindows環境を立ち上げるたびに「あのソフトをインストールして、この設定を変えて…」という作業を繰り返している方には、非常に便利なツールです。
公式サイトは boxstarter.org です。
全体の流れ
Boxstarterを使った自動構成は、大きく以下の3ステップで行います。
- インストールスクリプトを用意する
- スクリプトをGitHub Gistに保存する
- 新しいWindows環境でPowerShellからコマンドを実行する
ステップ1:インストールスクリプトを準備する
スクリプトには、行いたい設定変更やインストールしたいソフトウェアを記述します。たとえば以下のような内容を記述できます。
- Windowsエクスプローラーのオプション設定
- リモートデスクトップの有効化
- UACの無効化
- 各種ソフトウェアのインストール(Fiddler、VS Code、Gitなど)
ソフトウェアのインストールには Chocolatey のパッケージ名を使います。たとえば以下のように記述します。
# エクスプローラーの設定変更
Set-WindowsExplorerOptions -EnableShowHiddenFilesFoldersDrives -EnableShowFileExtensions
# リモートデスクトップを有効化
Enable-RemoteDesktop
# UACを無効化
Disable-UAC
# ソフトウェアのインストール
cinst git
cinst vscode
cinst(Chocolatey Install)の後ろに記述するのはChocolateyのパッケージ名です。Adobe Acrobat ReaderであればパッケージはAdobeReader、Google ChromeであればGoogleChromeのように、Chocolateyのリポジトリで公開されているパッケージ名を使います。公式サイトで目的のパッケージを検索して確認できます。
ステップ2:スクリプトをGitHub Gistに保存する
作成したスクリプトは GitHub Gist に保存します。GistはGitHub上で単体のファイルをバージョン管理できるサービスです。
Gistに保存すると、ファイルのRaw URLが発行されます。このURLが後のステップで必要になります。
このURLをメモしておいてください。
ステップ3:新しいWindows環境でコマンドを実行する
新しいWindows環境で PowerShellを管理者モード で起動し、以下のコマンドを貼り付けて実行します。
. { iwr -useb https://boxstarter.org/bootstrapper.ps1 } | iex; Get-Boxstarter -Force
Install-BoxstarterPackage -PackageName <GistのRawURL> -DisableReboots
<GistのRawURL> の部分を、ステップ2で確認したGistのRaw URLに置き換えてください。
このコマンドは以下の処理を自動で行います。
- WebからBoxstarterのモジュールをダウンロードしてインストール
- 指定したGistのURLからスクリプトを読み込み
- スクリプトに記述された設定変更とソフトウェアインストールを実行
デモ:GitとVS Codeを自動インストール
実際の動画では、GitもVS Codeもインストールされていない新しいWindows環境に対してコマンドを実行しました。何も操作せずに待っているだけで、GitとVS Codeが自動的にインストールされることが確認できました。
Boxstarterを使うメリット
以前は同様の自動化を実現するために、独自のPowerShellスクリプトを書いてGitHubに置いておく方法をとっていた方も多いと思います。その場合、インストールのロジックや成否の判定、エラーハンドリングなど、複雑な処理を自分で実装する必要がありました。
Boxstarterを使うと、インストール部分の処理はChocolateyというオープンソースプロダクトが担当します。Chocolateyのパッケージはコミュニティによってメンテナンスされているため、難しいロジックを自分で書く必要がなくなります。コミュニティの力を借りることで、より合理的に自動化を実現できます。
まとめ
Boxstarterを使えば、新しいWindows環境への移行作業を大幅に効率化できます。
- スクリプトはGitHub Gistで一元管理・メンテナンスするだけ
- 新しいWindowsではPowerShell(管理者モード)でコマンドをコピペするだけ
- Chocolateyのパッケージを活用するため、インストールロジックを自分で書く必要がない
- 完全無料で利用できる
一度スクリプトを整備しておけば、何度でも同じ環境を再現できます。PCの買い替えや再セットアップ時に役立つツールですので、ぜひ試してみてください。