-
Notifications
You must be signed in to change notification settings - Fork 28
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
[Feature request] Support for Dynamic Wallpappers supported by other DEs like Gnome/Cinnamon/Mate #70
Comments
I do agree with this, in particular because Debian does a similar thing, as their default backgrounds are created as multiple SVG files for different screen resolutions, then they use a dynamic background XML file to set backgrounds for different screen resolutions in GNOME. They probably use this same file in other desktop environments too, but I didn't feel like trying to spin up an extra VM to test. Here's the <background>
<static>
<duration>8640000.0</duration>
<file>
<size width="1280" height="800">/usr/share/desktop-base/emerald-theme/wallpaper/contents/images/1280x800.svg</size>
<size width="1280" height="1024">/usr/share/desktop-base/emerald-theme/wallpaper/contents/images/1280x1024.svg</size>
<size width="1600" height="1200">/usr/share/desktop-base/emerald-theme/wallpaper/contents/images/1600x1200.svg</size>
<size width="1920" height="1080">/usr/share/desktop-base/emerald-theme/wallpaper/contents/images/1920x1080.svg</size>
<size width="1920" height="1200">/usr/share/desktop-base/emerald-theme/wallpaper/contents/images/1920x1200.svg</size>
<size width="2560" height="1440">/usr/share/desktop-base/emerald-theme/wallpaper/contents/images/2560x1440.svg</size>
<size width="2560" height="1600">/usr/share/desktop-base/emerald-theme/wallpaper/contents/images/2560x1600.svg</size>
<size width="3200" height="1800">/usr/share/desktop-base/emerald-theme/wallpaper/contents/images/3200x1800.svg</size>
<size width="3200" height="2000">/usr/share/desktop-base/emerald-theme/wallpaper/contents/images/3200x2000.svg</size>
<size width="3840" height="2160">/usr/share/desktop-base/emerald-theme/wallpaper/contents/images/3840x2160.svg</size>
<size width="5120" height="2880">/usr/share/desktop-base/emerald-theme/wallpaper/contents/images/5120x2880.svg</size>
</file>
</static>
</background> The XML file would be stored in the COSMIC not yet supporting SVG backgrounds, as far as I can tell, may likely be an upstream issue with
Debian's file name of |
It doesn't matter if image-rs supports it or not. SVG support could be implemented by using |
Right! I had a bit of a half-and-half decision about that and was busy at the time so I didn't check, but thinking about it now, supporting a second library or crate just for SVG files would make more sense. I hadn't yet checked to see how other desktop environments handle this, but I'm certain they too use separate libraries for raster and vector image rendering. |
We're already using different crates for image codecs not supported by image-rs, such as jpeg XL |
It would be nice to have support for the same dynamic wallpapers as Gnome/Cinamon/Mate since Fedora provides a few out of the box, and there are collections to be found (Just googled and found https://github.com/saint-13/Linux_Dynamic_Wallpapers/ for example). And there are tools available to create them https://github.com/maoschanz/dynamic-wallpaper-editor
I haven't been able to find any official spec, but the xml format seems to be quite straight forward.
An example of the default Fedora 41 Wallpaper
The text was updated successfully, but these errors were encountered: