I need to run my service as root, and my dirty fix to get into sessionbus was 
just to add following into my .service file under [Service]

Environment=DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/100000/dbus/user_bus_socket

I'm pretty sure that this breaks or violates something, but it seem to work...

-kimmo

From: devel-boun...@lists.sailfishos.org 
[mailto:devel-boun...@lists.sailfishos.org] On Behalf Of Andrey Kozhevnikov
Sent: 3. helmikuuta 2014 12:16
To: devel@lists.sailfishos.org
Subject: Re: [SailfishDevel] dbus-sessionbus connection fails

its not Requires directive, its After
On 03.02.2014 16:11, Luca Donaggio wrote:
Hi Andrey,
yes, I tried with a:
Requires=dbus .service
but I did so many changes to my .service file trying to make it work that I 
can't remember exactly when I did that!
I'll re-start with a clean one and see if it works.

On Mon, Feb 3, 2014 at 11:05 AM, Andrey Kozhevnikov 
<coderusin...@gmail.com<mailto:coderusin...@gmail.com>> wrote:
did you added depends for your autostart rule on some system service? otherwise 
it wont start :)

On 03.02.2014 16:01, Luca Donaggio wrote:
I'm fighting with the same issue: starting your dbus-using daemon with 
"systemctl-user start" does work (ie, you'll be able to connect to session 
bus), but autostarting with "systemctl-user enable" doesn't work, while making 
it a system daemon (plain "systemctl" command) works the other way around: it 
doesn't acquire the session bus (even when starting as user "nemo"), but it 
autostarts as expected!

On Sun, Feb 2, 2014 at 9:20 PM, Dmitry 
<energyc...@gmail.com<mailto:energyc...@gmail.com>> wrote:
Hi

You should run your daemon form user systemd unit.
https://wiki.archlinux.org/index.php/Systemd/User

On 1 February 2014 21:53, Kimmo Lindholm 
<kimmo.lindh...@eke.fi<mailto:kimmo.lindh...@eke.fi>> wrote:
Hi,

I'm using QtDBus in my daemon (systemd service), and I can register my own 
service on systemBus, and also can connect to systembus signals.
When starting executable from command line it runs ok and connects also to the 
sessionbus signals successfully.
but when it is started via systemctl start I can't connect to sessionbus 
signals.

It throws following error:  "Using X11 for dbus-daemon autolaunch was disabled 
at compile time, set your DBUS_SESSION_BUS_ADDRESS instead"

this is printed from code below:

if (!QDBusConnection::sessionBus().isConnected())
{
    writeToLog(qPrintable(QDBusConnection::sessionBus().lastError().message()));
    exit(EXIT_FAILURE);
}

I figured out that DBUS_SESSION_BUS_ADDRESS  is an environment variable which 
obviously is not visible in this context.

is there a way to pass this to the systemd service??

regards,
Kimmo


_______________________________________________
SailfishOS.org Devel mailing list


_______________________________________________
SailfishOS.org Devel mailing list



--
Luca Donaggio



_______________________________________________

SailfishOS.org Devel mailing list


_______________________________________________
SailfishOS.org Devel mailing list



--
Luca Donaggio




_______________________________________________

SailfishOS.org Devel mailing list

_______________________________________________
SailfishOS.org Devel mailing list

Reply via email to