diff options
author | Kirill Chibisov <contact@kchibisov.com> | 2022-10-22 13:17:46 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-22 13:17:46 +0300 |
commit | e3af53c863ee55b2862954f156e168c1e8da26e2 (patch) | |
tree | 0d70745ab1d9d1763d3dc3a8793b15a8abf3440a | |
parent | 62e9d3ab394f3ad104642e964e9034a352d76d9a (diff) | |
download | alacritty-e3af53c863ee55b2862954f156e168c1e8da26e2.tar.gz alacritty-e3af53c863ee55b2862954f156e168c1e8da26e2.zip |
Fix startup failure on macOS with dash as /bin/sh
The dash's exec doesn't have `-a` argument we rely on when running
login shell, so use zsh instead.
Fixes #6426.
-rw-r--r-- | CHANGELOG.md | 1 | ||||
-rw-r--r-- | alacritty_terminal/src/tty/unix.rs | 4 |
2 files changed, 4 insertions, 1 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 3608f2f1..0f2cb848 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - `--help` output for `--class` does not match man pages - Cursor and underlines always being black on very old hardware - Crash when using very low negative `font.offset` +- Startup failure on macOS with default config when system `/bin/sh` is `dash` ## 0.11.0 diff --git a/alacritty_terminal/src/tty/unix.rs b/alacritty_terminal/src/tty/unix.rs index 63da4f9c..2ff657de 100644 --- a/alacritty_terminal/src/tty/unix.rs +++ b/alacritty_terminal/src/tty/unix.rs @@ -143,7 +143,9 @@ fn default_shell_command(pw: &Passwd<'_>) -> Command { // -f: Bypasses authentication for the already-logged-in user. // -l: Skips changing directory to $HOME and prepending '-' to argv[0]. // -p: Preserves the environment. - login_command.args(["-flp", pw.name, "/bin/sh", "-c", &exec]); + // + // XXX: we use zsh here over sh due to `exec -a`. + login_command.args(["-flp", pw.name, "/bin/zsh", "-c", &exec]); login_command } |