2016-04-28 67 views
0

我想在rpm查詢中添加諸如Size,BuildHost,BuildDate等東西,但在spec文件中添加這個東西會導致未知標籤?我如何做到這一點,以便這些事情反映出來,當我給rpm查詢命令?如何在rpm查詢中獲得非標準標籤

回答

2

這些標籤是在包建立時確定的;他們不能被強制爲具體的價值。

+0

如果這些標籤不在規格文件中,那麼它會顯示在rpm查詢? –

+0

是的,因爲它們是規範的一部分,無論如何。 –

+0

如果我必須知道這些標籤是如何傳播的,哪些不在規格文件中,那麼我應該在哪裏看? –

1

例如BuildHost在rpmbuild中是硬編碼的,不能改變。有RFE https://bugzilla.redhat.com/show_bug.cgi?id=1309367允許它從命令行進行修改。但是現在你不能通過spec文件中的任何標籤來改變它,也不能通過在命令行上傳遞一些選項給rpmbuild。

我假設它與您指定的其他值非常相似。

+0

可以更改構建主機。我一直在做這個多年。 [這裏是如何](http://www.revragnarok.com/blog/blog/rpm_spoof_hostname)。 –

+0

替換gethostname是欺騙主機名的一種方式,同時,在chroot或用於構建的虛擬機中,可能會使用/ etc/hosts和/etc/nsswitch.conf實現相同的效果。 RPM會嘗試使用FQDN,並根據需要添加其他主機名作爲別名。 –

0

RPM5允許任意唯一的標籤名稱添加到標題元數據中。

標記名稱在宏中以冒號分隔的列表進行配置。然後新的標籤可以在spec文件中使用,並可以使用--queryformat來提取。

所有任意標籤都是字符串(或字符串數​​組)的值。

+0

@傑夫..你可以告訴我更多關於它或分享任何文件。我試圖添加「構建路徑」標記..所以應該添加到宏文件? –

+0

rpm5.org支持任意標記,而不是通常的Red Hat rpm.org代碼。隨意在<[email protected]>上詢問任何關於任意標籤的問題(並且在實施〜2008 iirc時,檔案可能有一些答案)。 –

+0

你能告訴我如何在宏列表中配置額外的標記,這是我的情況下的「構建路徑」,並且在源文件中還有什麼額外的變化需要處理? –