Skip to content

Instantly share code, notes, and snippets.

@trongthanh
Last active July 10, 2024 13:25
Show Gist options
  • Save trongthanh/7d632e90687e1bc219e1f3262d337702 to your computer and use it in GitHub Desktop.
Save trongthanh/7d632e90687e1bc219e1f3262d337702 to your computer and use it in GitHub Desktop.
macOS Mojave dynamic background re-implement as GTK+ background slideshow. Background images are changed to reflect the time of the day.
<!-- Instructions:
- Download and unzip Mojave dynamic background here: https://files.rb.gd/mojave_dynamic.zip
- Rename the extracted folder as "mojave-background" (Excuse the trouble but I renamed it on my machine and already use that path in the XML file)
- Save this xml file next to the Mojave background files
- Fix the path to the background images below (better using absolute path)
- Lastly, either:
+ GNOME: Use gnome-tweaks tool to select this XML as wallpaper (as default wallpaper settings won't let you choose wallpaper from custom path)
+ MATE: Go to background setting (in Appearance) > Choose +Add... > make sure **All files** filter is selected at the bottom right > Then choose mojave.xml
-->
<background>
<starttime>
<year>2014</year>
<month>01</month>
<day>11</day>
<hour>0</hour>
<minute>00</minute>
<second>00</second>
</starttime>
<!-- 00:00 -->
<static>
<duration>10795.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_15.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_15.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_16.jpeg</to>
</transition>
<!-- 03:00 -->
<static>
<duration>10795.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_16.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_16.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_1.jpeg</to>
</transition>
<!-- 05:00 -->
<static>
<duration>3595.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_1.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_1.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_2.jpeg</to>
</transition>
<!-- 06:00 -->
<static>
<duration>3595.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_2.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_2.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_3.jpeg</to>
</transition>
<!-- 07:00 -->
<static>
<duration>3595.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_3.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_3.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_4.jpeg</to>
</transition>
<!-- 08:00 -->
<static>
<duration>3595.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_4.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_4.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_5.jpeg</to>
</transition>
<!-- 09:00 -->
<static>
<duration>3595.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_5.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_5.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_6.jpeg</to>
</transition>
<!-- 10:00 -->
<static>
<duration>3595.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_6.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_6.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_7.jpeg</to>
</transition>
<!-- 11:00 -->
<static>
<duration>7195.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_7.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_7.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_8.jpeg</to>
</transition>
<!-- 13:00 -->
<static>
<duration>3595.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_8.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_8.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_9.jpeg</to>
</transition>
<!-- 14:00 -->
<static>
<duration>3595.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_9.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_9.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_10.jpeg</to>
</transition>
<!-- 15:00 -->
<static>
<duration>3595.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_10.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_10.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_11.jpeg</to>
</transition>
<!-- 16:00 -->
<static>
<duration>3595.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_11.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_11.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_12.jpeg</to>
</transition>
<!-- 17:00 -->
<static>
<duration>3595.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_12.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_12.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_13.jpeg</to>
</transition>
<!-- 18:00 -->
<static>
<duration>7195.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_13.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_13.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_14.jpeg</to>
</transition>
<!-- 20:00 -->
<static>
<duration>10795.0</duration>
<file>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_14.jpeg</file>
</static>
<transition type="overlay">
<duration>5.0</duration>
<from>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_14.jpeg</from>
<to>/home/thanh/Pictures/wallpapers/mojave-background/mojave_dynamic_15.jpeg</to>
</transition>
</background>
@KremlinRoot
Copy link

Hello dude, thanks fot this guide but I have error with day hour, when is day, the wallpaper is night and when is night, wallpaper is day. How I can fix this inverse hours?

@saint-13
Copy link

saint-13 commented Mar 30, 2021

Anyone else having issues with smooth transitions? I'm on Ubuntu 20.04, and the pictures just abruptly change from one to another.

hello @guvarallo, that's because of short transition time (only 5 sec), I edited this script, and added smooth transition. i will upload that script in my GitHub with bunch of other dynamic wallpapers ( here ). Also everyone can easily modify or make new wallpaper scripts with program called "Dynamic Wallpaper Editor", which is preinstalled on Manjaro gnome edition.

Screenshot from 2021-03-30 17-05-33

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