2017-08-24 13 views
0

私はに新規参加してChocolateyをプレイしています。私の目標は、すべての重要なアプリケーションを1つのPowerShellスクリプトでインストールしてアップグレードすることです。チョコレートでインストール/パッケージを設定するには

私には1つの問題があります。たとえば手動でインストールした場合CCleanerデスクトップアイコンが必要な場合、またはごみ箱に新しいRun-CCleaner -entryが必要な場合は、ウィザードで設定できます。 私はいつもそれらの両方を無効にします。

私はpowershellコマンドを設定して、その2つのオプションを無効にする方法がわかりません。ここで

がパッケージへのリンクです:Chocolatelyには選択肢がない場合https://chocolatey.org/packages/ccleaner

それは私がCCleanerのをインストールした後に私のスクリプトでレジストリを操作することをお勧めしますか?これは他のアプリでどのように機能しますか?

ありがとうございました!

答えて

2

短い答えは、それは:-(

いくつかのパッケージを依存している、例えばgitは、インストーラのための機能の異なる部分を制御するためにPackage Parametersの概念を使用することができます。

今CCleanerをパッケージにはPackage Parametersの概念がありますが、インストールに使用するロケールを指定するためだけです。chocolateyInstall.ps1ファイルhereには利用可能なパッケージパラメータが表示されます。

これで、インストールを直接渡すことができますaネイティブインストーラへの登録これは、ここに文書化されています。具体的に

https://chocolatey.org/docs/commands-install#options-and-switches

--ia、--installargs、--installarguments、--install-引数= VALUE InstallArguments - に渡す引数をインストールします。ネイティブインストーラは パッケージに含まれています。デフォルトは未指定です。

-o、--override、--overrideargs、--overridearguments、--override-引数 OverrideArguments - 引数をインストールする必要がありますが、現在のパッケージに追加する なしに排他的に使用する引数を渡しますか?デフォルトはfalseです。

choco installコマンドでこれらの引数を使用すると、可能であればインストールをさらに制御できます。

難しい部分は、実行したい動作のためにインストーラに渡す必要のある引数を見つけることです。これには標準はなく、パッケージごとに行う必要があるものです。

+1

"これには標準はありません" - これを拡張して、ゲーリーは、WindowsではMSI以外のインストーラ(およびMSIも同様)の標準がないことを意味します。それは本当に多くの点で野生の西です。 – ferventcoder