Function DetectXTerm cannot find a terminal on XFCE
Original Reporter info from Mantis: xvdessel
-
Reporter name: Xavier Van Dessel
Original Reporter info from Mantis: xvdessel
- Reporter name: Xavier Van Dessel
Description:
In sources like fpc/packages/fcl-process/src/unix/process.inc, there is a function called DetectXTerm. This function is used in the FPCUnit test case infrastructure to start a terminal.
This function starts by testing some known desktops, namely KDE, GNOME and windowmaker. If the desktop is none of these, a list of possible terminal programs is attempted. They contain some more general terminal programs, like xterm, aterm and wterm.
On a basic XFCE installation (Fedora FC20) however, none of the above matches. I had to install xterm in order to get the FPCUnit framework working.
The default XFCE terminal emulator is xfce4-terminal.
Steps to reproduce:
Install Fedora FC20 with only the XFCE desktop.
Install Lazarus/FPC.
Start an empty FPCUnit project, and compile it.
Additional information:
Suggested correction:
A) add a test for DESKTOP_SESSION to match "xfce". If it matches, result should be xfce4-terminal. Caveat: when xfce would upgrade to xfce5, this may cause problems.
B) add "xfce4-terminal" to the list of known terminal programs.
As LXDE is also not foreseen in the mentioned code, it would be wise to also add "lxterminal" as a known terminal program.
Mantis conversion info:
- Mantis ID: 26031
- OS: Fedora, XFCE desktop
- OS Build: FC20
- Platform: Linux 86_64
- Fixed in version: 3.0.0
- Fixed in revision: 27588 (#c4e249f6)
- Target version: 3.0.0