Paketbau/Lizenzen
aus openSUSE, der freien Wissensdatenbank
< Paketbau
Lizenzsammlung wie sie in den Paketen von openSUSE gefunden wird
Um eine übermäßig große Anzahl gleicher Dateien zu vermeiden, hat openSUSE das Paket "licenses" erstellt. Es enthält eine Sammlung von Lizenztexten, die in den Pakten von openSUSE-Distributionen gefunden werden. Die Dateien befinden sich im Verzeichnis /usr/share/doc/licenses. Andere Pakete werden angespornt, anstatt eigene Volltextkopien mitzubringen, symbolische Verknüpfungen an diesen Ort zu erstellen.
Dies kann folgendermaßen in der spec-Datei des eigenen Pakets erreicht werden (Beispiel):
[...]
BuildRequires: licenses
Requires: licenses
[...]
%install
for FILE in COPYING LICENCE LICENCE_JHEAD LICENCE_VIGRA ; do
MD5SUM=$(md5sum $FILE | sed 's/ .*//')
if test -f /usr/share/doc/licenses/md5/$MD5SUM ; then
ln -sf /usr/share/doc/licenses/md5/$MD5SUM $FILE
fi
done
[...]
%files
%defattr(-,root,root)
%doc COPYING LICENCE LICENCE_JHEAD LICENCE_VIGRA
[...]
Ab openSUSE 10.3 ist das licenses-Paket Teil des Basissystems - eine explizites Requires ist somit nicht mehr notwendig, aber immer noch eine gute Idee.

