Wo findet man am besten Quellen für Standard-Linux-Befehlszeilentools?

Wo findet man am besten Quellen für Standard-Linux-Befehlszeilentools?

Into: Ich lerne gerne durch das Lesen von Quellen. Aber es ist ermüdend, sie im Internet auf vielen verschiedenen Projektseiten zu suchen. Ich würde gerne sehenzentral durchsuchbarRepo mit Quellen vieler, vieler Apps an einem Ort.

  • Wenn jemand die Dokumentation zu einem Linux-Tool sucht, ist der beste Ort: man toolname.
  • Wenn ich Linux-Quellen „bei Bedarf“ durchsuchen möchte, kann ich immer zu Folgendem springen:Linux-Querverweis.
  • Wenn ich die am häufigsten vorkommenden Mitarbeiter finden möchte, kann ich alle Quellen finden in Kerndienstprogramme.
  • Wenn ich nachschauen möchte, wie man etwas baut, kann ich (zum Beispiel) inhttp://www.archlinux.org/packages/, überprüfen Sie, dass es pkgbuild ist.

Gibt es ein Repo, das die Quellen der meisten Tools an einem Ort enthält? - genau wie mandie Dokumentation oderLinux-QuerverweisKernelquellen.

Ich meine etwas zum „schnellen“ „On-Demand“-Überprüfen, wie Dinge implementiert werden. (Ja, ich kenne Google -> aber ich habe die Routine satt: 1. Projektsite durchsuchen 2. Repo durchstöbern oder noch schlimmer -> dessen Repo auschecken 3. nach Abschluss löschen)

ANMERKUNG:

Ich bin gestresst und möchte die Tools überprüfen: schnell, unkompliziert, auf Abruf.

Das bedeutet: Ich möchte nicht die ganze App mit ihren Quellen installieren, nur um einen Blick auf ihre Quellen zu werfen. (Übrigens sind Webressourcen vorzuziehen, damit ich die Quellen von vielen Computern aus überprüfen kann – ich habe nicht auf allen davon Administratorrechte.)

Antwort1

Lassen Sie mich auf Ihre Frage mit einer alternativen Antwort antworten. Ich nehme an, Sie möchten den Code für die traditionellen Unix-Befehlszeilentools lesen, nicht nur die GNU-Version davon. Das Lesen des Codes ähnlicher Tools aus verschiedenen Projekten ist eine gute Übung, um verschiedene Ideen und Implementierungen kennenzulernen.

GNU hat eine nette Weboberfläche für das Repo der Coreutils:http://git.savannah.gnu.org/cgit/coreutils.git

Die BSD-Familie hat ähnliche Weboberflächen für die Repos:

Die BSD-Codebasis ist interessant, weil sie normalerweise weniger Code für dieselben Tools verwendet, d. h.: unterstützt nur traditionelle Optionen, keine zusätzlichen Optionen, sh ist eine echte Shell und nicht nur ein Link zu einer anderen großen Shell (Bash) usw. Tools, die den Coreutils ähnlich sind, befinden sich in bin, sbin, usr.bin und usr.sbin.

Sie können auch dieselben Weboberflächen durchsuchen, wenn Sie den Code zum Erstellen von Drittanbietersoftware lesen möchten (ähnlich wie pkgbuild von Arch). NetBSD und DragonFly verwenden pkgsrc aus dem NetBSD-Repo. OpenBSD und FreeBSD haben diese Frameworks in ihren jeweiligen Repos.

Andere für Ihren Zweck interessante Repos sind:

Antwort2

Da es keinen zentralen Ort für die Open-Source-Entwicklung gibt, gibt es auch kein zentrales Repository, das die meiste Open-Source-Software enthält. Einige verwenden GitHub, BitBucket, private Server, Sourceforge, Launchpad usw. Dies ist also eine wirklich verteilte Umgebung und es gibt keinen unmittelbaren Vorteil, ein Repository zu haben, das nur den Quellcode kopiert.

Binärdistributionen (die Binärdateien statt Quellcode liefern) stellen dagegen normalerweise den Quellcode für die meisten ihrer Pakete bereit und stellen sie allen Benutzern zur Verfügung. Daher ist es am besten, die von den Distributionen bereitgestellte Infrastruktur zu verwenden. Bitte beachten Sie, dass diese nicht unbedingt die neuesten Änderungen und Korrekturen enthalten und veraltet sein können.

Beispiele zum Herunterladen eines Quellpakets von Ihrer Distribution:

yumdownloader --source packagename
apt-get source packagename

Für Arch finden Sie die Antworten unterdie Antworten auf eine ähnliche Frageauf Stackoverflow.

Wenn Sie nur den Quellcode herunterladen möchten, können Sie packages.debian.org verwenden, z. B.Link für Coreutils. Dadurch wird ein Download-Link zum Originalpaket ( orig.*oder zur bereinigten Quelle für einige Pakete dsfg.*) bereitgestellt. Sie können dasselbe mit der Arch Linux-Paketliste tun, z. B.:Arch Coreutils-Seite. Download from MirrorDas Paket wird heruntergeladen.

verwandte Informationen