Package: debian-policy
Version: 3.9.2.0
Severity: normal

Section 11.8.3 "Packages providing a terminal emulator" contains:

To be an x-terminal-emulator, a program must:

   *

      [...]

   *

      Support the command-line option -e command, which creates a new
      terminal window[94
      <http://www.debian.org/doc/debian-policy/footnotes.html#f94>]
      and runs the specified command, interpreting the entirety of the
      rest of the command line as a command to pass straight to exec,
      in the manner that xterm does.


However, as pointed out by Hendrik Sattler in #563352, xterm does *not* simply pass its -e option straight to exec, at least nowadays. The following command exemplifies:

$ xterm -e 'echo TEST && sleep 3'

This works as intended, so xterm does not just support simple commands, but also pipelines. The source shows: http://anonscm.debian.org/gitweb/?p=pkg-xorg/app/xterm.git;a=blob;f=main.c;h=48143b7219a645f71124d22e2980f141d6a502f5;hb=c18d61b3feac0c5c63e5f022e8b4d1c2056947d7#l4557

xterm does call exec, but sometimes to span a subshell which will interpret the command.


By the way, as Hendrik wrote, it would be best to specify how x-terminal-emulator should behave, rather than to say the behavior should be the same as xterm's.
Also, the term "command" is ambiguous.

Reply via email to