Check-Script: control-file Author: Marc 'HE' Brockschmidt Abbrev: dctl Type: source Unpack-Level: 1 Needs-Info: debfiles Info: This script checks debian/control files in source packages Tag: debian-control-file-uses-obsolete-national-encoding Type: error Info: The Debian control file should be valid UTF-8, an encoding of the Unicode character set. . There are many ways to convert a control from an obsoleted encoding like ISO-8859-1; you may for example use "iconv" like: . $ iconv -f ISO-8859-1 -t UTF-8 control > control.new $ mv control.new control Tag: build-info-in-binary-control-file-section Type: error Ref: policy 5.2 Info: The control file has a Build-Depends, Build-Depends-Indep, Build-Conflicts, or Build-Conflicts-Indep field in a binary section. These specify source package relationships, and should be in the source section of the control file. Tag: debian-control-with-duplicate-fields Type: error Info: One of the paragraphs of your debian/control contains the same field more than once. This can lead to an unexpected behaviour of dpkg and apt. Tag: debian-control-file-is-a-symlink Type: warning Info: The debian/control file is a symlink rather than a regular file. Using symlinks for required source package files is unnecessary and makes package checking and manipulation more difficult. If the control file should be available in the source package under multiple names, make debian/control the real file and the other names symlinks to it. Tag: no-section-field-for-source Type: warning Ref: policy 5.2 Info: The package does not have a "Section:" field in the source package section of its control file. The Section field is required for source packages at the request of the Debian ftp-masters. Tag: section-category-mismatch Type: error Info: The debian/control file places the indicated binary package in a different archive category (main, contrib, non-free) than its source package or other binary packages built from the same source package. The source package and any binary packages it builds must be in the same category of the archive. A source package in main may only build binary packages in main, a source package in non-free may only build binary packages in non-free, and so forth. Tag: xs-vcs-header-in-debian-control Type: info Info: There is an XS-Vcs-* field in the debian/control file. As of dpkg 1.14.6, the XS- prefix is no longer necessary. dpkg now recognizes these headers and handles them correctly. Consider removing the XS- prefix for this field. Tag: stronger-dependency-implies-weaker Type: warning Ref: policy 7.2 Info: In the debian/control stanza for the given package, a stronger dependency field implies one of the dependencies in a weaker dependency field. In other words, the Depends field of the package requires that one of the packages listed in Recommends or Suggests be installed, or a package is listed in Recommends as well as Suggests. . Current versions of dpkg-gencontrol will silently fix this problem by removing the weaker dependency, but it may indicate a more subtle bug (misspelling or forgetting to remove the stronger dependency when it was moved to the weaker field). Tag: package-depends-on-itself Type: warning Ref: policy 7.2 Info: The given package declares a dependency on itself in its debian/control stanza. Current versions of dpkg-gencontrol will silently fix this problem by removing the dependency, but it may indicate a more subtle bug (misspelling or cutting and pasting the wrong package name).