GNOME devs are considering a ‘big cleanup’ of code related to background wallpaper handling in GNOME Shell and Mutter.

The plans are a work-in-progress and yet to be confirmed, but if approved they will involve “getting rid of a bunch of features” that are not currently exposed to users in the GNOME Settings app, and whose code is otherwise surplus to requirements.

Plus, as is so often the case in situations like this, doing so will ease the maintainability burden.

“[These changes] will not only make mutters and gnome-shells background code significantly more maintainable, it should also allow removing all the GnomeBG code from gnome-desktop,” reasons developer Jonas Dreßler.

Now, I hop between quite a few Linux distros and DEs these days so I had to remind myself of precisely what background controls are available in vanilla GNOME out of the box — and was surprised to learn the answer is ‘very few’:

a screenshot showing the background options in GNOME 41
Existing background controls are scant

Oh sure, I can choose from various image files or pick one of my own, but beyond that there are no other controls. I can’t change the “picture mode” to, say, ‘fill screen’ or ’tile’ without a detour to another app like Tweaks

But now I think about it, I can’t say I’ve ever needed to, either — so it’s hard to argue users will miss what they can’t (easily) access. Devs plan to drop all picture handling options with the exception of “zoom” (which is what GNOME uses by default, and clearly works well for 99% of situations).

The code cull as proposed would also result in the removal of several other ‘hidden’ background options (or more technically gsettings keys), including ones that allow you to set a solid colour as the background, or specify primary and secondary colours and a shading type to effect a ‘gradient’ style background:

Today I discovered a few hidden settings

I’m a bit ignorant in this regard too; I didn’t know these features were still available in GNOME Shell, albeit with a bit of hoop jumping required. Still, I can’t image there are people out dive into dconf-editor to make use of this so, again, it’s a feature unlikely to be missed.

Also set to go is support for wallpapers with alpha channels and animated wallpapers — though don’t get excited by the mention of ‘animated wallpapers’. These aren’t .mp4 files that play in the background but .xml background slideshows that some Linux distros (including Fedora and Ubuntu) ship with.

Making space for new features

Clearing out all of this old code is only one half of the overall effort. Shell devs want to add new background capabilities and lay the ground for other desktop features that need to account for background images, such as transparent panels.

One mooted feature in particular is an automatic background switch that changes the desktop wallpaper when either light mode or dark mode is activate. You may be familiar with this adaptive approach to backgrounds as it’s is included in other OSes, such as iOS and Windows 11.

Wallpapers don’t excite everyone, but they’re a customisation feature I take full advantage of. Getting some new options in this area on the GNOME desktop would be great.

h/t casual

Are these features you’d miss? Or, like me, are they features you didn’t realise where still there? Let me know down in the comments — and do chime in with any background-related features you’d love to see any desktop add.