GNU/Linux >> LINUX-Kenntnisse >  >> Debian

C-Entwicklung unter Linux – Ein Paket in den offiziellen Debian-Repositorys erhalten – XII.

Einführung

Dies ist der letzte Teil unserer C-Entwicklungsserie und wohl der nichttechnischste. Wenn Sie uns von Anfang an gefolgt und so viel wie möglich geübt haben, verfügen Sie jetzt über einige Grundkenntnisse in der C-Entwicklung und wie Sie Ihre (Lieblings-)Anwendung für zwei der am häufigsten verwendeten Linux-Distributionsfamilien, Debian und Redhat, paketieren. In diesem Artikel geht es um die Community, wie man etwas beitragen kann, wie man zusammenarbeitet und schließlich, wie man sein Paket in die offiziellen Debian-Archive bekommt. Wenn Sie die vorherigen Artikel der Serie lesen, benötigen Sie keine weiteren technischen Kenntnisse; Alles, was Sie brauchen, ist der Wille, Ihr Wissen zum Wohle der Gemeinschaft einzusetzen.

Erste Schritte

Sie haben eine Anwendung, Sie haben sie gepackt und möchten sie jetzt unbedingt in die Debian-Archive hochladen (übrigens gelten viele der hier vorgestellten Ideen für viele Open-Source-Projekte:Was sich normalerweise unterscheidet, ist die Vorgehensweise). Wir würden sagen, nicht so schnell. Nehmen Sie sich eine Minute Zeit zum Durchatmen und finden Sie Wege, sich der Community bekannt zu machen. Nehmen Sie sich etwas Zeit, um den Debian-Leitfaden für neue Betreuer zu lesen, falls Sie dies noch nicht getan haben, und denken Sie an das Schlüsselwort hier:Gemeinschaft. Jeder ist ein Freiwilliger, und wir haben uns vor allem wegen seiner demokratischen Ansichten für Debian entschieden, und niemand wird bezahlt oder in irgendeiner Weise gezwungen, Ihre Gebote abzugeben. Wie auch immer, da wir wissen, wie gerne Sie Leitfäden und Handbücher lesen, wird ein Teil dieses Artikels aus einigen vernünftigen Ratschlägen zur Zusammenarbeit bestehen. Gewöhnen Sie sich zunächst daran, alleine zurechtzukommen. Niemand mag jemanden, der beim ersten Anzeichen von Schwierigkeiten, anstatt zum besten Internetfreund $SEARCH_ENGINE zu gehen, anfängt, die Foren, Mailinglisten und IRC-Kanäle mit kindischen Fragen zu verschmutzen, wie „Welche gcc-Flags brauche ich um meinen Code für i686 zu kompilieren?“. Das einzige, was Sie gewinnen werden, ist ein weniger als freundliches RTFM und viele fehlende Geek-Punkte. Ja, wir wissen, dass das gcc-Handbuch umfangreich und ein sicherer Schuss für Kopfschmerzen ist, aber zuerst das Handbuch zu lesen und dann im Internet zu suchen, ist der richtige Weg (TM). Keine Ausnahmen. Einen ersten guten Eindruck hinterlassen Sie, wenn Sie den anderen Entwicklern zeigen, dass Sie Ihre Hausaufgaben gemacht haben. Auf der anderen Seite bringt es Ihnen keine Popularität, wenn Sie Anfängern das Leben schwer machen, insbesondere wenn ein solches Verhalten nicht erforderlich ist. Denken Sie daran, dass Sie einmal wie sie waren, denken Sie daran, dass Sie, wie wir alle, noch viel zu lernen haben, und weisen Sie die Person vielleicht auf eine Ressource hin, die Sie für hilfreich halten. Denken Sie in diesem Zusammenhang noch einmal an dieses Wort:Gemeinschaft. Ihre Arbeit bedeutet nicht viel, obwohl sie Ihnen die Welt bedeutet, es sei denn, die Community findet sie nützlich. Arbeiten Sie mit ihnen zusammen und seien Sie bereit, Feedback anzunehmen und dankbar dafür zu sein, auch wenn Ihnen das, was Sie hören, vielleicht nicht gefällt. Lassen Sie Ihren Stolz an der Tür und denken Sie daran, dass der beste und vielleicht einzige Weg, Ihre Software besser zu machen, Community-Feedback ist. Aber verfallen Sie nicht in Extreme und versuchen Sie, unparteiisch zu sein. Vielleicht werden einige Leute versuchen, Sie nur aus Spaß schlecht zu machen:Ignorieren Sie sie und konzentrieren Sie sich auf konstruktive Kritik.

Handelswerkzeuge

Das erste Werkzeug, das Sie jemals als Debian-Entwickler oder als jede andere Distribution/Projekt brauchen werden, ist Geduld. Es spielt keine Rolle, ob Sie Ihre eigene Software paketieren oder die von jemand anderem, wie wir es mit yest gemacht haben. Entwickler wird man nicht über Nacht, schon gar nicht in einem qualitätsorientierten Projekt wie Debian. Um nun auf die praktische Seite der Dinge zu kommen, ist das erste und offensichtlichste Werkzeug, das Sie brauchen, der Compiler für die Sprache, in der Ihr Programm geschrieben ist. Oder, wenn das Programm in einer interpretierten Sprache geschrieben ist, stellen Sie sicher, dass der Interpreter (Perl, Python, Ruby…) ist als Abhängigkeit vorhanden. Wir werden uns jedoch auf die C-Seite konzentrieren, da dies schließlich eine C-Entwicklungsartikelserie ist, und Ihnen eine nicht erschöpfende Liste von Dienstprogrammen geben, die Sie besser auf Ihrem Entwicklungscomputer installiert haben:

