OneGetはMicrosoftが展開しようとしているパッケージ管理システムです。Linuxで言うところのaptやyumのようなツールになり、Windows Management Framework V5 Previewに含まれるかたちで配布されています。
このPreviewのインストール上の注意点なのですが、インストール対象はWindows 8.1, Windows Server 2012 R2なのですが、そのOSバージョンにもかかわらず、OSバージョンが違うと言われインストールできないことがありますので、ご注意を。私の手元だと4台中1台しかインストールに成功しておらず、正直なところどういう状態だとダメなのかがよくわかっていません。(2014/04/18追記。en-USな言語パックのインストールでインストール可能になるようです。)
さて、Previewのセットアップが終わった前提で、PowerShellを立ち上げたら、以下のように入力してOneGetをロードします。
> Import-Module -Name OneGet
次に、OneGetで追加されたコマンドを確認します。
> get-command -module OneGet
CommandType Name Source
----------- ---- ------
Cmdlet Add-PackageSource OneGet
Cmdlet Find-Package OneGet
Cmdlet Get-Package OneGet
Cmdlet Get-PackageSource OneGet
Cmdlet Install-Package OneGet
Cmdlet Remove-PackageSource OneGet
Cmdlet Uninstall-Package OneGet
では、現在登録されているパッケージのリポジトリを確認しましょう。
> Get-PackageSource
Name Location Provider IsTrusted
---- -------- -------- ---------
chocolatey https://chocolatey.org/api/v2/ Chocolatey False
現在のところMSオリジナルのリポジトリはなく、Chocolateyのリポジトリしか登録されていません。
OneGetは、Chocolateyのプロトコル、API、パッケージ形式にも対応するので、Chocolateyのレポジトリからパッケージのインストールをすることが可能です。
パッケージを見つけるときには以下のようにFind-Package命令を使用します。
> Find-Package 7zip
Name Version Status Source Summary
---- ------- ------ ------ -------
7zip 9.22.01.20130618 Available chocolatey 7-Zip is a file archiver with a high compression r...
インストールは、以下のように行います。
> Find-Package 7zip | Install-package
Installing Package '7zip' from untrusted source
WARNING: This package source is not marked as safe. Are you sure you want to install software from 'chocolatey'
[Y] はい(Y) [N] いいえ(N) [S] 中断(S) [?] ヘルプ (既定値は "Y"): y
もしくは以下のように実行します。
> Install-Package -name 7zip
Installing Package '7zip' from untrusted source
アンインストールは以下のようにUninstall-Package命令行います。
> Uninstall-Package -name 7zip
Name Version Status Source Summary
---- ------- ------ ------ -------
7zip.install 9.22.01.20130618 Not Installed
7zip 9.22.01.20130618 Not Installed
インストール済パッケージの確認には、Get-Package命令を使用します。実際にはOneGetだけでなく、Chocolateyでインストールされたパッケージも表示されています。
> Get-Package
Name Version Status Source Summary
---- ------- ------ ------ -------
ChocolateyGUI 0.11.1 Installed Local File A GUI for Chocolatey
fiddler4 4.4.6.2 Installed Local File Fiddler Web Debugging Proxy
git 1.9.0.20140303 Installed Local File Git (for Windows) - Fast Version Control
git.install 1.9.0.20140303 Installed Local File Git (for Windows) - Fast Version Control
gitextensions 2.47.3 Installed Local File Git Extensions is the only graphical user interfac...
GitHub 1.0.48.001 Installed Local File
gittfs 0.19.2 Installed Local File Git Tfs - Work smarter
kdiff3 0.9.97 Installed Local File KDiff3 - graphical text difference analyzer (Diff ...
linqpad4 4.48.01 Installed Local File LINQPad 4 Low-Impact Setup
msysgit 1.7.10.20120526 Installed Local File msysgit - Git for Windows [Deprecated as package Git]
poshgit 0.4.0.20120717 Installed Local File PoshGit - A PowerShell environment for Git
PowerShell 3.0.20121027 Installed Local File Installs Windows Management Framework and Windows ...
sysinternals 2014.03.07 Installed Local File Sysinternals - utilities to help you manage, troub...
winmerge 2.14.0 Installed Local File winmerge
また、以下のように絞り込みも出来ます。
> Get-Package -name gi
Name Version Status Source Summary
---- ------- ------ ------ -------
git 1.9.0.20140303 Installed Local File Git (for Windows) - Fast Version Control
git.install 1.9.0.20140303 Installed Local File Git (for Windows) - Fast Version Control
gitextensions 2.47.3 Installed Local File Git Extensions is the only graphical user interfac...
GitHub 1.0.48.001 Installed Local File
gittfs 0.19.2 Installed Local File Git Tfs - Work smarter
msysgit 1.7.10.20120526 Installed Local File msysgit - Git for Windows [Deprecated as package Git]
poshgit 0.4.0.20120717 Installed Local File PoshGit - A PowerShell environment for Git
普通に必要最低限の機能は持っています。
現時点では正直なところこれならChocolateyでなんの問題も無さそうな感じですが、今後MS謹製のレポジトリのに登場や、標準的に導入される意義といったところに期待と言ったところでしょうか。
コメント
我が家のWin8.1 Entでは英語の言語パックをインストールしたらインストールできました。
それ以外の条件もあるかもしれませんが、取り急ぎ報告まで。
おぉ。やっぱ言語関係ですか。試してみます。
en-USの言語パック入れたら、本当にインストールできました。ありがとうございます。ユーザーロケールかと思ってそこまでは試したんですよね。でもあれだなぁw