Product SiteDocumentation Site

5.3. Struktur eines Quellpakets

5.3.1. Format

Ein Quellpaket besteht normalerweise aus drei Dateien, einer Datei.dsc, .orig.tar.gz und .debian.tar.xz oder .diff.gz. Diese ermöglichen es, aus dem in einer Programmiersprache geschriebenen Quellcode Binärpakete (.deb-Dateien wie weiter oben beschrieben) für das oder die Programm(e) zu erzeugen.
Die Datei .dsc (Debian Source Control) ist eine kurze Textdatei, die einen RFC 2822 Header enthält (genau wie die in Abschnitt 5.2.1, „Beschreibung: Die control-Datei“ betrachtete Datei control), der das Quellpaket beschreibt und angibt, welche anderen Dateien dazugehören. Sie ist von ihrem Betreuer signiert, wodurch Authentizität gewährleistet ist. Siehe Abschnitt 6.6, „Die Echtheit eines Paketes prüfen“ für weitere Einzelheiten zu diesem Thema.

Beispiel 5.1. Eine .dsc-Datei

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 3.0 (quilt)
Source: zim
Binary: zim
Architecture: all
Version: 0.75.1-1
Maintainer: Zim Package Maintainers <zim@packages.debian.org>
Uploaders: Raphaël Hertzog <hertzog@debian.org>
Homepage: https://zim-wiki.org
Standards-Version: 4.6.1
Vcs-Browser: https://salsa.debian.org/debian/zim
Vcs-Git: https://salsa.debian.org/debian/zim.git
Build-Depends: debhelper-compat (= 13), python3, python3-gi, python3-xdg, gir1.2-gtk-3.0, dh-python
Package-List:
 zim deb x11 optional arch=all
Checksums-Sha1:
 b4baa294ebc28b07393739875d94fab9557a2e5e 2510821 zim_0.75.1.orig.tar.gz
 e592c9ab8b12276283c6a7bed2246f2e9a843093 10416 zim_0.75.1-1.debian.tar.xz
Checksums-Sha256:
 88e175d7f7e141896f9e958989d252d722556af17bc4bc6f065e7d54287d0385 2510821 zim_0.75.1.orig.tar.gz
 30847b58bb2503b707f1d5c5c356eead31e61db09e677348f07383fcdda3bcb3 10416 zim_0.75.1-1.debian.tar.xz
Files:
 cc73838c1312b5e161d15a51ae4247c4 2510821 zim_0.75.1.orig.tar.gz
 ad84c5ac373071e4957490caf03f3a8b 10416 zim_0.75.1-1.debian.tar.xz

-----BEGIN PGP SIGNATURE-----
Comment: Signed by Raphael Hertzog

iQEzBAEBCgAdFiEE1823g1EQnhJ1LsbSA4gdq+vCmrkFAmO15esACgkQA4gdq+vC
mrkB4AgAj2tYiDW4aQdZfJHr/GGU9rHL99+lTL1VmrXr/I6Z8ggig0JGbTH4Z3lg
QNRu1PbFDJgdO1ho+c0b474iOsT4QTIUu9vHX/enwJ1MiQw8wGDNlsJIS+S33j5n
745p9Y782LTyKaaKPnilHst7pTIGNjmFRlqJr9E8K3gRjZjpTg6HE420epZ6haf1
+gk2npbsy2Psu1LsrbDUCa415COsogar6fpU3Kui3/p8ijT1ED1y9CqoNxATequp
nHkwpnwmi24Y5+RV79SXKW3ECOHTHGKCRWGFtSwCFg0LcAq69cTwnyphXt0gW/+Z
RtG81/jI+mMeRUGsdzdjAVlLK7K75w==
=0po3
-----END PGP SIGNATURE-----
Beachten Sie, dass das Quellpaket ebenfalls Abhängigkeiten (Build-Depends) hat, die jedoch mit denen der Binärpakete nichts gemein haben, da sie die Programme benennen, die erforderlich sind, um die betreffende Software zu kompilieren und sein Binärpaket zu erstellen.
Die Datei .orig.tar.gz ist ein Archiv, das den Programm-Quellcode enthält, wie er vom ursprünglichen Entwickler bereitgestellt wurde. Debian-Entwickler sind gehalten, dieses Archiv nicht zu verändern, damit es möglich ist, die Herkunft und Integrität der Datei (durch einen einfachen Vergleich mit einer Prüfsumme) zu kontrollieren, und um die Wünsche mancher Autoren zu berücksichtigen.
The .debian.tar.xz contains all of the modifications made by the Debian maintainer, especially the addition of a debian directory containing the instructions to execute to construct one or more Debian binary packages.

5.3.2. Verwendung innerhalb von Debian

The source package is the foundation of everything in Debian. All Debian packages come from a source package, and each modification in a Debian package is the consequence of a modification made to the source package. The Debian maintainers work with the source package, knowing, however, the consequences of their actions on the binary packages. The fruits of their labors are thus found in the source packages available from Debian: you can easily go back to them and everything stems from them. Kapitel 15, Ein Debian-Paket erstellen contains some examples.
When a new version of a source package arrives on the Debian server, it will then be used by a network of machines of different architectures for compilation on the various architectures supported by Debian.