Slick-Greeter not showing any user-backgrounds?

dear all,
on my standard-MATE-installation and also on the MATE-ISO-installation-USB-stick

the Slick-Greeter is not showing any user-backgrounds, not even the pre-installed backgrounds.

For reproduction: You only need to add one standard-user beside the administrator and set their backgrounds in the “Appearance”-> “Background” section of the settings. Then logout-login to see.

I already tried to change every possible thing in the

  • Slick-Greeter-settings
  • slick-greeter.conf - file
  • DCONF-editor

But i am a total NOOB and did not come to any solution.

Maybe user-backgrounds are not working at all under MATE?

Help would be really appreciated. Big Thanks!

I haven’t used slick-greeter in ages but if I recall correct, you find - In the slick greeter settings - perhaps lightdm settings - something called draw user background or something resembling this particular meaning.

Thank you for reply.
Yes, in the lightdm / slick-greeter settings and also in the “slick-greeter.conf”-file (in ./etc/lightdm) i have set the “draw-user-backgrounds=true”.

But it seems to be ignored by the system…

I have this vague remembrance - cannot place it - but 5-6 years ago - around the time where the draw-user-background was implemented - something was added to the configuration for slick-greeter to ensure the background did not change arbitrarily - I think that change effectively disabled the draw-user-background property.

Perhaps this additon is what is causing this.

The following is highly speculative … please take proper precautions before experimenting!

There is a file /usr/share/glib-2.0/schemas/99_manjaro-settings.gchema.override - this file defines the desktop background and the greeter background.

I don’t know if renaming the file will change - then use dconf to reset everything …

No guarantees - obviously - as this will reset every setting to default - which may have undesired sideeffects.

Another option would be to create a copy of the above file - named in a manner so it is read after the original - leaving out the background definitions - which then will override the override - it you get what I mean.

A search lead me to an old (2017-01) topic on Mint forum - the topic may have no relevance at all for todays version of slick-greeter.

Ok, from what i see in the file (at the bottom)
/usr/share/glib-2.0/schemas/99_manjaro-settings.gchema.override
this seems to be the pre-definitions for the DCONF-editor.

In the DCONF-editor i had also set the “draw-user-backgrounds” ON, but it did not lead to any success.

Maybe in Mate it is simply impossible?

Change it with gsettings or use dconf Editor:

gsettings set x.dm.slick-greeter background="/path/to/background-image/image.png"

See:

Thanks for your reply!
Yes - i am able to set one pic that keeps staying STATIC on the login screen with
background=/usr/share/backgrounds/pic.jpg

But the problem: if you have an Administrator- and 2-3 Standard- user accounts,
and every user wants to use a different background picture from those backgrounds,
and as a consequence these user-backgrounds should also be seen on the login-screen if you switch between the users.

I have set the “draw-user-backgrounds=true” in

Slick-Greeter-settings
slick-greeter.conf - file
DCONF-editor

But the system ignores it, and continues to only show the one STATIC pic that was chosen.

Maybe i am to much NOOB? :slight_smile:

I’m not sure why you think the greeter is even designed to have different backgrounds per user. Whether it is or not, it’s an upstream issue. We can’t change something that’s not designed to be changed.

But the XFCE-Manjaro-Version uses the same greeter, and BUDGIE-Manjaro too, and those greeters show all the different user-backgrounds out of the box.

Xfce does not include lightdm-slick-greeter.

Does not compute. “Out of the box”, it will use the default Manjaro background.

Maybe I’m misunderstanding.

Xfce is using lightdm-gtk-greeter not slick greeter.

lightdm-gtk-greeter can show user wallpaper when the user is seleced - if configured using the gtk-greeter settings app.

my dears,
thanks for helping! i searched every day, unfortunately i did not find a solution yet.

i checked the SOLUS-BUDGIE (not Manjaro-Budgie, see getsol.us) USB-installation-ISO from Josh+Ikey,
because their lightdm + Slick-Greeter + “draw-user-backgrounds works out of the box.

in their “lightdm.conf”-file they set (without the uncommenting “#”):

logind-check-graphical=true
dbus-service=true

i tried the same on my Manjaro-MATE installation but the user-backgrounds are still NOT being drawn.

how can i check if DBUS was started before LIGHTDM ?
they also have a slightly different Xsession.

maybe there is still something else missing that could make it work on our Manjaro-MATE:

in another forum i had read, that someone had to add lightdm to a “users-group” and change file+directory permissions, but no details were explained so i couldnt follow… [me NOOB :slight_smile: ]

lightdm can show a user defined wallpaper if configured as such.

Manjaro Maté is not configured to do so - thus you will have to amend the configuration to suit your liking.

Lightdm uses accountservice to read user defined wallpaper from dconf and stores per user configuration in /var/lib/AccountsService/users - this is a protected system folder - no user access.

If I recall correctly slick-greeter.conf overrides what is set in dconf so with the settings - besides the default wallpaper may be why it doesn’t work as you expect.

If I take xfce and install slick-greeter - the wallpaper will change depending on the selected user’s wallpaper.

I have no idea why it works differently for Maté … but it does …

Big Thanks for your support! :slight_smile:
we are very close to a solution now, after several more days of searching, and right now i am testing this on a parallel computer with the Manjaro USB installation-stick.

the problem in MATE not showinguser-backgrounds” is not in Lightdm / Slick-Greeter, but in AccountsService because it overrules everything:

I changed the permissions of /var/lib/AccountsService/users - folder with

sudo chmod 777 users

and also all the “user-files” in this folder with

sudo chmod 777 user1
sudo chmod 777 user2

The content of every single user-file is:

[User]
Session=
XSession=mate
Icon=/home/standard/.face
SystemAccount=false

In our Manjaro-MATE implementation the information for the BackgroundFile is missing !!!

so I changed the contents of every user-file to what i saw in your comments on GitHub:

[org.freedesktop.DisplayManager.AccountsService]
BackgroundFile=‘usr/share/backgrounds/mate/nature/Garden.jpg’

[User]
Session=
XSession=mate
Icon=/home/standard/.face
SystemAccount=false

In this case the user has chosen the preinstalled ‘Garden.jpg’ as Background Wallpaper for his desk.

The Slick-Greeter IS SHOWING the user-backgrounds now at the logout-login screen !!!

But this is just a STATIC solution: if a user changes his background, the BackgroundFile - info is not being updated automatically by Mate.

my idea now is to extract this info from the DCONF-editor.

In Terminal i tried without success:

gsettings get org.mate.background
gsettings get /org/mate/desktop/background/picture-filename

But In Terminal the info of the BackgroundFile can be shown with:

dconf read /org/mate/desktop/background/picture-filename

Accordingly i tried to set the AccountsService - user-files to:

[org.freedesktop.DisplayManager.AccountsService]
BackgroundFile=‘dconf read /org/mate/desktop/background/picture-filename’

[User]
Session=
XSession=mate
Icon=/home/standard/.face
SystemAccount=false

But this leads to show the Manjaro-standard login and is not showing the users BackgroundFile.

What am i missing to ping this info into the user-files? maybe something like

{ ’ " [ $USER echo sudo gsettings dbus-launch ] " ’ } ???

i have no idea because i am a NOOB :slight_smile: