Control: affects -1 src:openssh On Tue, Apr 19, 2022 at 12:05:22PM +0900, Hiroyuki YAMAMORI wrote: > When rebuilding rsh-redone, the following message is output and the build > fails. > > dh_installalternatives: error: Alternative "/usr/bin/rsh-redone-rsh" for > "rsh" in debian/rsh-redone-client.alternatives does not exist in > debian/rsh-redone-client or is a directory > make: *** [debian/rules:16: binary] Error 25 > dpkg-buildpackage: error: debian/rules binary subprocess returned exit status > 2 > > > Solved with the following patch. > > --- a/usr/bin/dh_installalternatives > +++ b/usr/bin/dh_installalternatives > @@ -99,7 +99,7 @@ sub _parse_alternative_and_generate_main > if (index($link_name, '/') > -1) { > error(qq{Invalid link name "${link_name}" in > "${alternatives_file}": Must not contain slash}); > } > - if ( ! -l "${tmpdir}/${impl_path}" or -d _) { > + if ( ! -e "${tmpdir}/${impl_path}" or -d _ or ! -r _) { > error(qq{Alternative "${impl_path}" for "${link_name}" in > ${alternatives_file} does not exist in ${tmpdir} or is a directory}); > } > if ($link_name eq $impl_path) {
This also causes openssh to fail to build (see e.g. https://salsa.debian.org/flurb/openssh/-/jobs/2683517). Something like this patch looks reasonable to me, and at any rate the previous code doesn't make sense; it seems to require the potential *target* of the alternative to be a symlink. -- Colin Watson (he/him) [cjwat...@debian.org]