The one thing Monkey, my youngest son, wanted from his move from Windows to Linux was animated wallpaper. I’m not quite sure how that idea came about, but I told him that I’d try.
The thing is, he knows what kind of time scale I work on. So, armed with a fresh Linux install, he decided to try and add this functionality himself. He successfully installed Komorebi from the command line (hell yes!), but it ended up being buggy and not playing well with Cinnamon. I was able to manually uninstall it, and went back to searching.
After a while of coming up with nothing, I tried Komorebi again, this time from a .deb package. Unfortunately, though I was able to get a little bit farther in configuring it this time around, it still had the same problems as before. Back to the drawing board.
I stumbled across a notice that the newest version of KDE supported animated backgrounds. I did a little research and discovered that this would work on the newest version of Ubuntu, which Linux Mint is based on. Great, let’s do this! There were a few hoops to jump through, but I got KDE installed and running. I’d have to re-work a bunch of the WINE stuff that let him play games, but that was doable. Right-click in the desktop, select change desktop background and… no support for gifs or movs or anything else?
I checked the KDE version, and it was one behind. That didn’t make sense, unless… yup, Linux Mint 21.1 is based on one Ubuntu version back, which does not support the newest version of KDE.
There was some head-desking here. Just some. And then back, once again, to the drawing board.
Eventually, EVENTUALLY, I came upon wallset. It’s command-line only, and it’s all manually configured. Not a problem. Monkey can handle the CLI, especially once I show him how. (Wallset’s github page has very straightforward instructions on usage.) The only drawback is that it doesn’t start on boot. I was using a guide at thefilibusterblog.com, which said to do this:
Remember that when you boot into your desktop next time, the live wallpaper will get replaced with your old one. To fix this, you need to configure wallset to run automatically at boot. You can use crontab to do so.
Open the crontab file by typing:
crontab -e
Add the following line at the end of the file, then save and exit:
@reboot env DISPLAY=:0 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus /usr/local/bin/wallset -V /complete/path/to/video.mp4
https://thefilibusterblog.com/how-to-set-live-wallpapers-and-animated-backgrounds-on-linux/
While this does work, unfortunately it also re-adds the specific video to Wallset’s queue list. So, rather than just starting it on boot, you’re starting it on boot AND adding to a movie playlist every single time you boot. Instead, I changed the crontab line to this:
@reboot env DISPLAY=:0 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus /usr/local/bin/wallset -I 1
This will load the first video already in the list. Of course, you can change the 1 to whichever video in the list that you’d like to load. This worked flawlessly. My only caution is that this will tax your video card, so make sure that you have a decent one, and have the proper drivers loaded for it.
I hope this post has been useful!