Ensure locating libnss* files doesn't fail on merged-usr systems
authorMichael Prokop <mika@grml.org>
Thu, 11 Jul 2019 09:47:20 +0000 (11:47 +0200)
committerMichael Prokop <mika@grml.org>
Thu, 11 Jul 2019 09:50:33 +0000 (11:50 +0200)
commitd189b077107016d0128d4c9d48220b5788291b0b
tree8882624d879c00734639a47ff29b2fd9e4d18b65
parent698d766d09931551b81ec1d16636066728ee0464
Ensure locating libnss* files doesn't fail on merged-usr systems

Since debootstap v1.0.102 it defaults to --merged-usr, creating
/{bin,sbin,lib}/ symlinks pointing to their counterparts in /usr/
Debian/buster provides debootstrap 1.0.114 and therefore defaults to
--merged-usr as well. If the grml-live build environment
is based on Debian/buster we get this as default.

Inside backend/initramfs-tools/live.hook we have:

| for _SHLIB in $(find /lib -name 'libnss_dns.so.*' -o -name 'libnss_files.so.*')
| do
|         copy_exec "${_SHLIB}"
| done

So if /lib is a symlink to /usr/lib (with merged-usr), then the `find
/lib ...` won't find any files (since it doesn't follow the symlink).
This change fixes this behavior.

Development sponsored by Sipwise GmbH.
This is reported as TT#62500 in customer's ticket system.
backend/initramfs-tools/live.hook