URL'ye göre mevcut bir rpm .spec
dosyasına bazı kaynaklar ekliyorum ve henüz indirmedim. El ile yapmak yerine kaynakları indirmek için rpmbuild
almanın bir yolu var mı?Belirli bir .spec için tüm kaynakların indirilmesi için rpmbuild'i nasıl alabilirim?
cevap
rpmdevtools
paketinden spectool
yardımcı programı bunu yapabilirsiniz. Sadece şöyle .spec
de spectools
rpmdevtools
yükleyip işaret:
spectool -g -R SPECS/nginx.spec
O rpm %{_sourcedir}
(genellikle SOURCES
) dizine eksik kaynaklar indirecektir. RPM yerleşik yoksun çünkü bütünlük kontrolleri kaynağı için
rpmbuild --undefine=_disable_source_fetch -ba /path/to/your.spec
İndirilmesi kaynaklar otomatik olarak varsayılan olarak yasaktır:
kuşaklar için, herhangi bir ek araç veya indirme gerekmez bunu yapmanın başka bir yolu yoktur arşivler. Ağın güvenilir olması ve herhangi bir sağlama ve imza kontrolü yapılmalıdır. Bu kısıtlama, güvenilir kodların gönderilmesinden sorumlu olduklarından, paket sağlayıcıları için anlamlıdır. Bununla birlikte, ne yaptığınızı ve riskleri anladığınızı öğrendiğinizde, kısıtlamayı zorla kaldırabileceğinizi unutmayın.
Spec dosyasında, kaynak URL'den önce herhangi bir yere %undefine _disable_source_fetch
yerleştirebilirsiniz.
Güvenlik nedeniyle, sha256sum'u belirtmeli ve kurulumdan önce %prep
bölümüne bakmalısınız.
Name: monit
Version: 5.25.1
Release: 1%{?dist}
Summary: Monitoring utility for unix systems
Group: Applications/System
License: GNU AFFERO GENERAL PUBLIC LICENSE version 3
URL: https://mmonit.com/monit/
%undefine _disable_source_fetch
Source0: https://mmonit.com/monit/dist/%name-%version.tar.gz
%define SHA256SUM0 4b5c25ceb10825f1e5404f1d8a7b21507716b82bc20c3586f86603691c3b81bc
%define debug_package %nil
BuildRequires: coreutils
%description
Monit is a small Open Source utility for managing and monitoring Unix systems. Monit conducts automatic maintenance
and repair and can execute meaningful causal actions in error situations.
%prep
echo "%SHA256SUM0 %SOURCE0" | sha256sum -c -
%setup -q
...
Kredi tanımsız _disable_source_fetch için
@YaroslavFedevych: Burada
çalışan bir örnektir.
- 1. Linux'ta belirli bir yerel ayar için dil adını nasıl alabilirim?
- 2. Bir ForeignKey alanı için belirli bir değeri olan bir Django modelindeki tüm nesneleri nasıl alabilirim?
- 3. Git changelog: belirli bir etikete kadar tüm değişiklikleri nasıl alabilirim?
- 4. Belirli bir karakter için elle ayarlanan glifi nasıl alabilirim?
- 5. Belirli bir sütuna yorum eklemek için NERDCommenter'ı nasıl alabilirim?
- 6. Belirli bir pencere boyutu içindeki tüm bigramları nasıl alabilirim?
- 7. Github API: Belirli bir dilde yazılmış tüm depoları nasıl alabilirim?
- 8. Lucene'deki bir Lucene alanı için tüm terimleri nasıl alabilirim?
- 9. Tüm ülkeler için posta kodlarını nereden alabilirim?
- 10. Belirli bir sözcük için tüm dizgiyi nasıl ararım?
- 11. Belirli bir sayfa için tüm Facebook check-in'leri nasıl alınır?
- 12. ABRecordRef'in tüm özelliklerinin bir listesini nasıl alabilirim?
- 13. Tüm testleri çalıştırırken belirli kategorileri yok saymak için ReSharper'ı nasıl alabilirim?
- 14. Bitbucket'te bir dağıtım anahtarı için yazma erişimini nasıl alabilirim?
- 15. SpeC# kararlı kullanım için yeterli mi?
- 16. D3 haritanızı bir yere yakınlaştırmak için nasıl alabilirim?
- 17. Maven projem için bir jnlp oluşturmak için nasıl alabilirim?
- 18. Belirli bir ortam için state.highstate nasıl çalıştırılır?
- 19. Bir ArrayAdapter öğesinin tüm öğelerini nasıl alabilirim?
- 20. Tüm iletileri bir ActiveMQ aracısından nasıl alabilirim?
- 21. Mathematica'da bir listenin tüm bölümlerini nasıl alabilirim?
- 22. Zend Framework'de tüm yanıt bölümlerini nasıl alabilirim?
- 23. SQL üstte belirli bir kayda sahip olmak için, tüm diğerleri
- 24. LDAP Belirli bir grubun tüm kullanıcılarını listelemek için Sorgu
- 25. , belirli bir süre için göster, sonra gizlemek
- 26. Visual Studio için Crystal Reports'ta bir pivot raporunu nasıl alabilirim?
- 27. PHP kullanarak FTP ile bir klasörün indirilmesi
- 28. Durum makinesi iş akışında belirli bir rol için olası geçişler listesini nasıl alabilirim?
- 29. Belirli bir uzunluktaki rastgele bir kelimeyi bir Trie'den nasıl alabilirim?
- 30. DataGridView için, her satırdaki değerleri nasıl alabilirim?
SUSE'de hangi rpm'nin spectool içerdiğini bulamıyorum. – aleung
Sadece 'spectool' değil mi? Https://build.opensuse.org/package/show/devel:tools/spectool – joeforker
Bayrakların ne anlama geldiğini bilmek istediğim gibi: "-g, --gf, --get- dosyalar URL ile listelenen kaynakları/yamaları alır; -R, --sourcedir'i rpm'nin% {_ sourcedir} 'e çevirir. – Richlv