On Wed, 23 Oct 2013 11:13:15 +0200 (CEST), Olaf Radicke wrote:
> Die leeren %post und %postun in Deiner .spec Datei sind
überflüssig.
Wirkt auf mich nicht konsistent. Wenn es nicht stört lasse ich es drinnen.
Es ist sogar höchst inkonsistent. ;) Denn wenn %post und %postun leer sind,
warum fügst Du nicht auch leere %pre und %preun Sektionen ein? Die gleiche
Frage ließe sich für die "trigger" Sektionen stellen. Aber das führt zu weit.
$ rpm -qp --scripts olaf-system-post-init-2-1.noarch.rpm
postinstall program: /bin/sh
postuninstall program: /bin/sh
%post und %postun sind _besondere_, optionale Sektionen, die ausgeführt
werden, wenn das Paket installiert oder entfernt wird. Nicht zu verwechseln
mit %build und %install. Ein leeres Skript, das per /bin/sh ausgeführt wird,
ist überflüssig, unnützt und sollte in der .spec Datei gelöscht werden,
damit es nicht in das .noarch Paket eingebaut wird.
Nichts in %files schreiben und %files weglassen ist ja offenbar auch
nicht
das selbe.
Das sind zwei völlig verschiedene Dinge. Über die Angabe einer %files Liste
steuerst Du letztendlich, ob ein Paket gebaut wird. Nicht jedes src.rpm
mit Namen "%{name}" resultiert auch in einem Paket mit Namen
"%{name}".
Die spec Datei kann so aufgebaut sein, daß nur Pakete mit abweichendem
Namen gebaut werden. Und das ist nicht nur Theorie, sondern kommt in der
Praxis durchaus vor.
Als Nachtrag zu %build. %build darf zwar leer sein oder auch fehlen, es ist
aber unüblich, %build deshalb wegzulassen.