auto* tools (autoconf, automake, ...)
debhelper and dh-make -- Debian-specific
devscripts, fakeroot -- same, see the Guide for details
a VCS of your choice, depending on the situation at hand -- we prefer to take no sides here
gnupg -- for digitally signing your packages, mandatory in Debian
lintian -- the name is a combination of lint and Debian, so it's self-explanatory
patch - you should know by know why you'd need it
pbuilder -- for creating a chroot

Wenn Sie vorsichtig gewesen wären, hätten Sie bemerkt, dass wir ein wichtiges Dienstprogramm in dieser Liste ausgelassen haben. Kannst du es erkennen?

Dokumentation

Debian empfiehlt zwei Dokumente. Tatsächlich nein. Debian empfiehlt die beiden Dokumente, aber wir sagen, dass Sie sie mehr als einmal lesen und immer griffbereit haben sollten. Das sind die Debian-Richtlinie und die Entwicklerreferenz, die beide über das Internet und als Pakete verfügbar sind. Auch die GNU Coding Standards sollten zur Hand sein, wenn Sie sie brauchen, besonders wenn/wenn Sie die Anwendung selbst schreiben.

Upstream

Da wir uns auf yest als primäres Beispiel für diese Serie konzentrieren, ist es leicht herauszufinden, dass wir nur Paketierer und keine primären Entwickler sind, also müssen wir mit dem Upstream in Kontakt bleiben. Natürlich gelten die oben skizzierten Kommunikationsregeln, und die enge Zusammenarbeit mit den Upstreams sorgt für ein gesundes Paket, das umgehend aktualisiert wird, sobald der Autor die neue Version hochlädt. Obwohl besagter Autor die Software wahrscheinlich getestet hat, bevor er sie veröffentlicht hat, ist es sogar noch besser, wenn Sie einige Unit-Tests für sich selbst durchführen, bevor Sie das Paket hochladen. Schauen Sie sich hierfür Tools wie DejaGNU an und melden Sie alle gefundenen Probleme an Upstream. Apropos Berichterstattung:Sie müssen sich der Verantwortung bewusst sein, die Sie übernehmen, wenn Sie Betreuer werden. ALLE Fehlerberichte von Debian-Benutzern werden zu Ihnen kommen, und es ist Ihre Pflicht, als Katalysator zwischen den Benutzern und den Originalautoren zu fungieren, um alle Probleme zu beheben.

Der Mentor

Viele von euch, besonders die älteren wie ich, haben die Karate Kid-Serie gesehen. Wenn überhaupt, zeigt dieser Film eine Beziehung zwischen einem Meister und einem Lehrling (OK, Sie können Star Wars auch als Beispiel nehmen …). Wenn Sie denken, dass Sie darum bitten, Entwickler zu werden, und Ihr Wunsch innerhalb von Minuten erfüllt wird, haben Sie die Geduld vergessen. Nein, Sie müssen zuerst um Mentoring bitten und Ihre Leistungen, Ihre Motivation und so weiter zeigen. Nach einer Weile, nachdem Sie sich als würdig erwiesen haben, reichen Sie eine Bewerbung ein, um Betreuer zu werden, wobei der Mentor für Sie bürgt.

Hochladen

Sie haben es fast geschafft, Sie müssen nur noch den Upload durchführen. Wenn Sie so weit gekommen sind, können Sie sich bereits auf die Schulter klopfen. Jetzt heißt die Anwendung, die Sie brauchen, dupload(1), und Sie sollten eine Datei namens dupload.conf(5) erstellen in Ihrem Home-Verzeichnis und beginnen Sie mit der Änderung der Einstellungen. Sie können, wenn die Handbuchseite der Datei beängstigend erscheint, /etc/dupload.conf nehmen als Beispiel. Nach dem Speichern von ~/dupload.conf , können Sie so etwas tun:

 $ dupload yest-2.7.0.5_i386.changes

Nun bleibt es dem Leser als Übung überlassen, herauszufinden, was sonst noch zu tun ist, wenn er zum ersten Mal ein Paket hochlädt. Außerdem sollte Kapitel 9 des Debian-Leitfadens für neue Betreuer gelesen und noch einmal gelesen werden und dann noch etwas mehr. Das war's!

Alle Artikel dieser Serie:

  • Ich. C-Entwicklung unter Linux – Einführung
  • II. Vergleich zwischen C und anderen Programmiersprachen
  • III. Typen, Operatoren, Variablen
  • IV. Flusskontrolle
  • V. Funktionen
  • VI. Zeiger und Arrays
  • VII. Strukturen
  • VIII. Grundlegende E/A
  • IX. Codierungsstil und Empfehlungen
  • X. Erstellen eines Programms
  • XI. Paketierung für Debian und Fedora
  • XII. Ein Paket in den offiziellen Debian-Repositories erhalten

Debian
  1. Erstellen von Linux-Kernels auf Debian-Art

  2. So listen Sie alle Dateien auf, die vom DEB-Paket unter Ubuntu/Debian Linux installiert wurden

  3. bash:netstat:Befehl nicht gefunden – Debian/Ubuntu Linux

  4. Erste Schritte mit Jekyll unter Debian 9 Stretch Linux

  5. So installieren Sie die neuesten NVIDIA-Treiber unter Debian 9 Stretch Linux

Installation des neusten PHP 7 der neuesten Generation auf Debian 8 Jessie Linux

Installieren Sie The Discord unter Debian 9 Stretch Linux

Richten Sie eine Python-Django-Entwicklungsumgebung unter Debian 9 Stretch Linux ein

Debian-Linux-Download

Aptitude - Debian GNU/Linux-Paketverwaltungstool

Cylon-deb :Das Debian-Linux-Wartungsprogramm