[英]Several groups in RPM package
單個 rpm 包是否可以屬於多個組?
在規范文件中,您可以設置包組:
組:系統環境/基礎
我需要的是能夠為這個包設置幾個組(比如System|Util|MyCompanyName
)——它們就像分配給包的標簽。
安裝包后,我想查詢它
rpm -q --group System
或者
rpm -q --group MyCompanyName
在這兩種情況下,我都應該看到我的包裹(以及屬於該組的其他包裹)
許多軟件包可能屬於 MyCompanyName 組,但只有少數軟件包可以安裝。 我需要一種方法來區分我們的包和 linux 系統包 - 我打算使用組名來做
我嘗試放置幾行Group:
行,但它只使用最后一行。 Group:
之后的Group:
似乎都被視為一個字符串,我找不到拆分它們的方法。
我能想到的另一個解決方案是將這些東西作為PROVIDES
然后進行查詢
rpm -q --whatprovides System
但我不喜歡這樣。
有沒有其他方法來完成請求的功能?
指定公司名稱的正確方法是通過Vendor標記,如下所示:
Vendor: Yoyodyne, Inc.
要按供應商獲取軟件包列表,您可以運行以下命令:
rpm -qa --qf '%{NAME} %{VENDOR}\n' | grep -v Yoyodyne
RPM只能屬於一個組。 此外,允許組由分布定義。 例如,以下是Mandriva的有效組列表:
http://wiki.mandriva.com/en/Development/Packaging/Groups
要查找特定分發的有效組,您必須經常運行該發行版的包管理器並查看列表。
RPM並不像Debian包格式那樣定義得那么好。 似乎沒有官方或全面的文件。
AFAIU,RPM應屬於RPM的GROUPS文件中的單個組,或者未指定組。 不能有多個。
這是一篇舊帖子,但因為它仍然出現在 Google 上;
現在至少 OpenSUSE 使用 Group: 字段作為空格分隔的標簽字段而不是層次樹,因此對於 SUSE 包,您可以簡單地將您希望包所屬的標簽用空格分隔。
有關詳細信息,請參閱: https : //en.opensuse.org/openSUSE : Package_group_guidelines 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.