Basic checks over Debian packages: mudanças entre as edições

De Eriberto Wiki
Ir para navegação Ir para pesquisar
Sem resumo de edição
Linha 37: Linha 37:
* Run spell command over debian/changelog and debian/control. [2]
* Run spell command over debian/changelog and debian/control. [2]
* Verify the final structure using tree command. [3]
* Verify the final structure using tree command. [3]
* Check if some file doesn't have an EOF. (use tail -n1 debian/*)
* If using Salsa, is the CI for Salsa enabled?
* If using Salsa, is the CI for Salsa enabled?
* Are all tests running? Use the autopkgtest. [4] (not needed if using Salsa)
* Has a Debian CI test been created?
* Are all CI tests running? Use the autopkgtest. [4] (not needed if using Salsa)
* There are important files provided by upstream and useful for users not used? (README, TODO, etc.)
* There are important files provided by upstream and useful for users not used? (README, TODO, etc.)



Edição das 12h16min de 16 de junho de 2023

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 using apt search.
    • Verify using wnpp-check.
    • Make an ITP.
    • Is changelog closing the ITP?
    • Is changelog set to experimental?
  • Adoption:
    • Verify if is really orphan.
    • Make an ITA.
    • Is changelog closing the ITA?
  • NMU
    • Is there a maintainer for the package?
    • Only essential changes?
    • Is changelog closing the bug?
  • QA
    • Is the package orphan?
    • Is the "QA upload" set?

Initial check

  • For *-1 revisions, diff between sources (package x upstream).
  • NO-GIT: Run debdiff over the last and current .dsc file.
  • GIT: git diff from last debian/<revision> tag.
  • debian/changelog: were registered all changes shown by debdiff?

General checks

  • There are previous works in a VCS?
  • debian/copyright: all data were updated? (dates, maintainers, etc.). [1]
  • debian/patches/: all headers are complete?
  • Is possible to run debuild command twice?
  • Is uscan working? (verify com uscan-check)
  • Run spell command over debian/changelog and debian/control. [2]
  • Verify the final structure using tree command. [3]
  • Check if some file doesn't have an EOF. (use tail -n1 debian/*)
  • If using Salsa, is the CI for Salsa enabled?
  • Has a Debian CI test been created?
  • Are all CI tests running? Use the autopkgtest. [4] (not needed if using Salsa)
  • 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 words to a personal dictionary at ~/.ispell_default

$ spell debian/changelog | sort -u

[3] You may 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 https://tracker.debian.org.
  • Verify all itens in action needed.
  • Verify the building in buildd. 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] (not needed if using Salsa)
  • Run debidiff between .deb (old and current). (or use git diff)
  • Install and test the final package.
  • Update (push) the Git repository (if using Salsa).
  • 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