Many years ago I created cli2gui library, which open terminal window for application linked with it. This window will be opened only if necessary, so in cases of output disappearing or input from nowhere. Nobody uses it.
I decided to mark weight of responsibility from devel to os vendor or user. I create project, which autodetect app is gui or console and allow to click “run a terminal window for this console app”. In fact, to detection, we ran application (at WXConsoleSpawner start) with attached new pseudoterminal to it output/input. We also searching for Unix/named socket pointing to wayland compositor in /proc/%n/fd . Currently, only console and wayland applications are supported. At current stage, we have only limited terminal support.
https://www.youtube.com/watch?v=Ed6oAI3RsyE
https://forum.kde.org/viewtopic.php?f=304&t=171864https://sourceforge.net/projects/wxconsolespawner/
For beginner it is very important project. Newbie often do not known what is terminal and how launch application in it. Additionally, from what newbie could known some app is GUI or console? I think by simple running it and watch result. My project made it simpler: you still launch the app, but you wait few seconds in next step and as soon as title of one button changed from autodetection … to autodetection (GUI/Console), click on this button. If my solution detects the app is console, terminal is opened with app output.