I want snow fall on my desktop really badly.

Tried Xsnow (with Mate/Marco, Mate/Compiz and KDE/Kwin) but doesn't work.
Snow plugin for Compiz doesn't work anymore either.
Snow feature of KDE was removed.

Is there any other way to get the snow?

  • 1
    oreaus.googlepages.com/snow.tar. try grabbing a fresh copy, extract it into your compiz directory and make make clean make install – h3rrmiller Nov 14 '12 at 17:51
  • @h3rrmiller Where is my compiz directory? Tried ~/.compiz and ~/.compiz/plugins, it always says No rule to make target ``build/snow.lo', needed by ``c-build-objs'. Stop. – Wolf480pl Nov 14 '12 at 19:08
  • 1
    you need to extract snow.tar into your ~/.compiz directory, then navigate to the snow directory and run the makes – h3rrmiller Nov 14 '12 at 19:43
  • 12
    Depending on your location, you might be able to take it out of the house — during winter — and just wait for it to snow :) – Gallaecio Nov 14 '12 at 22:03
  • 1
    xsnow works fine for me with Gnome and Ubuntu 12.04 (sudo apt-get install xsnow). Not sure if you want snow badly enough to switch to Gnome :) – Thomas Bratt Nov 18 '12 at 13:00

Use xsnow after having killed the desktop application that covers the root window. Run xkill and click on the desktop. That works at least in LXDE where pcmanfm usually handles the desktop, but should work in other environments as long as they don't require there being a desktop window in the background and don't restart it automatically when it dies.

  • Unfortunately, Mate restarts the desktop app. At leas I saw xsnow working for a second. – Wolf480pl Dec 1 '12 at 8:38
  • Same problem for me too while trying to run xpenguins. Mate restarts desktop as soon as I kill it. It turns out one has to use some simple window managers to use xsnow. – Abinash Dash Mar 12 '18 at 10:53

I thought that a lua script (started by Conky) would be a good tool for this job. There's loads of conky examples on the internet (e.g. here and here), which could be used to make it snow on your desktop only when it's snowing outside, for example.

I saw on a forum that some guy had posted some video tutorials on how to write a lua script for fireworks as well as snow, but unfortunately he's taken them down from YouTube...

There is however some leftover code that could be used as a template, but unfortunately doesn't work in isolation.

If I had the time and inclination to learn lua and fix this myself, here's what I'd do:

  1. Install conky. Mint probably has it in its package manager.
  2. Save that snowfall fragment somewhere (e.g. ~/.conky/lua/snowfall.lua)
  3. Add the following lines to ~/.conkyrc

    lua_load /path/to/home/.conky/lua/snowfall.lua
    lua_draw_hook_pre snowday

  4. Run conky. Look for errors, and debug / comment lines out / add functions where necessary...

This is the basics of the snowday function, as usable by conky. I'd love to see this work actually!
What's missing? The timer and Vector classes, at least..

function conky_snowday()

    local emt2 = ParticleEmitter(Vector(0,0,400))
        timer.Create("fuller", 0.1, 0, function()
        for i=1, 1000 do
            local snowparty = emt2:Add("particle/snow",LocalPlayer():GetPos() + Vector(0,0,1000))
  • The function was originally made for GarrysMod, right? I'm afraid the only class here that is not missing is math. Also, "particle/snow" is probably a Valve particle file, and most of particle parameters are set in there. It would be hard to port it eg. to cairo (which is used by conky configs to draw all the fancy things). – Wolf480pl Dec 1 '12 at 9:34
  • Yes, you're right... I spent quite a while trying to find those Vector and timer classes, but it seems they'd need to be downloaded through Valve. So, particle/snow is probably also locked up in there, and would no doubt be written for DirectX, so yes, would be hard to port to OpenGL :( So I later had a look through the NVidia SDK samples; there's a smoke example, but which uses CUDA. xsnow seems to be the only current option... – Alex Leach Dec 1 '12 at 11:25

For all your holiday decorations try this:



There is a new version of xsnow, working on many desktops (including raspbian): https://www.ratrabbit.nl/ratrabbit/content/xsnow/introduction

And it is also available on sourceforge:



Not so sure whether it will work for xsnow but here's what I did to solve xpenguins issue.
1. Install openbox and obconf
2. Logout of current sesion and start an openbox session.
3. Right Click -> start terminal -> xpenguins (may be xsnow for you)
For detailed description check this answer.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.