DH_COQ(1)

πŸ’– DH_COQ(1) β€” bestie edition πŸ’–

okay so this is dh_coq, straight outta the User Contributed Perl Documentation section of the manual, and it's about to be your new fave little debhelper gremlin. buckle up πŸŽ€


✨ NAME ✨

dh_coq β€” she computes Coq packages provides, and partial dependencies. that's it, that's the job, and she does it flawlessly πŸ’…


🌸 SYNOPSIS 🌸

dh_coq [debhelper options]

literally just that. she takes the standard debhelper options and nothing else, no cap.


πŸ¦‹ DESCRIPTION πŸ¦‹

so dh_coq is a debhelper program and her whole moment is being responsible for filling in the ${coq:Provides} and ${coq:Depends} substitutions, and then adding them to the substvars files. iconic behavior honestly ✨

she only acts on one single type of binary package: the ones shipping Coq theories. those are usually named libcoq-XXXX, BUT β€” and this is the important part, bestie, do not get it twisted πŸ™ˆ β€” she does not touch libcoq-XXX-ocaml and she does not touch libcoq-XXX-ocaml-dev. those are OCaml library packages and they're managed by dh_ocaml. different girl, different job, we respect the division of labor πŸ’œ

on the packages she does take responsibility for, she's gonna go looking at the Coq compiled files and compute a checksum. that checksum gets stored in the registry over in /var/lib/coq/md5sums/, and already that lets you say the current package provides a checksummed-versioned virtual package. then the build-depends get scanned, their checksums get retrieved, and boom β€” now the current package also depends on checksummed virtual packages. she ate πŸ“

now, why all this setup? why the checksum drama? because without the checksum, with just dependencies on libcoq-XXX, ABI breakage can happen 😭 because a new libcoq-XXX won't be seen as incompatible, so it'll get installed and then trigger incoherent assumptions errors. not cute. but with fully checksummed packages, apt-get will not upgrade anything until all packages have migrated to the new ABI. queen behavior, honestly πŸ‘‘

and one more thing before you go, and it's lowkey crucial: the dependencies are not extracted automatically from the compiled project. they come from the build-depends of the built package. so it is crucial that those are accurate, fr fr. no vibes-based dependency lists, please πŸ™


πŸŽ€ FILES πŸŽ€

  • debian/libcoq-XXX.volist β€” by default, the list of Coq compiled files shipped by your package is automatically computed ✨ but if you need to override that, this file makes it possible to fix the list. just know that files are considered relative to the package build directory 🫢

πŸ‘‘ SEE ALSO πŸ‘‘

this program is a part of debhelper πŸ’–


🌈 AUTHORS 🌈

Julien Puydt <jpuydt@debian.org> β€” thank you for your service, legend πŸ«‘πŸ’


and that's the whole page, bestie!! go forth and checksum responsibly πŸ’… this was perl v5.42.3, dated 2026-08-25, mwah πŸ˜˜πŸ’–βœ¨

πŸ“¦ where this page comes from