Option to change background of lock-screen #55

Open
cyb3rc0de opened this Issue Aug 3, 2014 · 29 comments

Comments

Projects
None yet

cyb3rc0de commented Aug 3, 2014

It would be really, really nice to see option to change background of lock-screen that MATE has. This feature would fit perfectly inside "Desktop Settings" window, accessible from Control Center :)


Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Good idea. I recommend that the actually used desktopwallpaper also the lock-screen background is.

i agree

@stefano-k stefano-k changed the title from Otion to change background of lock-screen to Option to change background of lock-screen Oct 3, 2014

Owner

stefano-k commented Oct 3, 2014

You can set default system wallpaper with a GSettings override /usr/share/glib-2.0/schemas/000-system-background.gschema.override:

[org.mate.background]
picture-filename='/path/to/your/file'

@stefano-k stefano-k closed this Oct 3, 2014

@stefano-k stefano-k reopened this Oct 4, 2014

I agree with this feature request - there should be an easy way to set the background of the lockscreen, even if it's just allowing a user to set a wallpaper for the lockscreen or a solid background colour.

It seems that mate-screensaver's screen lock always use system's default wallpaper image pointed by /etc/alternatives/desktop-background, and with "Zoom" as wallpaper fitting policy.

So current workaround to set screen lock wallpaper is changing the symbolic link /etc/alternatives/desktop-background to point to the desired wallpaper file. Result looks like this:

Screen lock with custom background wallpaper

Albeit this workaround works (with no need to logout or anything), it have a side effect of setting it as a default wallpaper for a new desktop environment, system-wide.

Note: org.mate.background.picture-filename dconf key @stefano-k mentioned does not seem to exist. And although another dconf key org.mate.desktop.background.picture-filename does exist, it affects (currently) only the desktop wallpaper, not the screen lock wallpaper.

MATE: MATE Screensaver 1.8.0, MATE 1.8.1 (from Debian Wheezy backports repository)
System: Debian GNU/Linux 7.0 Wheezy i386

@nachanon I can confirm, the dconf values are the same for me in mint 17.1.

However I am not able to change it via .override, because
/usr/share/glib-2.0/schemas/000-system-background.gschema.override
does not exist in mint 17.1
There is another file called mint-artwork-mate.gschema.override but org.mate.background is ignored.
Any other ideas?

Now I just simply replace default symlink with my jpg

hi everybody.
I use linuxmint 17.1 and i solve the problem changing the image linked at /usr/share/backgrounds/linuxmint/default_backgraund.jpg

Lesik commented Apr 18, 2015

I can confirm that the dconf key org.mate.background.picture-filename does not exist.
Symlinking /etc/alternatives/desktop-background to the picture of your choice works.
Obviously those are hacky tricks and should not be the officially endorsed way of changing the background. A GUI for changing it should be developed.

Debian 8.0 Jessie, MATE 1.8.1

dlussky commented Jul 15, 2015

I used symlinking, and it worked, but it's really mindblowing lack of basic option. It would be much more convenient if current desktop wallpaper was used. Or even better a dconf key for that. Sadly I'm completely unqualified to implement that, or I would definitely do it myself)

Under mate-screensaver 1.8.0 function gs_manager_init() in gs-manager.c that runs at mate-screensaver daemon start, it seems that mate-screensaver tries to load system-default background using libmate-desktop's mate_bg_load_from_system_preferences(). Replacing that call with mate_bg_load_from_preferences() caused it to load user-configured background instead.

Also as the call was issued at daemon's startup, it would not see any background settings change until user logged-out and login again. So I moved the call from gs_manager_init() to manager_show_window() which runs at screen lock dialog display instead.

Here is a patch (for mate-screensaver 1.8.0):
1004_use-user-background-on-screenlock-display.patch

Following screenshot is captured after applied the patch:

You would see that screen lock background shown the same background as configured in mate-appearance-properties. Solid color, gradient, and image (with any fitting policy) works, although slideshow background didn't animate.

