Cóż, rzeczywiście jest to nieco niestandardowe i dlatego nie jest bezpośrednio obsługiwane. Można jednak zrobić python setup.py bdist_rpm --spec-only
a to wygeneruje plik spec wewnątrz dist/named project.spec, rozpoczynając w ten sposób:
%define name [name of your pkg as defined in setup.py]
%define version [version of your pkg]
%define unmangled_version [version of your pkg]
%define release 1
Summary: PyQt4 application to download trailers from www.apple.com/trailers
Name: %{name} # THIS IS WHAT YOU WANT TO CHANGE
Version: %{version}
Release: %{release}
Source0: %{name}-%{unmangled_version}.tar.gz
Aby pomyślnie zbudować rpm stąd trzeba:
- przemianować spec złożyć do [newname] .spec
- zmiany każde wystąpienie% {NAME} z [newname]
- rpmbuild -ba [newname.spec] (po umieszczeniu plików w katalogów gdzie rpmbuild będzie je znaleźć)
Jestem pewien, że można zautomatyzować ten w jakiś sposób, jeśli naprawdę chce
Twoja odpowiedź jest nieco niekompletna. "po umieszczeniu plików w katalogach, gdzie rpmbuild je znajdzie" nie wyjaśnia, jak i gdzie uruchomić polecenie rpmbuild, aby zakończyć proces. –
Przydałoby się zauważyć, że zamiast "% define name" zmieniono 'Name:' ', ponieważ definicja jest również używana w nazwie pakietu źródłowego, a pakiet źródłowy (prawdopodobnie) będzie miał" regularne "nazwa w nazwie pliku, a nie przesłonięta wartość (jak pokazano w dołączonym przykładzie). Dlatego tak naprawdę nie zmieniasz każdego wystąpienia - po prostu zmieniasz instancję 'Name:'. – dannysauer