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.
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.
--
wbr, Kirill