30.11 Unix-Software veröffentlichen
Üblicherweise gibt es bei der Veröffentlichung von Unix-Software einige typische Eigenheiten. Auf diese Eigenheiten, die Sie in fast jeder gängigen Open-Source-Software antreffen werden, möchten wir im Folgenden zu sprechen kommen.
In der Regel wird Unix-Software entweder in binärer Form oder als Quellcode-Version auf die folgenden Arten aus dem Internet bezogen:
- als fertiges Paket
Hierzu zählen beispielsweise .deb- und .rpm-Dateien, die bereits in Abschnitt Abschnitt_PaketverwaltugPorts besprochen wurden. - Quellcode als .tar.gz/.tar.bz2
Wird die Software als Quellcode publiziert, so wird sie (und das gilt für alle Unix-Systeme) meist in Form von tar-Archiven verteilt. Diese werden dann oftmals noch mit GZip, Compress oder BZip2 komprimiert. Eher unüblich ist die Verwendung von ZIP-Archiven – doch auch diese sind möglich. - Port
Bei Ports (und hier sind nicht die Plattformportierungen, sondern BSD-Ports gemeint) liegt die Software in einem beliebigen Format vor, in der Regel jedoch als Quellcode-Archiv. Der Port installiert sich dabei automatisch, nachdem man die Installation gestartet hat. Dies beinhaltet das Herunterladen der Software, das Herunterladen und Installieren von Abhängigkeiten und die Installation der Software. - CVS, SVN, Git
Eine weitere Möglichkeit, alles von Hand zu erledigen, ist das Herunterladen des aktuellen Quellcode-Auszugs vom CVS-, SVN- oder git-Server des jeweiligen Softwareprojekts. Mehr zu diesem Thema in Abschnitt Versionsverwaltungssysteme.
Bei dieser Form der Softwareverteilung muss der Quellcode selbst entpackt und übersetzt werden.
Unix-Softwareprojekten sind in aller Regel bestimmte Dateien beigefügt. Dazu zählen:
- AUTHOR
In dieser Datei stehen der Name des Projektleiters sowie einige Kontaktinformationen. Ihr Inhalt könnte etwa so aussehen: - NEWS, ChangeLog o. Ä.
In dieser Datei sind die wichtigsten (NEWS) bzw. gesamten (ChangeLog) Änderungen protokolliert, die an einer Software vorgenommen worden. NEWS kann auch generelle Neuigkeiten zum Projekt beinhalten. Hier ein Beispiel für den Aufbau einer solchen Datei (exakte Vorgaben gibt es dafür nicht): - INSTALL
Diese Datei enthält eine Installationsanleitung für die Software. Manchmal findet sich auch nur ein Verweis auf ein Dokumentationsverzeichnis (in der Regel doc/) oder eine URL mit Dokumentationsdateien in dieser Datei. - README
Zusätzliche Informationen werden in dieser Datei abgelegt. - LICENSE oder COPYING
Die Lizenz, unter der eine Software publiziert wird – in der Regel ist dies die BSD-License oder die GNU General Public License (GPL) – ist in dieser Datei gespeichert.
Listing 30.66 Beispiel einer AUTHOR-Datei
Steffen Wendzel
mail: mailadresse@abcdefg.xyz
http: www.abcdefg.xyz
Listing 30.67 NEWS
Xyria:DNSd Changelog
--------------------
0.6.0 : (3354 loc; Jun-22-2005; 23:25)
– implemented a cache based on hashed arrays
– implemented IPC between resolver-childs and
cache-thread based on unix domain sockets
– switched from 'beta' to 'stable'
0.5.1p2-beta : (3186 loc; 21.06.05; 22:00)
– fixed a problem with blocking-I/O in resolver
child; switched to non-blocking-I/O
[»]Sorgen Sie dafür, dass die Installationsanleitung und die NEWS-Datei in englischer Sprache verfasst sind. Damit geben Sie Ihrer Software zum einen
die Möglichkeit, sich leichter zu verbreiten, und zum anderen machen Sie es internationalen
Anwendern bedeutend einfacher, mit Ihrer Software zu arbeiten.
Ihr Kommentar
Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.