Uso de StartupWMClass para aplicaciones que se ejecutan en una terminal
En 18.04 tenía un lanzador en el tablero para ejecutar una aplicación en una terminal con el tablero mostrando un punto indicador para el lanzador cuando se estaba ejecutando, en lugar de un indicador para el lanzador de terminal genérico (de esta manera pude encontrarlo si otras ventanas de terminal están abiertas). Pude usar la opción --class en la entrada Exec junto con StartupWMClass para lograr esto.
En 20.04, el lanzador no funciona porque se abre una terminal, la aplicación intenta iniciarse y luego la terminal se cierra. Busqué esto en Google y hay algunas conversaciones sobre la depreciación de la opción --class. Si elimino la opción --class, el lanzador funciona, pero el punto indicador se adjunta al lanzador de terminal genérico.
Aquí está el archivo .desktop antes de eliminar la opción --class
[Desktop Entry]
Version=1.0
Type=Application
Terminal=true
Encoding=UTF-8
StartupNotify=true
Icon[en_US]=sage-terminal
Icon=sage-terminal
Exec=/home/rquint/Sage/SageMath/sage --class=SageTerminal
StartupWMClass=SageTerminal
Name=SageTerminal
Name[en_US]=SageTerminal
Actions=SageDocumentation;
[Desktop Action SageDocumentation]
Name=Sage Documentation
Exec=firefox /home/rquint/Sage/SageMath/local/share/doc/sage/html/en/index.html
Respuestas
Esta no es una solución perfecta, pero por ahora funciona. Buscando en Google encontré lo siguiente
https://itectec.com/ubuntu/ubuntu-how-to-make-a-custom-launcher-for-terminal-applications/
que muestra cómo lanzar una aplicación en una terminal aunque el lanzador usa Terminal = false. En esencia, está iniciando un emulador de terminal que luego ejecuta la aplicación. Hay dos posibles errores con este método. Primero, llama específicamente a un emulador de terminal en particular; en segundo lugar, la opción --class se deprecia y es posible que no funcione en el futuro.
Entonces, por ahora (Ubuntu 20.04.1 y Gnome 3.36.3), reemplacé las líneas
Terminal=true
Exec=/home/rquint/Sage/SageMath/sage --class=SageTerminal
 
     con
Terminal=false
Exec=gnome-terminal --class=SageTerminal -e /home/rquint/Sage/SageMath/sage
 
     y tener el comportamiento que deseaba.