#1085934 lightdm: No background displayed when user-background = true

Package:
lightdm
Source:
lightdm
Description:
simple display manager
Submitter:
swingrock
Date:
2024-11-04 18:30:01 UTC
Severity:
normal
Tags:
#1085934#5
Date:
2024-10-23 12:34:40 UTC
From:
To:
Dear Maintainer,

*** Reporter, please consider answering these questions, where appropriate ***

   * What led up to the situation?
I use debian Bookworm,
I added :
user-background = true
to /etc/lightdm/lightdm-gtk-greeter.conf


   * What exactly did you do (or not do) that was effective (or
     ineffective)?

   * What was the outcome of this action?
No user background displayed on login screen

   * What outcome did you expect instead?
I expect the user background to be displayed on the login screen

   * Walkaround
after further analysis, lightdm failed to display the background because org.gnome.settings-daemon.plugins.background doesn't exist
So i install gdm3 but i keep lightdm as my dm.
and it works but cause so trouble in xfce because of many package such as keyboard settings and so on were also installed as a part of gdm3 !!

   * Excpected solution
It would be nice that the lightdm package contain all nessessary dependencies in order to have its features working fine.



*** End of the template - remove these template lines ***

#1085934#10
Date:
2024-10-23 14:34:03 UTC
From:
To:
Hey, thank you for the bug report. I'm not sure exactly what are the
dependencies of user-background = true (which is the default) but there is no
way we would add gdm3 as a dependency to lightdm-gtk-greeter, that wouldn't
make sense at all.

Also I'm not sure I see the link with org.gnome.settings-
daemon.plugins.background but maybe some logs would help.

Regards,

#1085934#15
Date:
2024-10-23 21:01:16 UTC
From:
To:
Hi,

In Lomiri Greeter and Unity Greeter the user background image code
depends on an Ubuntu-specific patch in AccountsService:

https://salsa.debian.org/freedesktop-team/accountsservice/-/blob/ubuntu/debian/patches/0011-add-background-file-support.patch

In Lomiri Greeter we added code to be able to work without that patch
on distros that don't have it.

Mike

#1085934#20
Date:
2024-10-24 18:59:02 UTC
From:
To:
Hey Mike,

thanks for the update but I'm not sure I get everything.

user-background=true seems the default in lightdm-gtk-greeter and relies on
the liblightdm api. I couldn't identify at first sight where does LightDM find
that user background, but maybe it actually comes from AccountService?

If so, swingrock, could you try removing gdm3 and everything else you
installed, and just install accountsservice package? And then report back.

Regards,

#1085934#25
Date:
2024-10-24 19:40:18 UTC
From:
To:
Hi,

1st of all, i'm migrating from ubuntu to debian because i'm enough with
snap package.

Regarding lightdm, my familly would like to see the their background on
login screen. It's very usefull for child.

I agree that adding gdm3 as dependencies is a very bad idea because it
makes me run into many difficulties like having 2 keyboard
manager/settings and many other annoying things.

But there's something missing in order to have the feature "user
backgound" on login screen working. (should be working, it's the default)

In order to produce log, i ran :

$ sudo apt remove gdm3

$ sudo apt autoremove

but lightdm still display backgrounds of users

I'm busy this weekend but next week, i'll try to reproduce on a fresh
install into virtualbox in order to get logs.

regards,

Emmanuel

On Wed, 23 Oct 2024 16:34:03 +0200 Yves-Alexis Perez <corsac@debian.org> wrote:

#1085934#30
Date:
2024-10-24 19:47:16 UTC
From:
To:
Hi,

I've removed gdm3 and then autoremove

lightdm still displaying the background

I can't investigate this weekend cause i'm busy but i'll try to
reproduce on a fresh install under virtualbox next week

keep watching.


On Thu, 24 Oct 2024 20:59:02 +0200 Yves-Alexis Perez <corsac@debian.org> wrote:

#1085934#35
Date:
2024-10-25 06:11:18 UTC
From:
To:
Hi,

i took the night to test it :

here it is

a. Fresh install bookworm 12.7.0
     - uncheck gnome
     - check xfce
     - no root passwd
     - only 1st account
b. Change in .*conf files
     - /etc/lightdm/lightdm.conf
         - greeter-hide-users=false
         - greeter-allow-guest=true
     - /etc/lightdm/lightdm-gtk-greeter.conf
         - user-background=true in [greeter] section
