On 10/20/26 11:48 AM, Kirill A. Korinsky wrote:
On Tue, 20 Oct 2026 09:01:00 +0200,
David Uhden Collado <[email protected]> wrote:
Please find attached a small patch improving shell detection on
OpenBSD.
It recognizes ksh as a POSIX-compatible shell and prefers the
base-system /bin/ksh or /bin/sh as the fallback.
This avoids requiring Bash or Zsh for normal command execution.
> > Right now, if I understand code the right way, it expects bash and
falls
back to /bin/sh.
I somehow doubt it will run as expected if you don't give it bash for real.
Why do you need to add ksh here?
++ } else if cfg!(target_os = "openbsd") {
++ // Prefer the platform ksh/sh over bash/zsh when the user shell is
++ // not a recognized explicit choice. An explicit bash/zsh stays.
++ user_default_shell
++ .or_else(|| get_shell(ShellType::Sh))
++ .or_else(|| get_shell(ShellType::Bash))
++ .or_else(|| get_shell(ShellType::Zsh))
FWIW your explanation hasn't said anything about zsh, but here it is.
P.S. I've added run time dependency to bash, it will be included into next
update.