Build integration

3.4. Build integration#

During package build time univention-install-config-registry needs to be called. This should be done using the sequence ucr in debian/rules:

%:
    dh $@ --with ucr

This invocation copies the referenced files to the right location in the binary package staging area debian/package/etc/univention/. Internally univention-install-config-registry-info and univention-install-service-info are invoked, which should not be called explicitly anymore.

The calls also insert code into the files debian/package.preinst.debhelper, debian/package.postinst.debhelper and debian/package.prerm.debhelper to register and de-register the templates. Therefore it’s important that customized maintainer scripts use the #DEBHELPER# marker, so that the generated code gets inserted into the corresponding preinst, postinst and prerm files of the generated binary package.

The invocation also adds univention-config to misc:Depends to ensure that the package is available during package configuration time. Therefore it’s important that ${misc:Depends} is used in the Depends line of the package section in the debian/control file.

Package: ...
Depends: ..., ${misc:Depends}, ...