1XSNOW(6) User Commands XSNOW(6)
2
3
4
6 xsnow - Snow and Santa on your desktop
7
9 xsnow [OPTION]...
10
12 Xsnow shows an animation of Santa and snow on your desktop. Xsnow can
13 also run in one or more windows, see options -xwininfo, -id . (These
14 options only work satisfactorily in an X11 environment.) Xsnow depends
15 on an X11 environment. This is forced by setting the environment
16 variable GDK_BACKEND=x11 before initializing the GTK. Hopefully, this
17 will ensure that xsnow also runs in a Wayland environment for some
18 time.
19
20 If xsnow is misbehaving, try to remove the file $HOME/.xsnowrc.
21
22 General options:
23 Below:
24 <n> denotes an unsigned decimal (e.g 123) or octal (e.g. 017) or hex
25 (e.g. 0x50009) number.
26 <c> denotes a string like "red" or "#123456".
27 <f> denotes a file name, like "/home/rick/Pictures/background.jpg".
28
29
30 -h, -help
31 print this text.
32
33 -H, -manpage
34 print man page.
35
36 -v, -version
37 prints version of xsnow.
38
39 -changelog
40 prints ChangeLog.
41
42 -display <c>
43 Drop the snowflakes on the given display. Make sure the display
44 is nearby, so you can hear them enjoy...
45
46 -screen <n>
47 If you have multiple monitors: snow in monitor n.
48 -1: use all monitors (default: -1)
49 Note: for this to work, Xinerama has to be functional.
50
51 -outline <n>
52 1: draw outline around snow window. 0: no outline.
53 Default: 0.
54
55 -vintage
56 Run xsnow in vintage settings.
57
58 -defaults
59 Do not read config file (see FILES).
60
61 -noconfig
62 Do not read or write config file (see FILES).
63
64 -hidemenu
65 Start with hidden interactive menu.
66
67 -nomenu
68 Do not show interactive menu.
69
70 -scale <n>
71 Apply scalefactor (default: 100).
72
73 -doublebuffer <n>
74 1: use double buffering; 0: do not use double buffering
75 (default: 1). Only effective with '-root' or '-id' or
76 '-xwininfo'.
77
78 -transparency <n>
79 Transparency in % (default: 0)
80
81 -theme <n>
82 1: use xsnow theme for menu; 0: use system theme (default: 1)
83
84 -checkgtk <n>
85 0: Do not check gtk version before starting the user interface.
86 1: Check gtk version before starting the user interface.
87 (default: 1).
88
89 -id <n>, -window-id <n>
90 Snow in window with id (for example from xwininfo).
91
92 -desktop
93 Act as if window is a desktop.
94
95 -allworkspaces <n>
96 0: use one desktop for snow, 1: use all desktops (default: 1).
97
98 -above Snow above your windows. Default is to snow below your windows.
99 NOTE: in some environments this results in an un-clickable
100 desktop.
101
102 -xwininfo
103 Use a cursor to point at the window you want the snow to be
104 fallen in.
105
106 -stopafter <n>
107 Stop xsnow after so many seconds.
108
109 -root Force to paint on (virtual) root window.
110 Use this for xscreensaver:
111 Make sure xscreensaver is running, either as a start-up
112 application
113 or from the command line, e.g:
114 nohup xscreensaver &
115 or
116 nohup xscreensaver -no-capture-stderr &
117 Run the program xscreensaver-demo to create the file
118 ~/.xscreensaver
119 In the file ~.xscreensaver add after the line 'programs:' this
120 line:
121 xsnow -root
122 Use the program xscreensaver-demo to select xsnow as
123 screensaver.
124 You probably want to select: Mode: Only One Screen Saver.
125
126 -bg <f>
127 file to be used as background when running under xscreensaver.
128
129 -noisy Write extra info about some mouse clicks, X errors etc, to
130 stdout.
131
132 -cpuload <n>
133 How busy is your system with xsnow: the higher, the more load on
134 the system (default: 100).
135
136 Snow options:
137 -snowflakes <n>
138 The higher, the more snowflakes are generated per second.
139 Default: 100.
140
141 -blowsnow
142 (Default) Animate blow-off snow.
143
144 -noblowsnow
145 Do not animate blowing snow from trees or windows
146
147 -sc <c>
148 Use the given string as color for the flakes (default: #fffafa).
149
150 -snowspeedfactor <n>
151 Multiply the speed of snow with this number/100 (default: 100).
152
153 -snowsize <n>
154 Set size of (non-vintage) snow flakes (default: 8).
155
156 -snow (Default) Show snow.
157
158 -nosnow -nosnowflakes
159 Do not show snow.
160
161 -flakecountmax <n>
162 Maximum number of active flakes (default: 300).
163
164 -blowofffactor <n>
165 The higher, the more snow is generated in blow-off scenarios
166 (default: 40).
167
168 Tree options:
169 -treetype <n>[,<n> ...]
170 Choose tree types: minimum 0, maximum 7 (default:
171 1,2,3,4,5,6,7,). Thanks to Carla Vermin for numbers >=3!
172 Credits: Image by b0red on Pixabay.
173
174 -treetype all
175 (Default) Use all non-vintage available tree types.
176
177 -tc <c>
178 Use the given string as the color for the vintage tree (default:
179 #7fff00). Works only for treetype 0.
180
181 -notrees
182 Do not display the trees.
183
184 -showtrees
185 (Default) Display the trees.
186
187 -trees <n>
188 Desired number of trees. Default 10.
189
190 -treefill <n>
191 Region in percents of the height of the window where trees grow
192 (default: 30).
193
194 -treeoverlap
195 Allow scenery items to overlap each other (default).
196
197 -notreeoverlap
198 Do not allow scenery items to overlap each other.
199
200 Santa options:
201 -showsanta
202 (Default) Display Santa running all over the screen.
203
204 -nosanta
205 Do not display Santa running all over the screen.
206
207 -showrudolph
208 (Default) With Rudolph.
209
210 -norudolph
211 No Rudolph.
212
213 -santa <n>
214 The minimum size of Santa is 0, the maximum size is 4. Default
215 is 3. Thanks to Thomas Linder for the (big) Santa 2! Santa 3
216 is derived from Santa 2, and shows the required eight reindeer.
217 The appearance of Santa 4 may be a surprise, thanks to Carla
218 Vermin for this one.
219
220 -santaspeedfactor <n>
221 The speed Santa should not be excessive if he doesn't want to
222 get fined. The appropriate speed for the Santa chosen will be
223 multiplied by santaspeedfactor/100 (default: 100).
224
225 Celestial options:
226 -wind (Default) It will get windy now and then.
227
228 -nowind
229 By default it gets windy now and then. If you prefer quiet
230 weather specify -nowind.
231
232 -whirlfactor <n>
233 This sets the whirl factor, i.e. the maximum adjustment of the
234 horizontal speed. The default value is 100.
235
236 -windtimer <n>
237 With -windtimer you can specify how often it gets windy. It's
238 sort of a period in seconds, default value is 30.
239
240 -stars <n>
241 The number of stars (default: 20).
242
243 -meteors
244 (Default) Show meteors.
245
246 -nometeors
247 Do not show meteors.
248
249 -meteorfrequency
250 Frequency of falling of meteors, 0..100 (default: 40).
251
252 -moon <n>
253 1: show moon, 0: do not show moon (default: 1).
254 Picture of moon thanks to Pedro Lasta on Unsplash.
255 https://unsplash.com/photos/wCujVcf0JDw
256
257 -moonspeed <n>
258 Speed of moon in pixels/minute (default: 120).
259
260 -moonsize <n>
261 Realtive size of moon (default: 100).
262
263 -halo <n>
264 1: show halo around moon, 0: do not show halo (default: 1).
265
266 -halobrightness <n>
267 Brightness of halo (default: 25).
268
269 -aurora <n>
270 To show (1) or not to show(0) aurora (default: 1).
271 On most desktops aurora works, but not on all. Try!
272
273 -auroraleft
274 Place aurora in top left of screen.
275
276 -auroramiddle
277 Place aurora in top middle of screen.
278
279 -auroraright
280 Place aurora in top right of screen (default).
281
282 -aurorawidth <n>
283 Width of aurora in percentage of screen width (default: 60).
284
285 -aurorabase <n>
286 Height of aurora's base line in percentage of screen height
287 (default: 50).
288
289 -auroraheight <n>
290 Height of aurora (default: 30).
291
292 -auroraspeed <n>
293 Animation speed of aurora (default: 50).
294 10: about real value, 100: timelapse.
295
296 -aurorabrightness <n>
297 Brightness of aurora (default: 15).
298
299 Fallen snow options:
300 -wsnowdepth <n>
301 Maximum thickness of snow on top of windows (default: 30).
302
303 -ssnowdepth <n>
304 Maximum thickness of snow at the bottom of the screen (default:
305 50).
306
307 -maxontrees <n>
308 Maximum number of flakes on trees. Default 200.
309
310 -keepsnowonwindows
311 (Default) Keep snow on top of the windows.
312
313 -nokeepsnowonwindows
314 Do not keep snow on top of the windows.
315
316 -keepsnowonscreen
317 (Default) Keep snow at the bottom of the screen.
318
319 -nokeepsnowonscreen
320 Do not keep snow at the bottom of the screen.
321
322 -keepsnowontrees
323 (Default) Keep snow on trees.
324
325 -nokeepsnowontrees
326 Do not keep snow on trees.
327
328 -keepsnow
329 (Default) Have snow sticking anywhere.
330
331 -nokeepsnow
332 Do not have snow sticking anywhere.
333
334 -fluffy
335 (Default) Create fluff on fallen snow.
336
337 -nofluffy
338 Do not create fluff on fallen snow.
339
340 -offsetx <n>
341 Correction for window-manager provided x-coordinate of window.
342 Default 4.
343
344 -offsety <n>
345 Correction for window-manager provided y-coordinate of window.
346 Default 0.
347
348 -offsetw <n>
349 Correction for window-manager provided width of window. Default
350 -8.
351
352 -offsets <n>
353 Correction for bottom coordinate of your screen. A negative
354 value lifts the xsnow screen up. Default 0.
355
356 -ignoretop <n>
357 Do not collect snow on window > 0.8*width of screen and closer
358 than <n> pixels from the top. Sometimes an hidden window is
359 sitting there, but treated as a normal window by xsnow. Default
360 0.
361
362 -ignorebottom <n>
363 Analog to -ignoretop, but now for the bottom. Default 0.
364
365 Birds options:
366 -anarchy <n>
367 Anarchy factor ( 0..100 default: 50).
368
369 -birdscolor <c>
370 Use the given string as color for the birds (default: #361A07).
371
372 -birdsonly <n>
373 Show only birds ( 0/1 default: 0).
374
375 -birdsspeed <n>
376 Speed of birds ( 0..300 default: 100).
377
378 -disweight <n>
379 Eagerness to keep desired distance ( 0..100 default: 20).
380
381 -focuscentre <n>
382 Eagerness to fly to the focus ( 0..300 default: 100).
383
384 -followneighbours <n>
385 Eagerness to follow neighbours ( 0..100 default: 30).
386
387 -nbirds <n>
388 Number of birds ( 0..400 default: 70).
389
390 -neighbours <n>
391 Number of neighbours to watch ( 0..20 default: 7).
392
393 -prefdistance <n>
394 Preferred distance to neighbours ( 0..100 default: 40).
395
396 -showbirds <n>
397 Show birds ( 0/1 default: 1).
398
399 -showattr <n>
400 Show attraction point ( 0/1 default: 0).
401
402 -attrspace <n>
403 Vertical space to be used by the attraction point (default: 40).
404
405 -followsanta <n>
406 Birds like Santa ( 0/1 default: 0).
407
408 -viewingdistance <n>
409 Viewing distance ( 0..95 default: 40).
410
411 -birdsscale <n>
412 Scalefactor used painting the birds (default: 100).
413
414 FILES
415 $HOME/.xsnowrc
416 Settings are read from and written to this file. See flags
417 -noconfig and -defaults how to influence this behaviour.
418 NOTE: the following settings are not read or written:
419 -above -defaults -desktop -fullscreen -noconfig -id
420 -nomenu -stopafter -xwininfo -display -noisy
421 -checkgtk
422
423
424 $HOME/xsnow/pixmaps/tree.xpm
425 If present, xsnow will try this file for displaying the trees.
426 The format must be xpm (X PixMap) format, see
427 https://en.wikipedia.org/wiki/X_PixMap .
428 NOTE: when this file is present, no menu will appear.
429
430
431 $HOME/xsnow/pixmaps/santa<n>.xpm
432 where <n> = 1,2,3,4. If present, xsnow will try this files (4
433 of them) for displaying Santa. The format must be xpm (X PixMap)
434 format, see https://en.wikipedia.org/wiki/X_PixMap .
435 NOTE: when these files are present, no menu will appear.
436
437
438 EXAMPLES
439 $ xsnow -defaults # run with defaults.
440 $ xsnow # run using values from the config file.
441 $ xsnow -treetype 1,2 # use tree types 1 and 2.
442
443 WINDOW MANAGER ISSUES
444 In general, xsnow works better when using a compositing window manager
445 like xcompmgr, compton or picom. However, with some window managers
446 (FVWM for example), the xsnow-window is transparent, but not
447 click-through. Flags to be tried in this case include: -root,
448 -doublebuffer, -xwininfo, -id.
449 Here follow some window managers with their issues:
450
451
452 Tiling window managers
453 Here you need to float windows with class=Xsnow.
454
455 AWESOME
456 Without compositor: no issues.
457 With compositor: no click-through xsnow window, and issues with
458 multi-monitor setup.
459
460 BSPWM No issues if you add to your bspwmrc (the bspwm configuration
461 file):
462 bspc rule -a Xsnow state=floating border=off
463
464 CINNAMON
465 No issues.
466
467 DWM No issues, except the "Below Windows" setting in the "settings"
468 panel.
469
470 ENLIGHTENMENT
471 With one monitor: no issuses.
472 With more montors: probems with showing in 'all monitors'
473
474 FLUXBOX
475 Without compositor: no issues.
476 With compositor: no click-through xsnow window
477
478 FVWM Without compositor: no issues.
479 With compositor: no click-through xsnow window
480
481 GNOME on Xorg
482 No issues.
483
484 GNOME on Wayland
485 Most windows don't catch snow.
486
487 HERBSTLUFTWM
488 No issues.
489
490 I3 Without compositor: windows don't catch snow, use the next line
491 in "config":
492 for_window [class="Xsnow"] floating enable;border none
493 With compositor: unworkable.
494
495 JVM No issues.
496
497 LXDE With compositor: no issues.
498 Without compositor: works with one monitor.
499 Maybe you need to run with the flag -xwininfo
500
501 LXQT Without compositor: unworkable. With compositor: no issues.
502
503 MATE No issues.
504
505 OPENBOX
506 No issues.
507
508 PLASMA (KDE)
509 No issues.
510
511 SPECTRWM
512 Various issues. In any case you need in spectrwm.conf:
513 quirk[Xsnow] = FLOAT
514
515 TWM Without compositor: no issues.
516 With compositor: no click-through xsnow window and
517 you need to tweak settings->lift snow on windows.
518
519 WINDOW MAKER
520 Without compositor: no issues. With compositor: no
521 click-through xsnow window
522
523 XFCE No issues when compositing is on, unworkable when compositing is
524 off.
525 See settings -> Window Manager Tweaks -> Compositor
526
527 XMONAD No issues if you add to your xmonad.hs:
528 import XMonad.Hooks.EwmhDesktops
529 xmonad $ ewmh $ defaultConfig
530 in the ManageHook section:
531 className = ? "Xsnow" --> doFloat
532
533 BUGS
534 - Xsnow needs a complete rewrite: the code is a mess.
535 - The flags are not consistent, caused by trying to be
536 compatible with older versions.
537 - Xsnow stresses the Xserver too much.
538 - Xsnow does run in Wayland, but will not snow on all windows.
539 - Xsnow tries to create a click-through window. This is not successful
540 in for example FVWM/xcompmgr. In that case, xsnow tries to keep
541 the snow window below all others, resulting in a transient effect
542 when you click on the desktop. Sadly, no FVWM menu will appear...
543 - Remnants of fluffy snow can persist after removing the
544 fallen snow. These will gradually disappear, so no big deal.
545 - Remnants of meteors can persist after passage of Santa.
546 These will eventually be wiped out by snow or Santa.
547 - Xsnow tries to adapt its snowing window if the display
548 settings are changed while xsnow is running.
549 This does not function always well.
550 - Xsnow does not play well with 'xcompmgr -a'. In some environments
551 (Raspberry 64 bit) xcompmgr is started with the flag '-a',
552 resulting in a black snow window. Remedy:
553 In a terminal window type:
554 killall xcompmgr
555 nohup xcompmgr -n &
556 and try again.
557 - In XFCE, compositing must be enabled for xsnow.
558 Settings -> Window Manager Tweaks -> Compositor -> Enable display
559 compositing
560 - In multi-screen environments, it depends on the display settings
561 if it is snowing on all screens. Experiment!
562
564 This is free software; see the source for copying conditions. There is
565 NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
566 PURPOSE.
567
568
569
570xsnow-3.6.0 2022 XSNOW(6)