[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: bits from the release team: are you ready to skate yet?



Quoting Paul Gevers (2022-10-13 10:00:42)
> Please also consider supporting the nodoc build profile. We are aware
> that nodoc is regularly used in a non-reproducible way (as intended,
> but with this consequence), so checking for correctness of this
> profile may be a bit harder. Ideally, using the profile would just
> make documentation binaries virtually empty.

No. Ideally, using the nodoc profile would make documentation binaries not be
emitted at all. This then also makes checking for correctness a lot easier
because then all binary packages built with the nodoc profile will be
bit-by-bit identical if your source package builds reproducibly.

This can be achieved by adding this to the binary package stanza in d/control:

Package: foo-doc
Architecture: all
Build-Profiles: <!nodoc>

Then, in d/rules you can surround code that creates the foo-doc package with a
conditional like this one:

ifneq (,$(filter foo-doc,$(shell dh_listpackages)))
	# do stuff needed to build foo-doc
endif

Using dh_listpackages you also automatically catch other cases in which foo-doc
might not get built other than the nodoc build profile being active, for
example for an arch:any-only build.

Also, do not forget to add the build dependencies necessary to build foo-doc to
Build-Depends-Indep instead of keeping them in Build-Depends if your foo-doc
package is Architecture:all.

Thanks!

cheers, josch

Attachment: signature.asc
Description: signature


Reply to: