#1127452 debhelper: dh_missing falsely reports etc config file is not installed

#1127452#5
Date:
2026-02-09 01:55:58 UTC
From:
To:
xtensor 0.27.1-1 provides new config files
  etc/xeus-cpp/tags.d/xtensor.json
  usr/share/xeus-cpp/tagfiles/xtensor.tag

I added them to xtensor's debian/libxtensor-dev.install, and
dh_installs them.

But the build fails with dh_missing reporting:

dh_missing: warning: etc/xeus-cpp/tags.d/xtensor.json exists in debian/tmp but is not installed to anywhere
dh_missing: warning: A file with an equivalent path was found but did not get installed. Note that dh_install prefers paths in ./ over paths in ./debian/tmp.
dh_missing: error: missing files, aborting
	The following debhelper tools have reported what they installed (with files per package)
	 * dh_install: libxtensor-dev (6), xtensor-dev (0), xtensor-doc (0)
	 * dh_installdocs: libxtensor-dev (0), xtensor-dev (0), xtensor-doc (0)
	If the missing files are installed by another tool, please file a bug against it.
	When filing the report, if the tool is not part of debhelper itself, please reference the
	"Logging helpers and dh_missing" section from the "PROGRAMMING" guide for debhelper (10.6.3+).
	  (in the debhelper package: /usr/share/doc/debhelper/PROGRAMMING.md.gz)
	Be sure to test with dpkg-buildpackage -A/-B as the results may vary when only a subset is built
	If the omission is intentional or no other helper can take care of this consider adding the
	paths to debian/not-installed.
make: *** [debian/rules:39: binary] Error 255
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2


But etc/xeus-cpp/tags.d/xtensor.json was indeed installed by dh_install:

$ ls -l debian/*/etc/xeus-cpp/tags.d/xtensor.json
-rw-r--r-- 1 dd dd 85 Feb  9 02:46 debian/libxtensor-dev/etc/xeus-cpp/tags.d/xtensor.json
-rw-r--r-- 1 dd dd 85 Feb  9 02:46 debian/tmp/etc/xeus-cpp/tags.d/xtensor.json


So dh_missing is giving a false error.

If I prepend ./ in libxtensor-dev.install, as
  ./etc/xeus-cpp/tags.d/xtensor.json
then dh_missing still fails (and dh_install still works)

I can work around the bug by prepending debian/tmp in
libxtensor-dev.install, as

  debian/tmp/etc/xeus-cpp/tags.d/xtensor.json

But this makes the line inconsistent with the other lines,
which are using usr/...