Dodaję niektóre źródła do istniejącego pliku rpm .spec
przez URL i nie mam ich jeszcze pobranych. Czy istnieje sposób, aby pobrać rpmbuild
, aby pobrać źródła zamiast robić to ręcznie?Jak uzyskać rpmbuild do pobrania wszystkich źródeł dla określonego .spec?
Odpowiedz
Narzędzie spectool
z pakietu może to zrobić. Wystarczy zainstalować rpmdevtools
i wskazać spectools
na .spec
tak:
spectool -g -R SPECS/nginx.spec
będzie pobierać żadnych brakujących źródeł do %{_sourcedir}
(zwykle SOURCES
) katalog rpm.
dla potomnych, istnieje inny sposób na to, co nie wymaga żadnych dodatkowych narzędzi lub pobieranie:
rpmbuild --undefine=_disable_source_fetch -ba /path/to/your.spec
źródła pobieranie automatycznie jest zabronione domyślnie ponieważ RPM brakuje wbudowanej kontroli integralności dla źródła archiwa. Sieć musi być zaufana, a wszystkie sumy kontrolne i podpisy sprawdzone. To ograniczenie ma sens dla opiekunów pakietów, ponieważ są oni odpowiedzialni za wysyłanie zaufanego kodu.
Jednak, gdy wiesz, co robisz i rozumiesz ryzyko, możesz po prostu znieść ograniczenie.
W pliku specyfikacji można umieścić %undefine _disable_source_fetch
w dowolnym miejscu przed źródłowym adresem URL.
Ze względów bezpieczeństwa należy również określić wartość sha256sum i sprawdzić ją w sekcji %prep
przed rozpoczęciem konfiguracji.
Oto przykład roboczych:
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
...
kuponów
@YaroslavFedevych dla Undefine _disable_source_fetch.
- 1. Jak uzyskać dane odpowiedzi z RestSharp do pobrania dla użytkownika?
- 2. rpmbuild Zainstalowane (ale nieopakowane) pliki źródłowe
- 3. Alternatywa dla otwartych źródeł do list Sharepointa
- 4. Dlaczego rpmbuild (1) ignoruje skompresowany plik tar (1) nazwany przez znacznik "Source:" w pliku "Spec" RPM?
- 5. Yii: Łapanie wszystkich wyjątków dla określonego kontrolera
- 6. Jak mogę uzyskać listę wszystkich żądań pobrania dla repo za pośrednictwem interfejsu API github?
- 7. Dokumentacja do pobrania Elixir
- 8. Jak uzyskać skalę DPI dla wszystkich ekranów?
- 9. Gradle uzyskać aktualny smak dla określonego zadania
- 10. Problemy z rpmbuild na CentOS - Zły stan wyjścia z /home/me/rpmbuild/tmp/rpm-tmp.58942
- 11. Jak uzyskać listę wszystkich rozszerzonych właściwości dla wszystkich obiektów
- 12. Jak porządkować pliki spec?
- 13. Używanie API GitHub do pobierania wszystkich wersji określonego pliku
- 14. github api uzyskać liczbę żądań pobrania
- 15. Jak uzyskać IMEI dla J2ME dla wszystkich urządzeń?
- 16. Android: Pobieranie listy wszystkich plików określonego typu
- 17. Jak uzyskać liczbę otwartych uchwytów, które należą do określonego procesu?
- 18. Grant Wybierz na wszystkich tabelach należących do określonego użytkownika
- 19. Lista wszystkich skrótów klawiaturowych dla określonego trybu emacs.
- 20. Wyświetlanie wszystkich awarii dla określonego problemu w Crashlytics
- 21. "descript.ion" file spec?
- 22. rpmbuild% czysta faza bez usuwania plików
- 23. AFNetworking + duże pliki do pobrania + pliki do pobrania
- 24. jak uzyskać dostęp do określonego elementu każdego elementu widoku siatki
- 25. Jak mogę uzyskać listę wszystkich funkcji przechowywanych w bazie danych określonego schematu w PostgreSQL?
- 26. Jak mogę uzyskać listę wszystkich plików o określonym rozszerzeniu z określonego katalogu?
- 27. jak uzyskać obiekt połączenia określonego użytkownika?
- 28. Zapisywanie wszystkich błędów określonego typu wewnątrz modułu
- 29. Folder do pobrania Github jako zip
- 30. Używanie OperatingSystemMXBean do pobrania procesora
Nie mogę znaleźć, który rpm zawiera spekulację w SUSE. – aleung
Czy to nie jest po prostu "spectool" https://build.opensuse.org/package/show/devel:tools/spectool – joeforker
Ponieważ chciałem wiedzieć, co oznaczają flagi: "-g, --gf, --get- pliki pobierają źródła/łaty, które są wymienione z adresem URL; -R, --sourcedir pobierz do% {_ sourcedir} "rpm" – Richlv