Chocolateyでつまづいたとこ
最近Chocolateyがまた紹介記事が上がっていたので使ってみた。スルーしたのが悔やまれることがわかった。ダウンロード、インストールを手作業でしなくていいのがやっぱりすごく楽だった。
インストールは他の方で任せるとして、自分は引っかかったとこなどをメモする。
インストールはこちらを参考に。
Widnows用パッケージ管理ツール Chocolatey - @ledsun blog
ChocolateyGUIが起動できない
Chocolatetyを使ってみてChocolateyGUIが起動できなかった。
Chocolateyをインストール: Cygwinからも使う
によると、Windowsを再起動しないとChocolateyGUIは起動できないそうです。
Emacsがインストールできない
エラーメッセージはこんなのが
[ERROR] Cannot bind argument to parameter 'Path' because it is an empty string. ----------------------- At C:\Chocolatey\chocolateyinstall\helpers\functions\Write-ChocolateyFailure.ps 1:30 char:13 + Write-Error <<<< $errorMessage + CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorExcep tion + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorExceptio n,Write-Error Write-Error : Package 'Emacs v24.3' did not install successfully: Cannot bind a rgument to parameter 'Path' because it is an empty string. At C:\Chocolatey\chocolateyinstall\functions\Chocolatey-NuGet.ps1:90 char:28 + Write-Error <<<< "Package `'$installedPackageName v$installe dPackageVersion`' did not install successfully: $($_.Exception.Message)" + CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorExcep tion + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorExceptio n,Write-Error
https://gist.github.com/pogin503/8052282
これはPathが空だからエラーになるらしい。
メモ 1
このエラーを解決しようとEmacs.nupkgを見てみた。解凍はLhaplusでやった。右クリック→解凍→ここで解凍で問題なく解凍できた。
- NuGet Package Explorer
とかでも見れるらしい。
Emacs.nupkgの中身は
rels/.rels Emacs.nuspec README.org tools/chocolateyInstall.ps1 package/services/metadata/core-properties/01a4d4df47764837ab70ae372ee2f054.psmdcp [Content_Types].xml
てな感じだった。
インストールスクリプトはtools/chocolateyInstall.ps1に書かれてある。Vim.nupkgの中身とくらべてみるとだいぶ違っていた。
結局コマンドプロンプトを再起動したら直ったので真実は闇の中に。
メモ2
PowerShell自体を学ぶにはここがいいかも。
PowerShell基礎文法最速マスター - PowerShell Scripting Weblog
スクリプトを参考にするんなら
C:\Chocolatey\chocolateyinstall\functions\* C:\Chocolatey\chocolateyinstall\helpers\* C:\Chocolatey\chocolateyinstall\toolds\* C:\Chocolatey\chocolateyinstall\chocolatey.ps1
を参考にすれば書き方の参考になる。