c. reboot
d. change wallpaper of 1st user.
     - use wallpaper in /usr/share/backgrounds/xfce
e. issue : Wallpaper is not displayed by lightdm
f. go to log files /var/log/lightdm
     - see files lightdm.log.1 et seat0-greeter.log.1
     - issue : WARNING : Error getting user list from
org.freedesktop.Accounts :[....]
g. solve issue : sudo apt install accountsservice
     - hint : accountsservice should be a dependencies of lightdm package.
h. reboot
i. issue : Wallpaper is not displayed by lightdm
j. go to log files /var/log/lightdm
     - see files lightdm.log.2 et seat0-greeter.log.2
     - no more warning in lightdm.log nor in seat0-greeter.log
     - issue : WARNING : Error getting user list from
org.freedesktop.Accounts :[....]
k. change wallpaper of 1st user. (new step that i've not done on my install)
     - use another from /usr/share/backgrounds/xfce
l. logout
m. Victory : the walpaper is displayed

So as a final there's only the package accountsservice which is missing
as dependencies of lightdm package

Could you please make the change.

regards,

Emmanuel

#1085934#40
Date:
2024-10-25 07:56:06 UTC
From:
To:
I took a closer look once more. The BackgroundFile is indeed obtained
from AccountsService:

https://github.com/canonical/lightdm/blob/main/common/user-list.c#L589

However, Debian's AccountsService does not provide the BackgroundFile
attribute in org.freedesktop.Accounts like it does in Ubuntu (see
above patch URL).

That Ubuntu patch unfortunately never made it to AccountsService upstream.

Second reason why the user background image does not appear: all
desktop environments used with LightDM must update the BackgroundFile
attribute in AccountsService if the user changes their background
image. Ubuntu has/had patches for that in Ubuntu GNOME, Unity7 and
Unity8.

So, in a nutshell, without a considerable amount of effort and
cooperation from Debian's AccountsService maintainer, this bug report
should be tagged as "won't fix" for now.

Mike

#1085934#45
Date:
2024-10-25 07:58:20 UTC
From:
To:
control: tag -1 wontfix
Eh, thanks for the precision.

I guess work from both Debian maintainer and upstream.

Do you know if they are aware of the patch by the way?

#1085934#52
Date:
2024-10-25 08:07:01 UTC
From:
To:
Hi Yves,

As Emmanuel tested the whole thing once more, it seems I am mistaken.
One more closer look, it seems that LightDM has changed to be more
generic and they made the BackgroundFile code (and also the keyboard
layout AccountsService attribute) usable on non-Ubuntu distros, as well:

See
https://github.com/canonical/lightdm/commit/6015bce25f241e7580c03594d846769f8236232f

So, the solution probably indeed is to add AccountsService under
Depends: or Recommends: of lightdm and done with it.

Second part is with the desktop envs then, they need to write the
background image file name into the above BackgroundFile attribute in
AccountsService, but that's not on us. Obviously, Xfce4 has that
feature (as Emmanuel's test worked under Xfce4).

Mike

#1085934#59
Date:
2024-10-29 18:07:12 UTC
From:
To:
I would like AccountsService to be added under Depends. So that all
features were working fine out of the box for light-gtk-greeter.

This should be ok for gnome, unity and xfce4. Because it's build for it.

For KDE user, most of them use KDM and in case they use lightdm, they
would use lightdm-kde-greeter

So "AccountsService" should be added only as a Depends of the package :
"lightdm-gtk-greeter"

regards,


Le 25/10/2024 à 10:07, Mike Gabriel a écrit :

#1085934#64
Date:
2024-11-04 07:42:09 UTC
From:
To:
Hi,

thanks for the suggestion, but we won't do that. AccountsService is a nice add
to the lightdm features, but it's in no way necessary, it's not even a basic
feature. It's currently in the 'Suggests' field and I think it's just fine
that way. Adding it to Recommends would install and run it by default and I
don't think we want that at this point.

Regards,

#1085934#69
Date:
2024-11-04 18:29:17 UTC
From:
To:
Hi,
This is perfectly understandable for users that are aware of what
Recommands is.
However, even if i know about, i do not have the reflex to look on
recommanded packages to in order to made "working" a features that is
enabled as defaut.
I suggest to disable it as default and add an explanation in the config
file that the feature require AccountsSetting.
Regards,
Emmanuel

Le 04/11/2024 à 08:42, Yves-Alexis Perez a écrit :