Solaris 10 and older Solaris' /bin/sh is not POSIX. Using ssh-copy-id fails with the following error: sh: test: argument expected The problem can be solved using double quotes for test -z in the INSTALLKEYS_SH heredoc: - { [ -z \`tail -1c ${AUTH_KEY_FILE} 2>/dev/null\` ] || + { [ -z "\`tail -1c ${AUTH_KEY_FILE} 2>/dev/null\`" ] || The resulting script seems to work for non-existing, empty, and populated ~/.ssh/authorized_keys files. I don't see the double quotes breaking POSIX (although unnecessary). I don't think this is a big issue, just thought you might like to know. BTW it also happens with older versions (before installkeys_sh()).
Please, fill this as a MR to https://gitlab.com/phil_hands/ssh-copy-id
DONE
closing bugs resolved before openssh-8.9