Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cinnamon does not pass user background changes to Lightdm #2379

Closed
imarkskinner opened this issue Sep 15, 2013 · 19 comments
Closed

Cinnamon does not pass user background changes to Lightdm #2379

imarkskinner opened this issue Sep 15, 2013 · 19 comments

Comments

@imarkskinner
Copy link

Lightdm is a very popular display manager and it's disappointing that Cinnamon does not pass user display changes to Lightdm so that the per-user background feature can be used.

Whilst I appreciate that Lightdm is not the default display manager used in Mint it would make Cinnamon more versatile if it respected the API's of such a common display manager (excuse me if this is the wrong terminology). Most modern desktop environments utilise this feature and many still do so even if Lightdm is not its default display manager.

I'm working on tracking down exactly how to get this to work but I'm no developer so it's not easy for me, any help would be appreciated.

@imarkskinner
Copy link
Author

I have had help elsewhere on a support forum trying to trace down the cause of this problem, and it is somehow related to a plugin in the gnome-settings-daemon. Running

gsettings set org.gnome.settings-daemon.plugins.background active true

in a terminal allows that user to change the Lightdm background using the standard Cinnamon method but with this plugin disabled, nothing happens to lightdm when changing the background in Cinnamon.

As far as I can tell there is no downside to enabling this plugin.

@clefebvre
Copy link
Member

cinnamon no longer uses gnome-settings-daemon..

@imarkskinner
Copy link
Author

So does this mean, as of Mint 16 Cinnamon will pass wallpaper changes to Lightdm without this plugin, or is this another way of saying "Were not interested in working on this"

Don't misunderstand that as a snide remark, it's your choice either way and obviously Cinnamon is a Mint team project but I think It would be a good way to make Cinnamon more appealing to many other distros.

@dalcde
Copy link
Contributor

dalcde commented Sep 29, 2013

I guess it means that your solution works, but since Cinnamon has switched to cinnamon-settings-daemon, it should be

gsettings set org.cinnamon.settings-daemon.plugins.background active true

@imarkskinner
Copy link
Author

cinnamon-settings-daemon doesn't include this plugin, can it be forked to cinnamon, without this cinnamon cannot properly interact with lightdm and for the reasons I stated in my first post I think Cinnamon would be a better desktop environment if it integrated well with such a popular display manager providing it is not extremely time consuming to do

@jfarthing84
Copy link

Not sure why this was closed as it hasn't been resolved. I see it was supposively fixed in f4e6e1a, but in Cinnamon 2.4.5, this code is nowhere to be found.

@mtwebster
Copy link
Member

We have gone back to a c-s-d plugin - the AccountsService call is initiated here:: https://github.com/linuxmint/cinnamon-settings-daemon/blob/master/plugins/background/csd-background-manager.c#L142

which goes here: https://github.com/linuxmint/cinnamon-desktop/blob/master/libcinnamon-desktop/gnome-bg.c#L328 to set the background for LightDM

I just checked that the user file in /var/log/AccountsService, and it is indeed being changed when the background is changed. Has LightDM changed how it works - is it still using AccountsService?

@jfarthing84
Copy link

Interesting. The wallpaper is not defined at all for my user in /var/lib/AccountsService/users/*.

@mtwebster
Copy link
Member

Is there anything logged in ~/.xsession-errors when switching backgrounds? I'm not sure if AccountsService keeps a log file.

What distro are you on?

@jfarthing84
Copy link

Ahh, here we go:

(cinnamon-settings-daemon:4203): CinnamonDesktop-WARNING **: Failed to set the background '/usr/share/backgrounds/luna-wallpapers/Horseshoe Bend Sunset.jpg': GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such method 'SetBackgroundFile'

I'm on Arch.

@mtwebster
Copy link
Member

That's why - Arch

SetBackgroundFile is an Ubuntu invention, it's not in vanilla AccountsService.

@jfarthing84
Copy link

So, how do we get it working in Arch?

@mtwebster
Copy link
Member

Well, I'm not sure we do - there are file ownership issues at play here. It'd be nice for the method to be added to AccountsService upstream, but I'm not sure how receptive they might be to that.

@mtwebster
Copy link
Member

@jfarthing84
Copy link

From 2011. Looks like they're not interested.

@mtwebster
Copy link
Member

If I get time I'll prepare a patch for AccountsService to add what Ubuntu does... I wouldn't hold my breath though - they're pretty apathetic usually, unfortunately.

@jfarthing84
Copy link

I assume there's no API in AccountsService to set an arbitrary value in /var/lib/AccountsService/users/* so you could manually set the background key?

@mtwebster
Copy link
Member

Unfortunately no, it's pretty strict.

@jfarthing84
Copy link

FWIW, I manually set the Background key in my user's AccountsService key file and it still didn't work. So, there may well be some lightm-gtk-greeter issues in Arch with this as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants