This is not actually my find but my friend so all credit goes to PmP. I just got so excited I had to share the tip!
I had set up rotating wallpapers using hyprpaper but was getting annoyed that they blinked into existence when switching instead of fading smoothly into the next.
My developer friend figured out that you can use regular hyprland layer rules with hl.animation to create a smooth transition between wallpapers.
Add this in hyprland.lua
hl.animation({ leaf = "fadeLayers", enabled = true, speed = 20, bezier = "default" })(where speed = how fast the transitioning happens)
along with this
hl.layer_rule({
name = "wallpaper-crossfade",
match = { namespace = "^hyprpaper$" },
animation = "fade",
})
Now if you have a rotating wallpapers script (using hyprpaper) it will beautifully fade between the wallpapers on switch (or if you just change the wallpaper using 'hyprctl hyprpaper wallpaper …)
Note that you will also want to disable the hyprland logo and turn off force_default_wallpaper, otherwise it will show up between the fading wallpapers.
hl.config({
misc = {
force_default_wallpaper = 0,
disable_hyprland_logo = true,
background_color = 0x1a1a1a,
},
})
Also I assume that animations have to be enabled for it to work.
animations = {
enabled = true,
}
Now you can use the lightweight hyprpaper while also getting beautiful animations on switching :)