Running pgl without dbus
On systems not running dbus, "systemctl start pgl" hangs. The following change, in a copy of the default pgl.service file, solves this:
Duplicating whole service files in /etc is not recommended since one cannot benefit from changes brought to /usr when updating a package. A more elegant solution (offered since systemd 198) is to "extend" the unit file by creating the following folder and file:
Interesting. I should have been more clear. By "copy of the default pgl.service file", I did not mean copy the whole file, but was refering to the ".include" method described on the wiki page, which is similar to your suggestion.
It is on a headless server, so I thought dbus was not running, however, it is. Subject title should be: "Running pgl on a headless server". As a test, I tried:
# systemctl stop dbus dbus.socket # systemctl restart pgl
But this also hangs and times out on pgl start.
My main issue is not how to solve it, but whether one of the wiki pages should be updated (gpl trouble shooting section, for instance). Or is this issue too general?
Feel free to add any information you deem relevant to users on the main pgl page.
To be clear, the cli version of the pgl package now has dbus enabled by default since it's a part of systemd (listed as a dependency even). To prevent pgl from relying on dbus, and in addition to resetting
BusName, you need to add
--disable-dbus to the
./configure line of the PKGBUILD.
BusName doesn't do much right now since pgl takes its time before registering as a dbus service, leading systemd to believe it dead. This is why I put
PIDFile=/run/pgld.pid in version 2.2.2-2 to make sure that systemd is aware the program has started and is operational. You're problem suggests you are missing this latest addition, so make sure have pgl-cli 2.2.2-2 or pgl 2.2.2-3
FYI, but not to drag on the discussion:
I also tried to extend the timeout: pgl hanged until timeout.
Starting pgl.service without the
BusName fix/workaround (unmodified aur/pgl-cli 2.2.2-2 installed and using the default .service file), does not hang anymore but results in:
pgl.service: main process exited, code=exited, status=8/n/a