Basic checks over Debian packages
by (C) João Eriberto Mota Filho <eriberto (a) eriberto pro br>
Creation date: March 26, 2019.
Last update: see the footer.
Bit.ly: http://bit.ly/pkgcheck
Packaging status
- NEW: verify the ITP.
- Adoption: verify the ITA.
Initial check, if not NEW
- Run debdiff over the last and current .dsc file.
- debian/changelog: were registered all changes shown by debdiff?
General checks
- There are previous works in a VCS?
- There are previous NMUs? We need ACKs.
- debian/copyright: all data were updated? (dates, maintainers, etc.). [1]
- debian/patches/: all headers are complete?
- Can debuild command run twice?
- Is uscan working?
- Run spell command over debian/changelog and debian/control. [2]
- Verify the final structure using tree command. [3]
- Are all tests running? Use the autopkgtest. [4]
- There are important files provided by upstream and useful for users not used? (README, TODO, etc.)
[1] The egrep command can be used to check (in upstream place):
$ egrep -sriA25 '(copyright|public dom)' > /tmp/copy $ egrep '(@|\[)' debian/changelog > /tmp/copy2
[2] The spell command will search for spelling errors. You can add new word to a personal dictionary ~/.ispell_default
$ spell debian/changelog | sort -u
[3] You can use tree over generated structure:
$ tree debian/<package-name>
[4] To use autopkgtest (in upstream place):
$ autopkgtest . -- null
Checks in tracker
All checks here are related to http://tracker.debian.org. |
- Verify all itens in action needed.
- Verify the building in builld. Click over log or exp (experimental).
- Verify all opened bugs (Debian and Ubuntu). Try to solve some bugs and close them in debian/changelog.
Final procedures
- Verify again all files inside debian/ directory.
- Run cowbuilder to test the building in a fresh jail. [5][6][7]
- Install and test the final package.
- Update (push) the Git repository (if using it).
- Verify the .changes content before upload to Debian.
[5] To create cowbuilder (outside the jail):
# cowbuilder create
[6] To update cowbuilder:
# cowbuilder update
[7] To use the cowbuilder:
# cowbuilder build /patch/name.dsc