#653327 x11-common: Quoting in 20x11-common_process-args breaks starting gnome-session with arguments.

Package:
x11-common
Source:
xorg
Submitter:
Brett Viren
Date:
2022-06-07 23:27:04 UTC
Severity:
important
Tags:
#653327#5
Date:
2011-12-26 23:06:30 UTC
From:
To:
Dear Maintainer,

I've been trying to get the sawfish WM to work with the latest gnome3.
One the sawfish mailing list I was pointed to how xmonad got things to
work:

https://wiki.archlinux.org/index.php/Xmonad#GNOME_3_and_xmonad

They revolve around starting an Xsession by execing gnome-session with
an argument to point it to a non-standard gnome-session setup for
sawfish.

This approach fails because adding the extra argument breaks a "which"
line in:

  /etc/X11/Xsession.d/20x11-common_process-args

The problem is the quoting of the "$1" argument to "which" on line 48:

        STARTUP_FULL_PATH=$(/usr/bin/which "$1" || true)

It tells "which" that the "executable" is the entire string:

   "gnome-session --session=sawfish"

Removing the quotes:

        STARTUP_FULL_PATH=$(/usr/bin/which $1 || true)

allows the session to start up as expected.

Regards,
-Brett.

#653327#10
Date:
2012-12-14 18:37:34 UTC
From:
To:
tags 695903 + upstream  confirmed
found 695903 0.4.1-2
stop

Hi Paul,

2012/12/14 Paul Wise <pabs@debian.org>:

This seems to be an error from upstream .desktop files:
https://groups.google.com/group/razor-qt/browse_thread/thread/9555a74cf7188ad2

It's fixed in newer versions by commenting out the "TryExec", which
(even if it works -- it doesn't for me when modifying my .desktop
files by hand) is not very optimal, since then one has entries for
window managers not really available in the system:
https://github.com/Razor-qt/razor-qt/commit/bc8148c5e7741de9400f7436f188e178a51b5b96

I guess that this is a duplicate of #653327 , due to the following
line having several arguments:
  Exec=razor-session -w openbox

Comments?


Cheers.

#653327#15
Date:
2012-12-14 19:29:01 UTC
From:
To:
2012/12/14 Manuel A. Fernandez Montecelo <manuel.montezelo@gmail.com>:

I had thought that the above might be the problem, but I think now
that what I said above is wrong.

I think that the actual issue is the following one:

#694832 and #566825 also seem duplicates of #653327 .

Sending a copy of this message to all of these bug reports, some of
them quite old; to see if submitters, triagers and maintainers concur
and we can get it fixed.


Cheers.

#653327#18
Date:
2012-12-14 19:29:01 UTC
From:
To:
2012/12/14 Manuel A. Fernandez Montecelo <manuel.montezelo@gmail.com>:

I had thought that the above might be the problem, but I think now
that what I said above is wrong.

I think that the actual issue is the following one:

#694832 and #566825 also seem duplicates of #653327 .

Sending a copy of this message to all of these bug reports, some of
them quite old; to see if submitters, triagers and maintainers concur
and we can get it fixed.


Cheers.

#653327#23
Date:
2013-03-23 13:43:36 UTC
From:
To:
Dear Maintainers,

I ran into a similar problem on a fresh Wheezy install when trying to
use Cairo-Dock. The error message I got from Xsession is:

Xsession: X session started for dani at 2013. márc. 23., szombat, 13.43.47 CET
Xsession: unable to launch "gnome-session --session=cairo-dock" X session ---
"gnome-session --session=cairo-dock" not found; falling back to default session.

My installed version is:
x11-common:
  Installed: 1:7.7+2
  Candidate: 1:7.7+2

The patch available at
http://anonscm.debian.org/gitweb/?p=pkg-xorg/debian/xorg.git;a=blobdiff;f=debian/local/Xsession.d/20x11-common_process-args;h=33696ad9988cf7a5d5683bb027ae40a85cf53a15;hp=53e7a7b294f8c2a3b63dd0320b6d79e6225c683b;hb=75c2a9cfacafbd46c433b44dd672985433032f99;hpb=50706e3079f37799a3e6a3a06d711c764703960c
fixes the problem for me.


