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