qubes-issues icon indicating copy to clipboard operation
qubes-issues copied to clipboard

Allow for changing the terminal being used in the "qubes.ShowInTerminal" RPC call

Open FijiHasGithub opened this issue 9 months ago • 1 comments

How to file a helpful issue

The problem you're addressing (if any)

Allow for changing the terminal being used in the "qubes.ShowInTerminal" RPC call Currently, it used xterm, which I have stripped from both my regular templates and my disposable templates. This makes it so I can't open a console via a DispVM as it tries to run xterm without success.

The solution you'd like

Maybe using an environment variable such as $TERMINAL, or xdg-open and finally falling back to xterm?

The value to a user, and who that user might be

This would allow users to switch terminal when they want, without it breaking a whole bunch.

Completion criteria checklist

(This section is for developer use only. Please do not modify it.)

FijiHasGithub avatar Apr 27 '24 14:04 FijiHasGithub

This would allow users to switch terminal when they want, without it breaking a whole bunch.

It is possible to switch terminal used in-vm. It is not possible to switch the console terminal as each terminal emulator requires setting a different argument for the geometry, which must be 80x24 to work properly (unless you trigger resizing via some other method. The other options such as setting the shell and command line are terminal emulator specific and the naming of the options may differ.

Letting the user configure their choice of terminal for the console is not a good idea mostly because of the option parsing, but there may be other reasons Qubes OS chose XTerm (less latency, stable etc).

Try to do the console setting for the terminals in qubes-run-terminal, that many users already use and port it to the RPC service qubes.ShowInTerminal, this way you can maintain compatibility with other scripts (time consuming but doable).

ben-grande avatar Apr 29 '24 18:04 ben-grande