2011-01-07 18 views
8

1つのRPMパッケージが複数のグループに属することは可能ですか? specファイルでRPMパッケージ内のいくつかのグループ

あなたは、パッケージ・グループを設定することができます。

グループ:システム環境/ベース

私は必要なものは、(System|Util|MyCompanyNameのように)このパッケージのいくつかのグループを設定することができることです - 彼らはパッケージに割り当てられたタグのようになります。

パッケージがインストールされている場合、私は

rpm -q --group System 

または

rpm -q --group MyCompanyName 

ようにそれを照会すると、両方のケースで、私は私のパッケージ(このグループに属する他の人を)見るべきたく


編集:

多くのパッケージはMyCompanyNameグループに属していますが、インストールできるパッケージはほとんどありません。


が、私はいくつかのGroup:のラインを入れてみましたグループ名を使用して、私はそれを行うことを計画していたが、それは最後のものだけを使用しています - 私は、Linuxシステムのパッケージから私たちのパッケージを区別する方法が必要です。 Group:の後のすべてが1つの文字列とみなされ、それらを分割する方法を見つけることができませんでした。私は考えることができ

別の解決策は、PROVIDESとしてこのようなものを入れているし、その後

rpm -q --whatprovides System 

を照会することが、私はそれをこのように好きではありません。

要求された機能を達成する他の方法はありますか?

答えて

6

あなたの会社名を指定するための正しい方法は、このようなベンダーのタグを介してである:このコマンドを実行することができ、ベンダーによってパッケージの一覧を取得するには

Vendor: Yoyodyne, Inc. 

rpm -qa --qf '%{NAME} %{VENDOR}\n' | grep -v Yoyodyne 

RPM 1つのグループにしか属しません。さらに、許容可能なグループは分布によって定義される。例えば、ここではMandrivaのための有効なグループのリストは、次のとおりです。

http://wiki.mandriva.com/en/Development/Packaging/Groups

あなたは、多くの場合、そのディストリビューションのパッケージマネージャを実行して、リストを見なければならない特定の配布のための有効なグループを見つけるために。

RPMは、Debianのパッケージフォーマットとほぼ同じくらい定義されていません。公式または徹底した文書はないようです。面白い

http://www.rpm.org/max-rpm/s1-rpm-inside-tags.html

+0

はい、それは会社名のために働くでしょう、rpmはこのパラメータによって問い合わせる便利な方法がありません –

+0

あなたのソリューションは私が答えとして –

3

AFAIUでは、RPMはRPMのGROUPSファイル内の単一のグループに属しているか、グループが指定されていない必要があります。複数あることはできません。

2

yum groupsを使用して、パッケージレベルではなくレポレベルでグループを定義することができます。あなたのグループを定義したら、 'yum groupinfo'コマンドを使って各グループのパッケージを見ることができます。

+0

我々はそれを使用することができる場合、私がチェックします、おかげで –

+0

、残念ながらそれはあなたがシステムにインストールされている特定のグループからの任意のものをパッケージ見て助けにはならないので、それはほとんどときに便利ですあなたはすべてのパッケージがインストールされなければならない静的なグループを持っています –

関連する問題