Ubuntu Policy Manual¶
- Authors:
The Debian Policy Mailing List; The Ubuntu Developers Mailing List
- Version:
4.7.3
Abstract¶
This manual describes the policy requirements for the Ubuntu distribution. This includes the structure and contents of the Ubuntu archive and several design issues of the operating system, as well as technical requirements that each package must satisfy to be included in the distribution. It is derived from the Debian Policy Manual and if not stated otherwise, the requirements of that apply to Ubuntu as well.
Copyright notice¶
Copyright © 1996,1997,1998 Ian Jackson and Christian Schwarz.
This file has been modified by Simon Johnsson on Feb 26, 2026.
- Modifications:
Change distribution method from the
ubuntu-policypackage to Ubuntu docs website.Omit section content equal to the Debian Policy Manual, and refer to the Debian Policy Manual instead, noted as “(Shared with Debian, see: Debian Policy Manual) and update Abstract to reflect this change.
Mark chapters and sections different to the Debian Policy Manual with “(Modifies: Debian Policy Manual,
chapter/section)”.Add “Editor’s note:” to areas that are outdated, need clarification, and/or re-review.
Update number of packages in Chapter 2 - The Ubuntu Archive.
Update format version in Section 5.6.16 Format.
This manual is free software; you may redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.
This is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See the GNU General Public License for more details.
A copy of the GNU General Public License is available as
/usr/share/common-licenses/GPL in the Debian GNU/Linux distribution or on the
World Wide Web at the GNU General Public Licence.
Contents¶
Chapters
- 1. About this manual
- 2. The Ubuntu Archive
- 3. Binary Packages
- 4. Source Packages
- 4.1 Standards conformance
- 4.2 Package relationships
- 4.3 Changes to upstream sources
- 4.4 Ubuntu changelog:
debian/changelog - 4.5 Copyright:
debian/copyright - 4.6 Error trapping in makefiles
- 4.7 Time Stamps
- 4.8 Restrictions on objects in source packages
- 4.9 Main building script:
debian/rules - 4.9.1
debian/rulesandDEB_BUILD_OPTIONS - 4.10 Variable substitution in:
debian/substvars - 4.11 Optional upstream source location:
debian/watch - 4.12 Generated files list:
debian/files - 4.13 Convenience copies of code
- 4.14 Source package handling:
debian/README.source
- 5. Control files and their fields
- 5.1 Syntax of control files
- 5.2 Source package control files –
debian/control - 5.3 Binary package control files –
DEBIAN/control - 5.4 Debian source control files –
.dsc - 5.5 Debian upload changes control files –
.changes - 5.6 List of fields
- 5.6.1
Source - 5.6.2
Maintainer - 5.6.3
Uploaders - 5.6.4
Changed-By - 5.6.5
Section - 5.6.6
Priority - 5.6.7
Package - 5.6.8
Architecture - 5.6.9
Essential - 5.6.10 Package interrelationship fields:
Depends,Pre-Depends,Recommends,Suggests,Breaks,Conflicts,Provides,Replaces,Enhances - 5.6.11
Standards-Version - 5.6.12
Version - 5.6.13
Description - 5.6.14
Distribution - 5.6.15
Date - 5.6.16
Format - 5.6.17
Urgency - 5.6.18
Changes - 5.6.19
Binary - 5.6.20
Installed-Size - 5.6.21
Files - 5.6.22
Closes - 5.6.23
Launchpad-Bugs-Fixed - 5.6.24
Homepage
- 5.6.1
- 5.7 User-defined fields
- 6. Package maintainer scripts and installation procedure
- 7. Declaring relationships between packages
- 7.1 Syntax of relationship fields
- 7.2 Binary Dependencies -
Depends,Recommends,Suggests,Enhances, andPre-Depends - 7.3 Packages which break other packages -
Breaks - 7.4 Conflicting binary packages -
Conflicts - 7.5 Virtual packages -
Provides - 7.6 Replacing files from other packages -
Replaces - 7.7 Declaring relationships between source packages -
Build-Depends,Build-Depends-Indep,Build-Conflicts,Build-Conflicts-Indep
- 8. Shared libraries
- 9. The Operating System
- 10. Files
- 11. Customized programs
- 11.1 Architecture specification strings
- 11.2 Daemons
- 11.3 Using pseudo-ttys and modifying wtmp, utmp and lastlog
- 11.4 Editors and pagers
- 11.5 Web servers and applications
- 11.6 Mail transport, delivery and user agents
- 11.7 News system configuration
- 11.8 Programs for the X Window System
- 11.8.1 Providing X support and package priorities
- 11.8.2 Packages providing an X server
- 11.8.3 Packages providing a terminal emulator
- 11.8.4 Packages providing a window manager
- 11.8.5 Packages providing fonts
- 11.8.6 Application default files
- 11.8.7 Installation directory issues
- 11.8.8 The OSF/Motif and OpenMotif libraries
- 11.8.9 Icon caching
- 11.9 Perl programs and modules
- 11.10 Emacs lisp programs
- 11.11 Games
- 12. Documentation
Appendices