MATE: MATE Screen Saver 1.8.0, MATE 1.8.1 (patched against Debian Wheezy backports repository's source package)
System: Debian GNU/Linux 7.0 "Wheezy" i386

Note: Under current mate-screensaver git (1.10.2 revision 0ebac28), background loading seems to be done in a similar way. So, this is an untested patch for current mate-screensaver git:
mate-screensaver_0ebac28_use-user-background-on-screenlock-display.patch

What's the status on this?

eosrei commented Nov 5, 2015

@simonorono AFAIK this is it. You are looking at it. Potential implementations, but no pull request.

cb474 commented Nov 13, 2015

None of the workarounds here work for me. I used to just change the actual default image to whatever I want, but give it the name of the default image. That was /usr/share/backgrounds/mate/desktop/Stripes.png. But that seems to no longer be the default image. What and where is the default image now?

[Edit: The solution here worked for me: https://wiki.archlinux.org/index.php/MATE#Lock_screen_and_default_background_image]

irenge commented Feb 20, 2016

how to do it on Fedora 23 , i tried changing at /usr/share/desktop but did not change

Member

raveit65 commented Feb 20, 2016

/usr/share/glib-2.0/schemas/mate-fedora.gschema.override
But a change will always overwritten by an update of mate-desktop package.

Could lockscren just use lightdm background settings?

Would love a GUI option for this as well, even if it just inherits the wallpaper would be something.

JonasCz commented Jul 5, 2016

Would love to have this too - why not just use the desktop background as per @nachanon ?

karlicoss commented Jul 17, 2016

The solution from #55 (comment) almost worked for me, except for /usr/share/glib-2.0/schemas/org.mate.background.gschema.xml seems to be irrelevant to lock screen in Ubuntu Mate 16.04. The setting I had to change was /usr/share/glib-2.0/schemas/ubuntu-mate.gschema.override. Here's my simple script to set the lock screen:

#!/bin/bash
LOCK_SCREEN_BACKGROUND="/usr/share/backgrounds/ubuntu-mate-xenial/Blissful_Sky.jpg"
sudo crudini --set /usr/share/glib-2.0/schemas/ubuntu-mate.gschema.override org.mate.background picture-filename "'$LOCK_SCREEN_BACKGROUND'" # single qutes are important!
sudo glib-compile-schemas /usr/share/glib-2.0/schemas/
echo "Don't forget to restart X!"

Crudini is not necessary (you can edit the ubuntu-mate.gschema.override file yourself), but a really nice tool which handles editing ini files for you.

P. S. this also works for Ubuntu Mate 15.10
P. P. S. still would be great to have at least a dconf setting for that :)

ChrisCheney commented Aug 14, 2016

For people trying to change this on Linux Mint 18 it appears that it uses /usr/share/backgrounds/linuxmint/default_background.jpg which is a symlink.

+1

Anybody find out how to resolve the zoom issue? Changing the wallpaper is fine, but it is zoomed in.

fone commented Sep 26, 2016

is there a way to enable to default lock screen instead? the one you only see when you completely log out/login.

charlesbos commented Nov 13, 2016

Overriding the system default for org.mate.background picture-filename using a gschema override works but really mate-screensaver should respect the user's version of that setting just like gnome-screensaver and cinnamon-screensaver do for their equivalent keys. Please can this be implemented.

Edit: just spotted the patch in this comment: #55 (comment)
It works with mate-screensaver 1.16. Can it be added upstream now?

nonsns commented Nov 16, 2016

+1

Symlink trick works system-wide, so I can live with it, although it does not play nice for multi-user installations (on the same pc).

Using the default bg just adds confusion for users with several mint boxes (they all look alike while they shouldn't)

Using the user-specified bg is really the way to go. Patch (which seems a clean solution) should be (tested more broadly and) upstreamed

Owner

flexiondotorg commented Jan 17, 2017

Fixed via b2f48ab

cb474 commented Mar 29, 2017

I don't think that the patch b2f48ab actually fixed the feature request in this report. This should not be closed.

The request was for there to be a way for the user to set the background image of the lockscreen. The patch does not provide this, rather it forces the background of the lockscreen to match the user's desktop image. Hence the user still can not select the background image of the lockscreen specifically.

I don't want my lockscreen image to match my desktop. I want it to match the image for my login screen, which makes far more sense to me. As it is the patch breaks the workaround I had for this problem and makes it worse. It's very frustrating that after more than two years the solution is worse than the problem.

Please either get rid of the patch so that the old work around still works or make it so that you can actually specifically set the background of the lockscreen, independent of any other settings.

Member

raveit65 commented Mar 30, 2017

I don't think that the patch b2f48ab actually fixed the feature request in this report. This should not be closed.
The request was for there to be a way for the user to set the background image of the lockscreen. The patch does not provide this, rather it forces the background of the lockscreen to match the user's desktop image. Hence the user still can not select the background image of the lockscreen specifically.

agree

Please either get rid of the patch so that the old work around still works or make it so that you can actually specifically set the background of the lockscreen, independent of any other settings.

The commit is an improvement but a setting for changing the wallpaper is missing.

@raveit65 raveit65 reopened this Mar 30, 2017

cb474 commented Mar 31, 2017

Thanks for reopening this feature request. Hopefully it will be less than two years before this gets addressed again. :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment