Debian New Maintainers' Guide

version 1.2.53

2022-10-08 03:52:48 UTC


Table of Contents

1. Getting started The Right Way
1.1. Social dynamics of Debian
1.2. Programs needed for development
1.3. Documentation needed for development
1.4. Where to ask for help
2. First steps
2.1. Debian package building workflow
2.2. Choose your program
2.3. Get the program, and try it out
2.4. Simple build systems
2.5. Popular portable build systems
2.6. Package name and version
2.7. Setting up dh_make
2.8. Initial non-native Debian package
3. Modifying the source
3.1. Setting up quilt
3.2. Fixing upstream bugs
3.3. Installation of files to their destination
3.4. Differing libraries
4. Required files under the debian directory
4.1. control
4.2. copyright
4.3. changelog
4.4. rules
4.4.1. Targets of the rules file
4.4.2. Default rules file
4.4.3. Customization of rules file
5. Other files under the debian directory
5.1. README.Debian
5.2. compat
5.3. conffiles
5.4. package.cron.*
5.5. dirs
5.6. package.doc-base
5.7. docs
5.8. emacsen-*
5.9. package.examples
5.10. package.init and package.default
5.11. install
5.12. package.info
5.13. package.links
5.14. {package.,source/}lintian-overrides
5.15. manpage.*
5.15.1. manpage.1.ex
5.15.2. manpage.sgml.ex
5.15.3. manpage.xml.ex
5.16. package.manpages
5.17. NEWS
5.18. {pre,post}{inst,rm}
5.19. package.symbols
5.20. TODO
5.21. watch
5.22. source/format
5.23. source/local-options
5.24. source/options
5.25. patches/*
6. Building the package
6.1. Complete (re)build
6.2. Autobuilder
6.3. debuild command
6.4. pbuilder package
6.5. git-buildpackage command and similar
6.6. Quick rebuild
6.7. Command hierarchy
7. Checking the package for errors
7.1. Suspicious changes
7.2. Verifying a package's installation
7.3. Verifying a package's maintainer scripts
7.4. Using lintian
7.5. The debc command
7.6. The debdiff command
7.7. The interdiff command
7.8. The mc command
8. Updating the package
8.1. New Debian revision
8.2. Inspection of the new upstream release
8.3. New upstream release
8.4. Updating the packaging style
8.5. UTF-8 conversion
8.6. Reminders for updating packages
9. Uploading the package
9.1. Uploading to the Debian archive
9.2. Including orig.tar.gz for upload
9.3. Skipped uploads
A. Advanced packaging
A.1. Shared libraries
A.2. Managing debian/package.symbols
A.3. Multiarch
A.4. Building a shared library package
A.5. Native Debian package