[FIXED but UNSOLVED] Problem with LXDE / run-as-spot / D-Bus

Under development: PCMCIA, wireless, etc.
Post Reply
Message
Author
User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

[FIXED but UNSOLVED] Problem with LXDE / run-as-spot / D-Bus

#1 Post by peebee »

FIX below

Help needed!!

A challenge for somebody clever to investigate and solve - please!

Concerns a difference in behaviour in an LXDE/Openbox scenario compared to a JWM scenario.

Base system can be either LxPupSc or LxPupArtful - both behave similarly. (LxPupXenial and LxPup-16.07.1-s likewise)

Do a pristine frugal install and boot - when system is up and running (under LXDE/Openbox) open a terminal and type:

Code: Select all

run-as-spot light
Note the error messages -
GConf Error or Warning: Client failed to connect to the D-BUS daemon:
Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
and that the Default Browser configuration answers are not saved between invocations

Now switch to JWM using Menu -> Setup -> Switch LXDE <> JWM....

Repeat the "run-as-spot light" test and note the absence of GConf/D-Bus messages in the terminal and that the configuration answers are now stored and remembered correctly.

So the question needing an answer is "How is the system started differently in the 2 cases such that the D-Bus message bus works correctly in run-as-spot mode under JWM but fails under LXDE/Openbox?"

I'm flummoxed and need some help! Here's hoping!
Thanks
peebee
Last edited by peebee on Mon 05 Feb 2018, 16:23, edited 1 time in total.
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#2 Post by musher0 »

Hi peebee.

The Light browser runs under both WMs, yes? Then... cheat!!! ;)

Make a secure copy of the config (aka profile) you got when loading Light from jwm.
The Light browser and all mozilla browsers have console parameters to force
configuration (aka profile) X or Y to be used. Use that. (Pls see screen cap.)

Then always run Light from a wrapper with

Code: Select all

run-as-spot light -P so-and-so 2>/dev/null
That will prevent any error messages from being displayed in the console.

One sometimes gets error messages when using an application (such as the non-
jwm WM) that was not compiled for the Pup. Could that be the case?

As well, they are probably "warnings" rather than real error messages. If they were
actual errors, the app would simply not run.

That type of verbosity exists only on Ubuntu builds. You can check, it is
documented in Ubuntu forums. Ubuntu users have complained about it, but Ubuntu
is staying put, it will not change its policy about this.

My build of the xenialPup gave me many such headaches before I figured it out.

Just a few thoughts. IHTH. TWYL.
Attachments
Light-browser-parms.jpg
You may want to try the -P or --profile parameters.
(145.26 KiB) Downloaded 413 times
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#3 Post by musher0 »


musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

#4 Post by peebee »

Hi @musher0

Many thanks for your testing which has given me some ideas to try myself .... however I don't want to "cheat" or to hide error messages - I want to understand what aspect of LXDE/Openbox is causing the different behaviour compared to JWM.....given that the code base is identical....
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#5 Post by musher0 »

HI peebee.

Come to think of it. it might just be the way the lxde launcher and the jwm launcher
launches the app.

It would be worth checking with a "neutral" launcher. From different WM's but with
this same "neutral" launcher. And we look at what happens. From urxvt or this other
little app called "runner". Not from the lxde terminal because it is part of lxde.

It would be interesting to see what shows up in the xerrs.log file when light -- or
geany -- is run from the jwm menu and then from the lxde menu? And we compare.
Are errors or warnings logged? When we do it this way and not that way?

~~~~~~~~~~~

However, if I have any advice to give on this subject, it is: do not waste your time.
What I mean is: "it's a Ubuntu 'attitude', we cannot fight it." We can only "cheat it".

By all the accounts that I read on this subject, Ubuntu does a lot of this kind of
babble, whereas Debian doesn't. But you are not believing me, boo-hoo-hoo. :( ;)
This Ubuntu "feature" is documented, all can search and read those articles and
forum posts.

Hey, Ubuntu wants to play with My nerves, to rise MY anxiety level by making ME
believe those warnings are errors ?

MY revenge is to coldly manipulate THEIR output and send it to the land of lost
bytes -- where it should have gone in the first place. I have absolutely no qualms
about doing this.

BFN.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

Fixed - but not solved.....

#6 Post by peebee »

I've still no idea why this problem occurs - but I do now have a fix....

The key is symbol DBUS_SESSION_BUS_ADDRESS which is null under JWM but has a value under LXDE.....

Therefore the fix for LXDE is to patch both /usr/sbin/run-as-spot at line 35 and /usr/sbin/setup-spot at line 22 to:

Code: Select all

DBUS_SESSION_BUS_ADDRESS="" ; exec su spot -s /bin/sh -c "\"$APP\" $ARGS"
I will submit a pull request to woof-ce.
Cheers
peebee
ImageLxPup = Puppy + LXDE
Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

Post Reply