[Pkg-xfce-devel] Bug#254087: xfce4: orphaner fail when called from Debian menus

Cyril Brulebois cyril.brulebois at enst-bretagne.fr
Mon Aug 15 01:31:48 UTC 2005


Frederic Lehobey <Frederic.Lehobey at free.fr> (12/06/2004):
> Package: xfce4
> Version: 4.0.5-1
> Severity: minor

Hi!

I think that this should be reassign to xfce4-terminal.
My versions: (on Sid)
  xfce4          4.2.2
  xfce4-terminal 0.2.4-3
  
> When launched in Xfce4 from the Debian menu "Apps/System/Admin",
> orphaner (from package deborphan) fails while opening the x terminal
> (impossible so see anything and I do not know where to find the logs
> of such failures if any).  But if the command (taken from the menu in
> /usr/lib/menu/deborphan) '/usr/sbin/su-to-root -c /usr/sbin/orphaner'
> is directly issued in a terminal it works.
Hi, I inserted some debug code in libxfcegui4 (4.2.2) in order to get
a precise view of the args calculated in xfce_exec_with_env() [inside
libxfcegui4/xfce-exec.c]. What is called:

#0: xfterm4
#1: -e
#2: /usr/sbin/su-to-root
#3: -c
#4: /usr/sbin/orphaner
xfterm4 -e /usr/sbin/su-to-root -c /usr/sbin/orphaner

I tried in a terminal (instead of modifying directly the deborphan menu
file) to make it work as intended. (Non-)Results follow:

cyril at melo:~$ export LANG=C
cyril at melo:~$ xfterm4 -e /usr/bin/su-to-root -c /usr/sbin/orphaner 
cyril at melo:~$ # Result: window pops up and down (as described above)
cyril at melo:~$ xfterm4 -e '/usr/bin/su-to-root -c /usr/sbin/orphaner'
Invalid argument: "/usr/sbin/orphaner"
cyril at melo:~$ xfterm4 -e "/usr/bin/su-to-root -c /usr/sbin/orphaner"
Invalid argument: "/usr/sbin/orphaner"

I thought that the -c argument is seen as an argument for xfterm4, and
that's the source of the matter. In order to create a workaround, I
tried this one, without success:
cyril at melo:~$ xfterm4 -e "/usr/bin/sudo /usr/sbin/orphaner"
Invalid argument: "/usr/sbin/orphaner"

That's why I'd like to suggest this behaviour for xfterm4: when -e is
encountered, the rest of the line should be given as parameter(s) for
the specified command. I'm not totally sure that's what bash does, but I
think so. That would make all "more than one command" menus work, and
may be what the user want xfterm4 to do.

> Everything works fine when doing the same call from WindowMaker
> (everything else been the same, including localization).
When invoking the same command line with s/xfterm4/gnome-terminal/,
I've got the same problem as with xfterm4. if quotes are not there:

cyril at melo:~$ gnome-terminal -e /usr/bin/sudo /usr/sbin/orphaner 
Invalid argument: "/usr/sbin/orphaner"


but everything's fine if I add them:

cyril at melo:~$ gnome-terminal -e "/usr/sbin/su-to-root -c /usr/sbin/orphaner"

Handling quotes as gnome-terminal does could be another solution for
xfterm4 (and adding them when spaces are encountered in a menu command
for example).
 
> It is independent (it always fails) from the alternative used for
> x-terminal-emulator.
I tried this too. That didn't work, then I've looked a bit at all
symlink and so on. I've "hacked" a bit:

--- /etc/alternatives/x-terminal-emulator       2005-08-15 03:19:27.043954808 +0200
+++ /etc/alternatives/x-terminal-emulator-new   2005-08-15 03:19:15.648687152 +0200
@@ -56,7 +56,7 @@
     }
     elsif ($opt eq '-e')
     {
-       push(@args, '-x', @ARGV);
+       push(@args, '-e', @ARGV);
     }
     elsif ($opt eq '-h' || $opt eq '--help')
     {

And then, I can run: the same command with s/xfterm4/x-terminal-emulator/.

I hope this helps, sorry for the length of this mail.

-- 
Cyril Brulebois
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://lists.alioth.debian.org/pipermail/pkg-xfce-devel/attachments/20050815/8b957c46/attachment.pgp


More information about the Pkg-xfce-devel mailing list