--- Begin Message ---
Subject: |
accountsservice daemon lacks dbus interfaces |
Date: |
Tue, 12 May 2020 14:04:20 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) |
Hello,
The accountsservice service hasn't access to dbus' interfaces throwing
an error when they're needed.The problem, at least, appears with LightDM.
The error looks like:
WARNING: Error updating user /org/freedesktop/Accounts/User1000:
GDBus.Error:org.freedesktop.DBus.Error.InvalidArgs: No such interface
"org.freedesktop.DisplayManager.AccountsService"
For information, it already occured[0] and was resolved[1][2] in NixOS.
After testing, simply wrapping the accountsservice package with relevant
XDG_DATA_DIRS directories as done in the attached patch resolves the
issue. However, there might be a proper solution I'm not aware of.
Also the patch used in [2] doesn't seem to be needed in Guix.
Have a nice day,
L p R n d n
[0]: https://github.com/NixOS/nixpkgs/issues/45059
[1]: https://github.com/NixOS/nixpkgs/pull/45107
[2]: https://github.com/NixOS/nixpkgs/pull/72400
0001-gnu-accountsservice-Wrap-program.patch
Description: Text Data
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#41207: accountsservice daemon lacks dbus interfaces |
Date: |
Sun, 30 Jul 2023 09:21:58 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) |
Hi,
Ludovic Courtès <ludo@gnu.org> writes:
> Hi,
>
> L p R n d n <guix@lprndn.info> skribis:
>
>> Ludovic Courtès <ludo@gnu.org> writes:
>>
>>>>> L p R n d n <guix@lprndn.info> skribis:
>> [...]
>>>> Not exactly, my understanding is that *accountsservice* doesn't find
>>>> 'org.freedesktop.Accounts.service' which is provided (and asked) by
>>>> lightdm. (I think the error comes from accountsservice)
>>>
>>> But see:
>>>
>>> $ (cd /tmp; tar xf $(guix build -S lightdm))
>>> $ grep -r "Error updating user" /tmp/lightdm-1.30.0/
>>> /tmp/lightdm-1.30.0/common/user-list.c: g_warning ("Error updating
>>> user %s: %s", priv->path, error->message);
>>> /tmp/lightdm-1.30.0/common/user-list.c: g_warning ("Error updating
>>> user %s: %s", priv->path, error->message);
>>> $ (cd /tmp; tar xf $(guix build -S accountsservice))
>>> $ find /tmp/accountsservice-0.6.50/ -name org.freedesktop\*.service.in
>>> /tmp/accountsservice-0.6.50/data/org.freedesktop.Accounts.service.in
>>> $ find $(guix build accountsservice) -name org.freedesktop\*.service
>>> /gnu/store/l9qyf0brhhq7mwcsyhjsh7k0d3ri3ay2-accountsservice-0.6.50/share/dbus-1/system-services/org.freedesktop.Accounts.service
>>>
>>> That’s why I think it’s lightdm (or dbus-daemon?) that fails to find the
>>> .service file.
>>>
>>> ‘accountsservice-service-type’ extends dbus, such that we have
>>> /etc/dbus-1/system-services/org.freedesktop.Accounts.service. Do you
>>> see this as well?
>>
>> You're right! ;) And probably a dbus-daemon problem from what I
>> understand. But I really don't know what I'm talking about here...
>> However, just to clarify, I think it's not that it's not finding
>> dbus-1/system-services/org.freedesktop.Accounts.service but
>> dbus-1/interfaces/org.freedesktop.Accounts(.Users?).xml. In that case,
>> using #:env-variable for the dbus service might be a possibility.
>> Really, I have quite a lot of files in
>> /run/current-system/profile/share/dbus-1/interfaces but I don't know what are
>> their purpose... :/
>
> I think we’d need to look at the lightdm service to further debug this.
>
> It’s not upstream yet, right?
We now ship a working lightdm service. I believe this bug report was
fixed in 6aeabba2baa11b4a0a778fc353e62d0fe2f6b5ec ("gnu: lightdm: Build
AccountsService files.").
Closing.
--
Thanks,
Maxim
--- End Message ---