Table Of ContentDebian Developer’s Reference
Developer’sReferenceTeam,AndreasBarth,Adam
DiCarlo,RaphaëlHertzog,ChristianSchwarz,and
IanJackson
June13,2008
DebianDeveloper’sReference
byDeveloper’sReferenceTeam,AndreasBarth,AdamDiCarlo,RaphaëlHertzog,ChristianSchwarz,
andIanJackson
Published2008-06-13
Copyright©2004,2005,2006,2007AndreasBarth
Copyright©1998,1999,2000,2001,2002,2003AdamDiCarlo
Copyright©2002,2003RaphaëlHertzog
Copyright©1997,1998ChristianSchwarz
Thismanualisfreesoftware; youmayredistributeitand/ormodifyitunderthetermsoftheGNU
General Public License as published by the Free Software Foundation; either version 2, or (at your
option)anylaterversion.
Thisisdistributedinthehopethatitwillbeuseful,butwithoutanywarranty;withouteventheimplied
warrantyofmerchantabilityorfitnessforaparticularpurpose. SeetheGNUGeneralPublicLicense
formoredetails.
AcopyoftheGNUGeneralPublicLicenseisavailableas/usr/share/common-licenses/GPLin
the Debian GNU/Linux distribution or on the World Wide Web at the GNU web site. You can also
obtainitbywritingtotheFreeSoftwareFoundation,Inc.,51FranklinStreet,FifthFloor,Boston,MA
02110-1301,USA.
Ifyouwanttoprintthisreference,youshouldusethepdfversion.ThispageisalsoavailableinFrench.
ii
Contents
1 ScopeofThisDocument 1
2 ApplyingtoBecomeaMaintainer 3
2.1 Gettingstarted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 Debianmentorsandsponsors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3 RegisteringasaDebiandeveloper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3 DebianDeveloper’sDuties 7
3.1 MaintainingyourDebianinformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2 Maintainingyourpublickey. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.3 Voting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.4 Goingonvacationgracefully . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.5 Coordinationwithupstreamdevelopers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.6 Managingrelease-criticalbugs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.7 Retiring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4 ResourcesforDebianDevelopers 11
4.1 Mailinglists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.1.1 Basicrulesforuse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.1.2 Coredevelopmentmailinglists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.1.3 Speciallists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.1.4 Requestingnewdevelopment-relatedlists . . . . . . . . . . . . . . . . . . . . . . . 12
4.2 IRCchannels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.3 Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.4 Debianmachines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.4.1 Thebugsserver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.4.2 Theftp-masterserver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.4.3 Thewww-masterserver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.4.4 Thepeoplewebserver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.4.5 TheVCSservers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.4.6 chrootstodifferentdistributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.5 TheDevelopersDatabase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.6 TheDebianarchive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.6.1 Sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.6.2 Architectures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.6.3 Packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.6.4 Distributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.6.4.1 Stable,testing,andunstable . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.6.4.2 Moreinformationaboutthetestingdistribution . . . . . . . . . . . . . . . 18
4.6.4.3 Experimental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.6.5 Releasecodenames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.7 Debianmirrors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.8 TheIncomingsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.9 Packageinformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.9.1 Ontheweb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.9.2 Thedaklsutility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.10 ThePackageTrackingSystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.10.1 ThePTSemailinterface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.10.2 FilteringPTSmails . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.10.3 ForwardingVCScommitsinthePTS . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.10.4 ThePTSwebinterface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.11 Developer’spackagesoverview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.12 Debian’sGForgeinstallation: Alioth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.13 GoodiesforDevelopers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
iii
CONTENTS
4.13.1 LWNSubscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5 ManagingPackages 25
5.1 Newpackages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.2 Recordingchangesinthepackage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
5.3 Testingthepackage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
5.4 Layoutofthesourcepackage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
5.5 Pickingadistribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
5.5.1 Specialcase: uploadstothestableandoldstabledistributions . . . . . . . . . 27
5.5.2 Specialcase: uploadstotesting/testing-proposed-updates . . . . . . . . 28
5.6 Uploadingapackage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5.6.1 Uploadingtoftp-master . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5.6.2 Delayeduploads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5.6.3 Securityuploads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5.6.4 Otheruploadqueues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5.6.5 Notificationthatanewpackagehasbeeninstalled . . . . . . . . . . . . . . . . . . . 29
5.7 Specifyingthepackagesection,subsectionandpriority . . . . . . . . . . . . . . . . . . . . 29
5.8 Handlingbugs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.8.1 Monitoringbugs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.8.2 Respondingtobugs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.8.3 Bughousekeeping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.8.4 Whenbugsareclosedbynewuploads . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.8.5 Handlingsecurity-relatedbugs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
5.8.5.1 Confidentiality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
5.8.5.2 SecurityAdvisories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.8.5.3 Preparingpackagestoaddresssecurityissues . . . . . . . . . . . . . . . . 33
5.8.5.4 Uploadingthefixedpackage . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5.9 Moving,removing,renaming,adopting,andorphaningpackages . . . . . . . . . . . . . . 35
5.9.1 Movingpackages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.9.2 Removingpackages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.9.2.1 RemovingpackagesfromIncoming . . . . . . . . . . . . . . . . . . . . . 36
5.9.3 Replacingorrenamingpackages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.9.4 Orphaningapackage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.9.5 Adoptingapackage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.10 Portingandbeingported. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.10.1 Beingkindtoporters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.10.2 Guidelinesforporteruploads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.10.2.1 Recompilationorbinary-onlyNMU. . . . . . . . . . . . . . . . . . . . . . 38
5.10.2.2 WhentodoasourceNMUifyouareaporter . . . . . . . . . . . . . . . . 39
5.10.3 Portinginfrastructureandautomation . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.10.3.1 Mailinglistsandwebpages . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.10.3.2 Portertools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.10.3.3 wanna-build . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.10.4 Whenyourpackageisnotportable . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.11 Non-MaintainerUploads(NMUs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.11.1 HowtodoaNMU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.11.2 NMUversionnumbering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.11.3 SourceNMUsmusthaveanewchangelogentry . . . . . . . . . . . . . . . . . . . . 42
5.11.4 SourceNMUsandtheBugTrackingSystem . . . . . . . . . . . . . . . . . . . . . . 42
5.11.5 BuildingsourceNMUs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.11.6 AcknowledginganNMU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.11.7 NMUvsQAuploads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.11.8 WhocandoanNMU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.11.9 Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.12 Collaborativemaintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.13 Thetestingdistribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.13.1 Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.13.2 Updatesfromunstable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.13.2.1 out-of-date . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
iv
CONTENTS
5.13.2.2 Removalsfromtesting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.13.2.3 circulardependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.13.2.4 influenceofpackageintesting . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.13.2.5 details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.13.3 Directupdatestotesting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.13.4 Frequentlyaskedquestions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.13.4.1 Whatarerelease-criticalbugs,andhowdotheygetcounted? . . . . . . . 47
5.13.4.2 Howcouldinstallingapackageintotestingpossiblybreakotherpack-
ages? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6 BestPackagingPractices 49
6.1 Bestpracticesfordebian/rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
6.1.1 Helperscripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
6.1.2 Separatingyourpatchesintomultiplefiles . . . . . . . . . . . . . . . . . . . . . . . 50
6.1.3 Multiplebinarypackages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
6.2 Bestpracticesfordebian/control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
6.2.1 Generalguidelinesforpackagedescriptions . . . . . . . . . . . . . . . . . . . . . . 50
6.2.2 Thepackagesynopsis,orshortdescription . . . . . . . . . . . . . . . . . . . . . . . 51
6.2.3 Thelongdescription . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
6.2.4 Upstreamhomepage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.2.5 VersionControlSystemlocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.2.5.1 Vcs-Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.2.5.2 Vcs-* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.3 Bestpracticesfordebian/changelog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.3.1 Writingusefulchangelogentries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.3.2 Commonmisconceptionsaboutchangelogentries . . . . . . . . . . . . . . . . . . . 53
6.3.3 Commonerrorsinchangelogentries . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
6.3.4 SupplementingchangelogswithNEWS.Debianfiles. . . . . . . . . . . . . . . . . . 54
6.4 Bestpracticesformaintainerscripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
6.5 Configurationmanagementwithdebconf . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.5.1 Donotabusedebconf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.5.2 Generalrecommendationsforauthorsandtranslators. . . . . . . . . . . . . . . . . 55
6.5.2.1 WritecorrectEnglish . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.5.2.2 Bekindtotranslators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6.5.2.3 Unfuzzycompletetranslationswhencorrectingtyposandspelling . . . 56
6.5.2.4 Donotmakeassumptionsaboutinterfaces . . . . . . . . . . . . . . . . . . 56
6.5.2.5 Donotusefirstperson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.2.6 Begenderneutral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.3 Templatesfieldsdefinition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.3.1 Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.3.1.1 string: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.3.1.2 password: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.3.1.3 boolean:. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.3.1.4 select: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.3.1.5 multiselect: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.3.1.6 note: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.3.1.7 text: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.3.1.8 error: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.5.3.2 Description: shortandextendeddescription . . . . . . . . . . . . . . . . . 57
6.5.3.3 Choices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.5.3.4 Default . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.5.4 Templatesfieldsspecificstyleguide . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.5.4.1 Typefield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.5.4.2 Descriptionfield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.5.4.2.1 String/passwordtemplates . . . . . . . . . . . . . . . . . . . . . 58
6.5.4.2.2 Booleantemplates . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.5.4.2.3 Select/Multiselect . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.5.4.2.4 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
6.5.4.3 Choicesfield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
v
CONTENTS
6.5.4.4 Defaultfield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
6.5.4.5 Defaultfield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
6.6 Internationalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
6.6.1 Handlingdebconftranslations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
6.6.2 Internationalizeddocumentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
6.7 Commonpackagingsituations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
6.7.1 Packagesusingautoconf/automake . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
6.7.2 Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
6.7.3 Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
6.7.4 Specifictypesofpackages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.7.5 Architecture-independentdata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.7.6 Needingacertainlocaleduringbuild . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.7.7 Maketransitionpackagesdeborphancompliant . . . . . . . . . . . . . . . . . . . . 61
6.7.8 Bestpracticesfororig.tar.gzfiles . . . . . . . . . . . . . . . . . . . . . . . . . . 62
6.7.8.1 Pristinesource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
6.7.8.2 Repackagedupstreamsource . . . . . . . . . . . . . . . . . . . . . . . . . 62
6.7.8.3 Changingbinaryfilesindiff.gz. . . . . . . . . . . . . . . . . . . . . . . 63
6.7.9 Bestpracticesfordebugpackages . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
7 BeyondPackaging 65
7.1 Bugreporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
7.1.1 Reportinglotsofbugsatonce(massbugfiling) . . . . . . . . . . . . . . . . . . . . 65
7.2 QualityAssuranceeffort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
7.2.1 Dailywork. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
7.2.2 Bugsquashingparties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
7.3 Contactingothermaintainers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
7.4 Dealingwithinactiveand/orunreachablemaintainers . . . . . . . . . . . . . . . . . . . . 66
7.5 InteractingwithprospectiveDebiandevelopers . . . . . . . . . . . . . . . . . . . . . . . . 67
7.5.1 Sponsoringpackages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
7.5.2 Managingsponsoredpackages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
7.5.3 Advocatingnewdevelopers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
7.5.4 Handlingnewmaintainerapplications . . . . . . . . . . . . . . . . . . . . . . . . . 68
8 Internationalizing,translating,beinginternationalizedandbeingtranslated 69
8.1 HowtranslationsarehandledwithinDebian . . . . . . . . . . . . . . . . . . . . . . . . . . 69
8.2 I18N&L10NFAQformaintainers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
8.2.1 Howtogetagiventexttranslated . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
8.2.2 Howtogetagiventranslationreviewed . . . . . . . . . . . . . . . . . . . . . . . . 70
8.2.3 Howtogetagiventranslationupdated . . . . . . . . . . . . . . . . . . . . . . . . . 70
8.2.4 Howtohandleabugreportconcerningatranslation . . . . . . . . . . . . . . . . . 70
8.3 I18N&L10NFAQfortranslators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
8.3.1 Howtohelpthetranslationeffort . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
8.3.2 Howtoprovideatranslationforinclusioninapackage . . . . . . . . . . . . . . . . 71
8.4 Bestcurrentpracticeconcerningl10n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
A OverviewofDebianMaintainerTools 73
A.1 Coretools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
A.1.1 dpkg-dev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
A.1.2 debconf. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
A.1.3 fakeroot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
A.2 Packagelinttools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
A.2.1 lintian. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
A.2.2 debdiff. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
A.3 Helpersfordebian/rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
A.3.1 debhelper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
A.3.2 debmake. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
A.3.3 dh-make. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
A.3.4 yada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
A.3.5 equivs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
vi
CONTENTS
A.4 Packagebuilders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
A.4.1 cvs-buildpackage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
A.4.2 debootstrap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
A.4.3 pbuilder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
A.4.4 sbuild . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
A.5 Packageuploaders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
A.5.1 dupload. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
A.5.2 dput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
A.5.3 dcut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
A.6 Maintenanceautomation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
A.6.1 devscripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
A.6.2 autotools-dev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
A.6.3 dpkg-repack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
A.6.4 alien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
A.6.5 debsums. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
A.6.6 dpkg-dev-el . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
A.6.7 dpkg-depcheck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
A.7 Portingtools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
A.7.1 quinn-diff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
A.7.2 dpkg-cross . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
A.8 Documentationandinformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
A.8.1 debiandoc-sgml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
A.8.2 debian-keyring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
A.8.3 debian-maintainers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
A.8.4 debview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
vii
Chapter 1
Scope of This Document
Thepurposeofthisdocumentistoprovideanoverviewoftherecommendedproceduresandtheavail-
ableresourcesforDebiandevelopers.
The procedures discussed within include how to become a maintainer (Chapter 2 ); how to create
newpackages(Section5.1)andhowtouploadpackages(Section5.6);howtohandlebugreports(Sec-
tion5.8);howtomove,remove,ororphanpackages(Section5.9);howtoportpackages(Section5.10);
andhowandwhentodointerimreleasesofothermaintainers’packages(Section5.11).
The resources discussed in this reference include the mailing lists (Section 4.1 ) and servers (Sec-
tion4.4); adiscussionofthestructureoftheDebianarchive(Section4.6); explanationofthedifferent
servers which accept package uploads (Section 5.6.1 ); and a discussion of resources which can help
maintainerswiththequalityoftheirpackages(AppendixA).
It should be clear that this reference does not discuss the technical details of Debian packages nor
how to generate them. Nor does this reference detail the standards to which Debian software must
comply. AllofsuchinformationcanbefoundintheDebianPolicyManual.
Furthermore, this document is not an expression of formal policy. It contains documentation for the
Debian system and generally agreed-upon best practices. Thus, it is not what is called a “normative”
document.
1