Inhaltsverzeichnis
Hier sind die Voraussetzungen, die Sie verstehen müssen, um bei Debian mitzumachen.
Es nehmen verschiedene Arten von Leuten mit verschieden Rollen rund um Debian teil:
Bitte beachten Sie, dass Sie nicht über Nacht ein offizieller Debian-Entwickler (DD) werden können, da es mehr als technischer Fähigkeit bedarf. Seien Sie davon nicht entmutigt. Falls es für andere nützlich ist, können Sie dennoch Ihre Pakete hochladen, entweder als Betreuer durch einen Sponsor oder als ein Debian-Betreuer.
Bitte beachten Sie, dass Sie keine neuen Pakete erstellen müssen, um ein offizieller Debian-Entwickler zu werden. Auch Beiträge zu bestehenden Paketen können ein Weg sein, ein offizieller Debian-Entwickler zu werden. Es gibt viele Pakete, die auf gute Betreuer warten (siehe Abschnitt 2.8, „Wege, beizutragen“).
Bitte lesen Sie die folgenden Dokumenten, um zu verstehen, wie Sie zu Debian beitragen können:
Bitte verstehen Sie die soziale Dynamik, um sich für die Wechselwirkungen mit Debian vorzubereiten:
Wir sind alle Freiwillige.
Freundliche Zusammenarbeit ist der Motor.
Debian ist nicht Ihre Schule, bei der die Lehrer sich automatisch um Sie kümmern.
Debian verbessert sich ständig.
Da in der restlichen Anleitung nur auf die technischen Aspekte der Paketierung fokusiert wird, wird auf folgendes zum Verständnis der sozialen Dynamik von Debian verwiesen:
Es folgen ein paar technische Erinnerungen, die anderen Betreuern bei der Arbeit an Ihrem Paket helfen und das Ergebnis von Debian insgesamt effektiv maximieren.
Ermöglichen Sie in Ihrem Paket eine leichte Fehlersuche.
Halten Sie Ihr Paket gut dokumentiert.
Die Fehlersuche in Software kann mehr Zeit verbrauchen, als die eigentliche Erstellung.
Bitte lesen Sie nach Bedarf den einschlägigen Anteil der offiziellen Debian-Dokumentation zusammen mit dieser Anleitung, um perfekte Debian-Pakete zu erstellen:
Debian-Policy Handbuch (englisch)
Debian-Entwickler-Referenz
Falls dieser Leitfaden der offiziellen Debian-Dokumentation widerspricht, dann ist die offizielle Debian-Dokumentation korrekt. Bitte reichen Sie mittels des Befehls reportbug (auf englisch) einen Fehlerbericht gegen das Paket debmake-doc ein.
Hier sind alternative Anleitungen, die Sie zusammen mit diesem Leitfaden lesen können:
»Debian-Leitfaden für Neue Paketbetreuer« (älter)
Leitfaden zum Debian-Paketieren
»Ubuntu Packaging Guide« (Ubuntu basiert auf Debian.) (englisch)
Wenn Sie diese Anleitungen lesen, sollten Sie in Erwägung ziehen, den Befehl debmake an Stelle des Befehls dh_make für bessere Vorlagendateien zu verwenden.
Bevor Sie Ihre Fragen an einem öffentlichen Ort stellen, bemühen Sie sich vorher, die Antwort zu ermitteln, z.B. lesen Sie die gute Dokumentation:
Ihre gewünschten Informationen können effektiv gefunden werden, indem Sie einen wohlgeformten Suchbegriff wie das Schlüsselwort site:lists.debian.org verwenden, um den Suchbereich der Web-Suchmaschine einzuschränken.
Die Herstellung eines kleinen Testpaketes ist eine gute Möglichkeit, Details des Paketierens zu erfahren. Bestehende, gut gewartete Debian-Pakete zu inspizieren ist der beste Weg, um zu lernen, wie andere Menschen Debian-Pakete erstellen.
Falls Sie immer noch Fragen über das Paketieren haben, können Sie die Fragen direkt stellen (auf Englisch):
Sprachspezifische Mailinglisten
Die erfahreneren Debian-Entwickler werden Ihnen gerne helfen, wenn Sie nach den erforderlichen Vorarbeiten richtig fragen.
Die Debian-Entwicklung ist ein sich entwickelndes Projekt. Einige Informationen, die im Web gefunden werden, könnten veraltet, falsch und nicht (mehr) zutreffend sein. Bitte benutzen Sie sie sorgfältig.
Bitte begreifen Sie die Situation des Debian-Archivs.
Daher werden Beiträge zu Paketen, die sich bereits im Archiv befinden, von anderen Betreuern weitaus mehr geschätzt (und erhalten eher Sponsoring für das Hochladen).
Der Befehl wnpp-alert aus dem Paket devscripts kann prüfen, ob installierte Pakete zur Adoption freigegeben oder verwaist sind.
Hier ist Pseudo-Python-Code für Ihre Wege, zu Debian mit einem Programm beizutragen:
if exist_in_debian(program): if is_team_maintained(program): join_team(program) if is_orphaned(program) # maintainer: Debian QA Group adopt_it(program) elif is_RFA(program) # Request for Adoption adopt_it(program) else: if need_help(program): contact_maintainer(program) triaging_bugs(program) preparing_QA_or_NMU_uploads(program) else: leave_it(program) else: # new packages if not is_good_program(program): give_up_packaging(program) elif not is_distributable(program): give_up_packaging(program) else: # worth packaging if is_ITPed_by_others(program): if need_help(program): contact_ITPer_for_collaboration(program) else: leave_it_to_ITPer(program) else: # really new if is_applicable_team(program): join_team(program) if is_DFSG(program) and is_DFSG(dependency(program)): file_ITP(program, area="main") # This is Debian elif is_DFSG(program): file_ITP(program, area="contrib") # This is not Debian else: # non-DFSG file_ITP(program, area="non-free") # This is not Debian package_it_and_close_ITP(program)
Hier:
Für das Prüfen von exist_in_debian() und is_team_maintained();:
Für das Prüfen von is_orphaned(), is_RFA() und is_ITPed_by_others():
Für das Prüfen von is_good_program():
Für die Prüfung von is_it_DFSG() und is_its_dependency_DFSG():
Für die Prüfung von is_it_distributable():
Sie müssen entweder einen ITP einreichen oder ein Paket adoptieren, um mit der Arbeit daran zu beginnen. Siehe die »Debian-Entwickler-Referenz«:
The novice contributor and maintainer may wonder what to learn to start your contribution to Debian. Here are my suggestions depending on your focus:
Packaging
Translation
Documentation
The novice contributor and maintainer may wonder where to start your contribution to Debian. Here are my suggestions depending on your skills:
POSIX shell, Perl, and Python skills:
C and C++ skills:
Non-English skills:
Documentation skills:
These activities should give you good exposure to the other Debian people to establish your credibility.
The novice maintainer should avoid packaging programs with the high security exposure:
When you gain more experience in packaging, you’ll be able to package such programs.
[4] Die überwältigende Mehrheit der Debian-Betreuer verwenden git statt anderer VCS-Systeme wie hg, bzr, usw.
[5] Das ist nicht die absolute Voraussetzung. Die ablehnende Einstellung der Originalautoren kann für uns alle zu einem großen Ressourcenproblem werden. Die freundlichen Originalautoren können konsultiert werden, um alle Probleme mit dem Programm zu lösen.