web-dev-qa-db-ja.com

Chocolateyの「インストール」パッケージとは何ですか?

チョコレートパッケージ が利用可能であることを確認したところ、同じ製品の2つ(場合によってはそれ以上)のパッケージがあるものがいくつか見つかりました。一見、違いがわかりません。

たとえば、AutohotKeyパッケージがあり、次にAutohotkey。installパッケージ。

両方のタイプのパッケージの違いは何ですか?

32
j4v1

こちらのChocolateywikiのFAQ)をご覧ください。

https://github.com/chocolatey/choco/wiki/ChocolateyFAQs#what-is-the-difference-between-packages-no-suffix-as-compared-to-install-portable

その記事からの引用:

tl; dr:ほぼ100%の場合、サフィックスのないパッケージ(この例ではautohotkey)は* .installを保証します。接尾辞のないパッケージは、検出可能性と他のパッケージが依存するためのものです。

Chocolateyには、仮想パッケージ(今後)とメタパッケージの概念があります。仮想パッケージは、依存関係として使用されるときに他のパッケージを表すパッケージです。メタパッケージは、依存関係のグループ化を提供するためにのみ存在するパッケージです。

接尾辞のあるパッケージで囲まれた接尾辞のないパッケージは、仮想パッケージを提供します。したがって、git、git.install、およびgit.commandline(.portableでは非推奨)の場合– gitはその仮想パッケージです(現在、仮想パッケージ機能が完了するまでは、実際には単なるメタパッケージです)。つまり、他のパッケージがそれに依存する可能性があり、git.installまたはgit.portableのいずれかをインストールすることができ、gitをインストールするという依存関係を満たすことができます。これにより、Chocolateyは、パッケージの依存関係要件をすでに満たしているものをインストールしようとしません。

* .installパッケージサフィックスについて具体的に説明します。これらは、バンドルされているネイティブインストーラーがあるパッケージ、またはダウンロードして実行するパッケージ用です。

注:サフィックス* .appは、以前は* .installと同じ意味で使用されていました。ただし、*。appサフィックスは非推奨になり、新しいパッケージには使用しないでください。

* .portableパッケージは、通常、パス上のどこかに実行可能ファイルが生成されるパッケージですが、システムにインストールされません(プログラムの追加と削除)。以前は、サフィックス* .toolと* .commandlineを使用して、同じタイプのパッケージを参照していました。

注:*。toolおよび* .commandlineは非推奨になり、新しいパッケージには使用しないでください。

詳細情報が必要ですか? http://ferventcoder.com/archive/2012/02/25/chocolatey---guidance-on-packaging-apps-with-both-an-install.aspx を参照してください。

17
Gary Ewan Park