elementary / elementary/terminal

Setting io.elementary.terminal.settings.shell with dconf to a value crashes Gala

Open
#869 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Vala
Stars
428
Forks
104
Avg merge
1d 54m
Merged PRs (30d)
2

Description

### What Happened?

I tried searching for similar issues in the issue tracker, and discovered only #703 that seemed even remotely relevant, which discusses using a "login shell" _e.g._, having the shell that Terminal runs be `/bin/bash --login` or similar, so that the `.profile` is read for each new terminal.

Doing this with, for example, `dconf-editor`, causes Terminal to load an empty tab, which, when closed, crashes the whole windowing system and logs you out.

### Steps to Reproduce

1. run `dconf write io/elementary/terminal/settings/shell "'/usr/bin/bash -l'"` or use `dconf-editor` to perform the same change
2. run Terminal; note that the tab title is a single `-`, but no shell loads in the content area of the window
3. close this tab
4. Gala crashes and restarts, taking open apps with it; if you repeat the steps above, Gala will crash, then display a "sad Mac"-type dialog that tells you you need to log out, and the only option is "OK"

So far, this is repeatable across multiple login sessions, and with a fresh Horus VM (7.1, with all .deb and Flatpak updates applied).

### Expected Behavior

The dconf setting causes Terminal to run a login shell (_i.e._ reading `~/.profile`), similar to how many other terminal emulators have a "Run as login shell" checkbox in their settings.

To be clear, I'm perfectly fine with there being no UI (except for dconf) for this. But the dconf setting is present and documented, so the expectation I had as a user is that it's a "supported" behavior for Terminal.

### OS Version

7.1 (Horus)

### Session Type

Classic Session (X11, This is the default)

### Software Version

Older release (I have not run all updates)

### Log Output

```shell
(forthcoming)
```

### Hardware Info

Mid-2015 MacBook Air, but this has been tested on different hardware and in a VM, so not hardware-related.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.