Best Regards,

Dániel Kondor

#653327#28
Date:
2013-10-11 16:50:48 UTC
From:
To:
severity 653327 important
thanks

Since this now also affects the new GNOME Classic mode in GNOME 3.8, I'm
raising the severity to important.
I'll add a wrapper script as workaround for now, but it would be nice to
see this fixed properly in Xsession.

Michael

#653327#35
Date:
2013-10-11 20:56:49 UTC
From:
To:
Am 11.10.2013 18:50, schrieb Michael Biebl:

Since Julien asked me for further explanation of this problem, here we go:

gnome-session can run different type of sessions which you can specify
via the --session <foo> switch

That is e.g. used in /usr/share/xsessions/gnome-classic.desktop as
Exec=gnome-session --session classic

That is passed on by the login manager (in my case gdm3) to
/etc/X11/Xsession as "gnome-session --session classic"

/etc/X11/Xsession.d/20x11-common_process-args fails to process that
additional command line arguments, specifically
STARTUP_FULL_PATH=$(/usr/bin/which "$1" || true)

"$1" contains "gnome-session --session classic", so "which" fails and
doesn't return /usr/bin/gnome-session. One needs to strip the additional
parameter, which the expression "${1%% *}" does.

Patch is from Didier Roche, see attachment.

Michael

#653327#42
Date:
2015-03-15 15:15:44 UTC
From:
To:
reassign 692987 x11-common
forcemerge 653327 692987
thanks

After searching for a solution, it seems it is linked to an existing
bug on the x11-common package (#653327) that prevent a session to be
started if the Exec command has additional parameters.

The issue is not in the gnome-session package, but in the x11-common
one.

Xavier

#653327#49
Date:
2019-02-12 15:59:02 UTC
From:
To:
Hallo glücklicher Gewinner.

MEGA SENA LOTTERY COMPANY zeichnete 5 Millionen Menschen aus Amerika
mit einem kostenlosen Computer-Wahlprogramm aus. 14 Millionen Menschen
aus Europa, 7 Millionen Menschen aus Asien, und 3 Millionen Menschen
aus Afrika, die 29 Millionen Personen per E-Mail versenden, wurden
automatisch aus dem Internet in der ganzen Welt ausgewählt.

Diese kostenlose Computerabstimmung findet ab und zu in MEGA SENA
LOTTERY statt und fand in diesem Jahr 2019 statt. Die Summe von
1.400.000,00 Millionen Dollar ist für den glücklichen Gewinner
bestimmt, und Ihre E-Mails wurden automatisch aus dem Internet
ausgewählt .

Hinweis: Sie müssen kein Ticket kaufen, um an dieser Lotterie
teilnehmen zu können. Es ist eine kostenlose E-Mail-Ziehung. Diese
Promo ist ein Mittel zur Wertschätzung und auch zur Förderung von
Internetnutzern und zum Sponsoring von Armutsbekämpfungsprogrammen der
Welt.

Sehr geehrter Herr, ich bin stolz, Ihnen hiermit mitteilen zu können,
dass Sie der glückliche Gewinner des diesjährigen MEGA SENA LOTTERY
BALLOT sind, der mit einer Summe von 1.400.000,00 US-MILLIONEN DOLLARS
ausgezeichnet wird. Diese Benachrichtigung wird Sie offiziell vom
Direktor von MEGA SENA LOTTERY informieren Sie über Ihren Gewinnfonds.

Jetzt sollten Sie sich mit der Sicherheitsfirma in Lome-Togo über die
dortige E-Mail-Adresse (lawenforrcementagencytg@gmail.com) in
Verbindung setzen, um Ihren Fonds zu fordern und ihm mitzuteilen, dass
Sie vom Mega Sena-Lottodirektor geleitet werden enthalten die Summe
Ihres Gewinns 1.400.000,00 Millionen Dollar.

Ansager. MEGA SENA LOTTERY DIRECTOR.

#653327#54
Date:
2022-06-07 23:24:53 UTC
From:
To:
[...]

This patch appears to have been applied a while ago:

https://salsa.debian.org/xorg-team/xorg/-/commit/4e760f217643d8419d4d24a3ebb2b61ac74cf990