Product SiteDocumentation Site

5.3. Structuur van een Bron Pakket

5.3.1. Vorm

Een bron pakket bestaat meestal uit drie bestanden, een .dsc, een .orig.tar.gz en een .debian.tar.gz (of diff.gz) bestand. Ze laten het maken van binaire pakketten (.deb bestanden zoals hierboven beschreven) van de bron code bestanden van het programma toe, welke in een bepaalde programmeertaal zijn geschreven.
Het .dsc (Debian Source Control) bestand is een kort tekst bestand dat een RFC 2822 header bevat (net zoals het control bestand bestudeert in Paragraaf 5.2.1, “Omschrijving: het control Bestand”) welke het bron pakket omschrijft en aangeeft welke andere bestanden er deel van uitmaken. Het is gesigneerd door de onderhouder, welke de authenticiteit garandeert. Zie Paragraaf 6.5, “Pakket Authenticiteit Controleren” voor meer details over dit onderwerp.

Voorbeeld 5.1. Een .dsc bestand

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 3.0 (quilt)
Source: zim
Binary: zim
Architecture: all
Version: 0.62-3
Maintainer: Emfox Zhou <emfox@debian.org>
Uploaders: Raphaël Hertzog <hertzog@debian.org>
Homepage: http://zim-wiki.org
Standards-Version: 3.9.6
Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/zim.git
Vcs-Git: git://anonscm.debian.org/collab-maint/zim.git
Build-Depends: debhelper (>= 9), xdg-utils, python (>= 2.6.6-3~), libgtk2.0-0 (>= 2.6), python-gtk2, python-xdg
Package-List:
 zim deb x11 optional arch=all
Checksums-Sha1:
 ad8de170826682323c10195b65b9f1243fd75637 1772246 zim_0.62.orig.tar.gz
 a4f70d6f7fb404022c9cc4870a4e62ea3ca08388 14768 zim_0.62-3.debian.tar.xz
Checksums-Sha256:
 19d62aebd2c1a92d84d80720c6c1dcdb779c39a2120468fed01b7f252511bdc2 1772246 zim_0.62.orig.tar.gz
 fc2e827e83897d5e33f152f124802c46c3c01c5158b75a8275a27833f1f6f1de 14768 zim_0.62-3.debian.tar.xz
Files:
 43419efba07f7086168442e3d698287a 1772246 zim_0.62.orig.tar.gz
 725a69663a6c2961f07673ae541298e4 14768 zim_0.62-3.debian.tar.xz

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
Comment: Signed by Raphael Hertzog

iQEcBAEBCAAGBQJUR2jqAAoJEAOIHavrwpq5WFcH/RsdzCHc1oXXxHitU23hEqMj
T6ok29M1UFDJDowMXW75jQ1nT4WPUtvEGygkCHeoO/PvjEvB0sjU8GQlX+N9ddSB
aHfqfAYmVhADNGxrXQT5inZXUa8qGeeq2Sqf6YcWtsnuD56lDbvxkyf/XYopoIEl
oltfl05z/AI+vYsW482YrCz0fxNAKAvkyuPhDebYI8jnKWeAANoqmKpsNc/HYyvT
+ZiA5o57OiGdOKT6XGy3/FiF3dkHiRY8lXW7xdr1BbIgulwl9UmiUNwuxwOYbQO7
edtjiTJqOaFUA0x1zB/XGv5tHr1MjP8naT+kfVoVHTOox51CDbeu5D3DZY4imcY=
=Wtoa
-----END PGP SIGNATURE-----
Merk op dat het bron pakket ook afhankelijkheden (Build-Depends) heeft. Volledig gescheiden van deze van binaire pakketten, omdat ze het nodige gereedschap om de software in kwestie te compileren en haar binaire bestand te maken aangeeft.
Het .orig.tar.gz bestand is een archief dat de bron code zoals voorzien door de originele ontwikkelaar bevat.Debian pakket onderhouders worden gevraagd om deze niet aan te passen om zo de mogelijkheid te hebben om de origine en integriteit van het pakket te controleren (door eenvoudige vergelijking met een checksum) en om de wensen van bepaalde auteurs te respecteren.
Het .debian.tar.gz bestand bevat all de aanpassingen gemaakt door de Debian onderhouder, vooral de toevoeging ven een debian directory die de instructies om een Debian pakket uit te voeren en te construeren bevat.

5.3.2. Gebruik binnen Debian

Het bron pakket is het fundament van alles in Debian. Alle Debian pakketten komen van een bron pakket en iedere aanpassing in een Debian pakket is het gevolg van een aanpassing gemaakt aan het bron pakket. De Debian onderhouders werken met het bron pakket, zich bewust van de gevolgen van hun acties op het binaire pakket. De vruchten van hun arbeid kunnen daarom gevonden worden in het bron pakket beschikbaar vanaf Debian: je kunt er gemakkelijk naar terug gaan en alles stamt er vanaf.
Wanneer er een nieuwe versie van en pakket (bron pakket en één of meer binaire pakketten) op de Debian server aankomt, is het bron pakket het belangrijkste. Inderdaad, het zal dan gebruikt worden door een netwerk van machines van verschillende architecturen voor compilatie op de verschillende architecturen die door Debian ondersteund worden. Het feit dan de ontwikkelaar ook één of meer binaire pakketten voor een bepaalde architectuur (meestal i386 of amd64) is relatief onbelangrijk, omdat deze net zo goed automatisch gegenereerd zou worden.