Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: improve terminal support #142

Open
flexiondotorg opened this issue Jun 27, 2024 · 0 comments
Open

feat: improve terminal support #142

flexiondotorg opened this issue Jun 27, 2024 · 0 comments
Labels
enhancement New feature or request

Comments

@flexiondotorg
Copy link
Member

flexiondotorg commented Jun 27, 2024

There are two options:

  • Improve enumeration of installed terminals
  • Bundle a simple terminal emulator in Quickgui

Terminal enumeration

Quickgui should support discovering more terminals and make an effort to launch the user's preferred terminal when connecting to VMs via SSH. This should work on Linux and macOS.

Current Quickgui will evaluate x-terminal-emulator (specific to Debian and Ubuntu) and fallback to hunting the PATH for a supported terminal.

This reply to the How to set Blackbox as default terminal emulator question on the Nix Discourse is the best summary of the situation regarding a standardised way of expressing a terminal preference:

Until the Terminal intent specification 65 is accepted and widely implemented, there is not really a meaningful way to set up default terminal emulator.

In GNOME 44, GLib gained the ability to run xdg-terminal-exec 38, which despite the name is not actually standardized 9. You could package xdg-terminal-exec or just create xdg-terminal-exec as a symlink to blackbox and add that to PATH.

But that mostly just affects what terminal emulator will terminal programs run in. It will not affect for example Nautilus, which has Console hardcoded 14. You will also want GitHub - Stunkymonkey/nautilus-open-any-terminal 61.

nautilus_open_any_terminal.py has comprehensive terminal support to use as reference.

Bundle a terminal

Alternatively, we ship a simple terminal in Quickgui that uses https://pub.dev/packages/xterm. I prefer this option, and it might help with improve SSH support: https://github.com/TerminalStudio/xterm.dart/blob/master/example/lib/ssh.dart

@flexiondotorg flexiondotorg added the enhancement New feature or request label Jun 27, 2024
@flexiondotorg flexiondotorg changed the title feat: add support for more terminals feat: improve terminal support Jun 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant