Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
XSNOW(6)			 User Commands			      XSNOW(6)

NAME
       xsnow - Snow and	Santa on your desktop

SYNOPSIS
       xsnow [OPTION]...

DESCRIPTION
       Xsnow  shows an animation of Santa and snow on your desktop.  Xsnow can
       also run	in one or more windows,	see options -xwininfo, -id  .	(These
       options only work satisfactorily	in an X11 environment.)	 Xsnow depends
       on  an  X11  environment.  This	is  forced  by setting the environment
       variable	GDK_BACKEND=x11	before initializing the	GTK.  Hopefully,  this
       will  ensure  that  xsnow  also	runs in	a Wayland environment for some
       time.

       If xsnow	is misbehaving,	try to remove the file $HOME/.xsnowrc.

   General options:
       Below:
       <n> denotes an unsigned decimal (e.g 123) or octal (e.g.	 017)  or  hex
       (e.g. 0x50009) number.
       <c> denotes a string like "red" or "#123456".
       <f> denotes a file name,	like "/home/rick/Pictures/background.jpg".

       -h, -help
	      print this text.

       -H, -manpage
	      print man	page.

       -v, -version
	      prints version of	xsnow.

       -changelog
	      prints ChangeLog.

       -selfrep
	      put tar ball on stdout, so you can do:
	      xsnow -selfrep > xsnow.tar.gz

       -display	<c>
	      Drop the snowflakes on the given display.	 Make sure the display
	      is nearby, so you	can hear them enjoy...

       -screen <n>
	      If you have multiple monitors: snow in monitor n.
	      -1: use all monitors (default: -1)
	      Note: for	this to	work, Xinerama has to be functional.

       -outline	<n>
	      1: draw outline around snow window. 0: no	outline.
	      Default: 0.

       -vintage
	      Run xsnow	in vintage settings.

       -defaults
	      Do not read config file (see FILES).

       -noconfig
	      Do not read or write config file (see FILES).

       -hidemenu
	      Start with hidden	interactive menu.

       -nomenu
	      Do not show interactive menu.

       -lang <c>
	      Set  language,  example: -lang it, see LANGUAGES below. Default:
	      sys.

       -scale <n>
	      Apply scalefactor	(default: 100).

       -doublebuffer <n>
	      1:  use  double  buffering;  0:  do  not	use  double  buffering
	      (default:	  1).	 Only  effective  with	'-root'	 or  '-id'  or
	      '-xwininfo'.

       -transparency <n>
	      Transparency in (default:	0)

       -theme <n>
	      1: use xsnow theme for menu; 0: use system theme (default: 1)

       -checkgtk <n>
	      0: Do not	check gtk version before starting the user  interface.
	      1:  Check	 gtk  version  before  starting	 the  user  interface.
	      (default:	1).

       -id <n>,	-window-id <n>
	      Snow in window with id (for example from xwininfo).

       --window-id <n>
	      see -id.

       -desktop
	      Act as if	window is a desktop.

       -allworkspaces <n>
	      0: use one desktop for snow, 1: use all desktops (default: 1).

       -above Snow above your windows. Default is to snow below	your  windows.
	      NOTE:  in	 some  environments  this  results  in an un-clickable
	      desktop.

       -xwininfo
	      Use a cursor to point at the window you  want  the  snow	to  be
	      fallen in.

       -stopafter <n>
	      Stop xsnow after so many seconds.

       -root, --root
	      Force to paint on	(virtual) root window.
	      Use this for xscreensaver:
	      Make   sure  xscreensaver	 is  running,  either  as  a  start-up
	      application
	      or from the command line,	e.g:
		 nohup xscreensaver &
	      or
		  nohup	xscreensaver -no-capture-stderr	&
	      Run  the	program	  xscreensaver-demo   to   create   the	  file
	      ~/.xscreensaver
	      In  the  file ~.xscreensaver add after the line 'programs:' this
	      line:
		  xsnow	-root
	      Use  the	program	  xscreensaver-demo   to   select   xsnow   as
	      screensaver.
	      You probably want	to select: Mode: Only One Screen Saver.

       -bg <f>
	      file to be used as background when running under xscreensaver.

       -noisy Write  extra  info  about	 some  mouse  clicks, X	errors etc, to
	      stdout.

       -cpuload	<n>
	      How busy is your system with xsnow: the higher, the more load on
	      the system (default: 100).

   Snow	options:
       -snowflakes <n>
	      The higher,  the	more  snowflakes  are  generated  per  second.
	      Default: 100.

       -blowsnow
	      (Default)	Animate	blow-off snow.

       -noblowsnow
	      Do not animate blowing snow from trees or	windows

       -sc <c>
	      Use the given string as color for	the flakes (default: #fffafa).

       -sc2 <c>
	      Use  the	given  string as second	color for the flakes (default:
	      #87ceff).

       -enablesc2 <n>
	      1: enable	usage of second	color for the flakes (default: 0).

       -snowspeedfactor	<n>
	      Multiply the speed of snow with this number/100 (default:	100).

       -snowsize <n>
	      Set size of (non-vintage)	snow flakes (default: 8).

       -snow  (Default)	Show snow.

       -nosnow -nosnowflakes
	      Do not show snow.

       -flakecountmax <n>
	      Maximum number of	active flakes (default:	300).

       -blowofffactor <n>
	      The higher, the more snow	is  generated  in  blow-off  scenarios
	      (default:	40).

   Tree	options:
       -treetype <n>[,<n> ...]
	      Choose	tree   types:	minimum	  0,   maximum	 8   (default:
	      1,2,3,4,5,6,7,).	 Thanks	 to  Carla  Vermin  for	 numbers  >=3!
	      Credits: Image by	b0red on Pixabay.

       -treetype all
	      (Default)	Use all	non-vintage available tree types.

       -tc <c>
	      Use the given string as the color	for the	vintage	tree (default:
	      #7fff00).	 Works only for	treetype 0.

       -notrees
	      Do not display the trees.

       -showtrees
	      (Default)	Display	the trees.

       -trees <n>
	      Desired number of	trees. Default 10.

       -treefill <n>
	      Region  in percents of the height	of the window where trees grow
	      (default:	30).

       -treescale <n>
	      Scale scenery (default: 100).

       -treeoverlap
	      Allow scenery items to overlap each other	(default).

       -notreeoverlap
	      Do not allow scenery items to overlap each other.

   Santa options:
       -showsanta
	      (Default)	Display	Santa running all over the screen.

       -nosanta
	      Do not display Santa running all over the	screen.

       -showrudolph
	      (Default)	With Rudolph.

       -norudolph
	      No Rudolph.

       -santa <n>
	      The minimum size of Santa	is 0, the maximum size is  4.  Default
	      is  3.   Thanks to Thomas	Linder for the (big) Santa 2!  Santa 3
	      is derived from Santa 2, and shows the required eight  reindeer.
	      The  appearance  of  Santa  4 may	be a surprise, thanks to Carla
	      Vermin for this one.

       -santaspeedfactor <n>
	      The speed	Santa should not be excessive if he  doesn't  want  to
	      get  fined.  The	appropriate speed for the Santa	chosen will be
	      multiplied by santaspeedfactor/100 (default: 100).

       -santascale <n>
	      The scale	to be used when	drawing	Santa (default:	100).

   Celestial options:
       -wind  (Default)	It will	get windy now and then.

       -nowind
	      By default it gets windy now  and	 then.	If  you	 prefer	 quiet
	      weather specify -nowind.

       -whirlfactor <n>
	      This  sets  the whirl factor, i.e. the maximum adjustment	of the
	      horizontal speed.	The default value is 100.

       -windtimer <n>
	      With -windtimer you can specify how often	it gets	  windy.  It's
	      sort of a	period in seconds, default value is 30.

       -stars <n>
	      The number of stars (default: 20).

       -meteors
	      (Default)	Show meteors.

       -nometeors
	      Do not show meteors.

       -meteorfrequency
	      Frequency	of falling of meteors, 0..100 (default:	40).

       -moon <n>
	      1: show moon, 0: do not show moon	(default: 1).
	      Picture of moon thanks to	 Pedro Lasta on	Unsplash.
	      https://unsplash.com/photos/wCujVcf0JDw

       -moonspeed <n>
	      Speed of moon in pixels/minute (default: 120).

       -moonsize <n>
	      Relative size of moon (default: 100).

       -mooncolor <n>
	      Color of moon 0: yellow-ish; 1: white-ish	(default: 0).

       -halo <n>
	      1: show halo around moon,	0: do not show halo (default: 1).

       -halobrightness <n>
	      Brightness of halo (default: 25).

       -aurora <n>
	      To show (1) or not to show(0) aurora (default: 1).
		On most	desktops aurora	works, but not on all. Try!

       -auroraleft
	      Place aurora in top left of screen.

       -auroramiddle
	      Place aurora in top middle of screen.

       -auroraright
	      Place aurora in top right	of screen (default).

       -aurorawidth <n>
	      Width of aurora in percentage of screen width (default: 60).

       -aurorabase <n>
	      Height  of  aurora's  base  line	in percentage of screen	height
	      (default:	50).

       -auroraheight <n>
	      Height of	aurora (default: 30).

       -auroraspeed <n>
	      Animation	speed of aurora	(default: 50).
		 10: about real	value, 100: timelapse.

       -aurorabrightness <n>
	      Brightness of aurora (default: 15).

   Fallen snow options:
       -wsnowdepth <n>
	      Maximum thickness	of snow	on top of windows (default: 30).

       -ssnowdepth <n>
	      Maximum thickness	of snow	at the bottom of the screen  (default:
	      50).

       -maxontrees <n>
	      Maximum number of	flakes on trees. Default 200.

       -keepsnowonwindows
	      (Default)	Keep snow on top of the	windows.

       -nokeepsnowonwindows
	      Do not keep snow on top of the windows.

       -keepsnowonscreen
	      (Default)	Keep snow at the bottom	of the screen.

       -nokeepsnowonscreen
	      Do not keep snow at the bottom of	the screen.

       -keepsnowontrees
	      (Default)	Keep snow on trees.

       -nokeepsnowontrees
	      Do not keep snow on trees.

       -keepsnow
	      (Default)	Have snow sticking anywhere.

       -nokeepsnow
	      Do not have snow sticking	anywhere.

       -fluffy
	      (Default)	Create fluff on	fallen snow.

       -nofluffy
	      Do not create fluff on fallen snow.

       -offsetx	<n>
	      Correction  for  window-manager provided x-coordinate of window.
	      Default 4.

       -offsety	<n>
	      Correction for window-manager provided  y-coordinate of  window.
	      Default 0.

       -offsetw	<n>
	      Correction  for window-manager provided width of window. Default
	      -8.

       -offsets	<n>
	      Correction for bottom coordinate	of  your  screen.  A  negative
	      value lifts the xsnow screen up. Default 0.

       -ignoretop <n>
	      Do  not  collect snow on window >	0.8*width of screen and	closer
	      than <n> pixels from the top.  Sometimes	an  hidden  window  is
	      sitting  there, but treated as a normal window by	xsnow. Default
	      0.

       -ignorebottom <n>
	      Analog to	-ignoretop, but	now for	the bottom. Default 0.

   Birds options:
       -anarchy	<n>
	      Anarchy factor ( 0..100 default: 50).

       -birdscolor <c>
	      Use the given string as color for	the birds (default: #361A07).

       -birdsonly <n>
	      Show only	birds (	0/1 default: 0).

       -birdsspeed <n>
	      Speed of birds ( 0..300 default: 100).

       -disweight <n>
	      Eagerness	to keep	desired	distance ( 0..100 default: 20).

       -focuscentre <n>
	      Eagerness	to fly to the focus ( 0..300 default: 100).

       -followneighbours <n>
	      Eagerness	to follow neighbours ( 0..100 default: 30).

       -nbirds <n>
	      Number of	birds (	0..400 default:	70).

       -neighbours <n>
	      Number of	neighbours to watch ( 0..20 default: 7).

       -prefdistance <n>
	      Preferred	distance to neighbours ( 0..100	default: 40).

       -showbirds <n>
	      Show birds ( 0/1 default:	1).

       -showattr <n>
	      Show attraction point ( 0/1 default: 0).

       -attrspace <n>
	      Vertical space to	be used	by the attraction point	(default: 40).

       -followsanta <n>
	      Birds like Santa ( 0/1 default: 0).

       -viewingdistance	<n>
	      Viewing distance ( 0..95 default:	40).

       -birdsscale <n>
	      Scalefactor used painting	the birds (default: 100).

   LANGUAGES
       Xsnow comes with	some translations to non-english languages.
       The  translations  are  done  with  the	aid  of	  translate.google.com
       (implemented   in   package   'trans'),	so  there  will	 be  room  for
       improvement. Any	suggestions are	welcome: contact@ratrabbit.nl .

   FILES
       $HOME/.xsnowrc
	      Settings are read	from and written  to  this  file.   See	 flags
	      -noconfig	and -defaults how to influence this behaviour.
		  NOTE:	the following settings are not read or written:
			-above	-defaults  -desktop  -fullscreen -noconfig -id
			-nomenu	  -stopafter   -xwininfo   -display	-noisy
	      -checkgtk
		  NOTE:	the file also  contains	 the  screen  locations	 of  a
	      number of	buttons,
			which can be used for testing purposes.

       $HOME/.xsnowstop
	      Xsnow  checks regularly the existence of this file.  If present,
	      xsnow will remove	the file and stop.

       $HOME/xsnow/pixmaps/tree.xpm
	      If present, xsnow	will try this file for displaying  the	trees.
	      The    format    must    be   xpm	  (X   PixMap)	 format,   see
	      https://en.wikipedia.org/wiki/X_PixMap .

       $HOME/xsnow/pixmaps/santa<n>.xpm
	      where <n>	= 1,2,3,4.  If present,	xsnow will try this  files  (4
	      of them) for displaying Santa. The format	must be	xpm (X PixMap)
	      format, see https://en.wikipedia.org/wiki/X_PixMap .
		  NOTE:	To show: activate the first Santa in the menu.

   SIGNALS
       On receiving the	SIGUSR1	signal,	xsnow writes the file ~/.xsnowrc.

   EXAMPLES
	   $ xsnow -defaults	    # run with defaults.
	   $ xsnow		    # run using	values from the	config file.
	   $ xsnow -treetype 1,2    # use tree types 1 and 2.

   WINDOW MANAGER ISSUES
       In  general, xsnow works	better when using a compositing	window manager
       like xcompmgr, compton or picom.	 However, with	some  window  managers
       (FVWM   for   example),	 the  xsnow-window  is	transparent,  but  not
       click-through.	Flags  to  be  tried  in  this	case  include:	-root,
       -doublebuffer, -xwininfo, -id.
       Here follow some	window managers	with their issues:

       Tiling window managers
	      Here you need to float windows with class=Xsnow.

       AWESOME
	      Without compositor: no issues.
	      With  compositor:	no click-through xsnow window, and issues with
	      multi-monitor setup.

       BSPWM  No issues	if you add to your bspwmrc  (the  bspwm	 configuration
	      file):
		  bspc rule -a Xsnow state=floating border=off

       CINNAMON
	      No issues.

       DWM    No  issues, except the "Below Windows" setting in	the "settings"
	      panel.

       ENLIGHTENMENT
	      With one monitor:	no issuses.
	      With more	montors: probems with showing in 'all monitors'

       FLUXBOX
	      Without compositor: no issues.
	      With compositor: no click-through	xsnow window

       FVWM   Without compositor: no issues.
	      With compositor: no click-through	xsnow window

       GNOME on	Xorg
	      No issues.

       GNOME on	Wayland
	      Most windows don't catch snow.

       HERBSTLUFTWM
	      No issues.

       I3     Without compositor: windows don't	catch snow, use	the next  line
	      in "config":
		  for_window [class="Xsnow"] floating enable;border none
	      With compositor: unworkable.

       JVM    No issues.

       LXDE   With compositor: no issues.
	      Without compositor: works	with one monitor.
	      Maybe you	need to	run with the flag -xwininfo

       LXQT   Without compositor: unworkable.  With compositor:	no issues.

       MATE   No issues.

       OPENBOX
	      No issues.

       PLASMA (KDE)
	      No issues.

       SPECTRWM
	      Various issues. In any case you need in spectrwm.conf:
		  quirk[Xsnow] = FLOAT

       TWM    Without compositor: no issues.
	      With compositor: no click-through	xsnow window and
	      you need to tweak	settings->lift snow on windows.

       WINDOW MAKER
	      Without	 compositor:   no   issues.    With   compositor:   no
	      click-through xsnow window

       XFCE   No issues	when compositing is on,	unworkable when	compositing is
	      off.
	      See settings -> Window Manager Tweaks -> Compositor

       XMONAD No issues	if you add to your xmonad.hs:
	       import XMonad.Hooks.EwmhDesktops
	       xmonad $	ewmh $ defaultConfig
	       in the ManageHook section:
		  className = ?	"Xsnow"	--> doFloat

   BUGS
       - Xsnow needs a complete	rewrite: the code is a mess.
       - The flags are not consistent, caused by trying	to be
	   compatible with older versions.
       - Xsnow stresses	the Xserver too	much.
       - Xsnow does run	in Wayland, but	will not snow on all windows.
       - Xsnow tries to	create a click-through window. This is not successful
	 in for	example	FVWM/xcompmgr. In that case, xsnow tries to keep
	 the snow window below all others, resulting in	a transient effect
	 when you click	on the desktop.	Sadly, no FVWM menu will appear...
       - Remnants of fluffy snow can persist after removing the
	   fallen snow.	These will gradually disappear,	so no big deal.
       - Remnants of meteors can persist after passage of Santa.
	   These will eventually be wiped out by snow or Santa.
       - Xsnow tries to	adapt its snowing window if the	display
	   settings are	changed	while xsnow is running.
	   This	does not function always well.
       - Xsnow does not	play well with 'xcompmgr -a'. In some environments
	   (Raspberry 64 bit) xcompmgr is started with the flag	'-a',
	   resulting in	a black	snow window. Remedy:
	   In a	terminal window	type:
	     killall xcompmgr
	     nohup xcompmgr -n &
	   and try again.
       - In XFCE, compositing must be enabled for xsnow.
	   Settings -> Window Manager Tweaks ->	Compositor ->  Enable  display
       compositing
       - In multi-screen environments, it depends on the display settings
	   if it is snowing on all screens. Experiment!

       Please report your comments via:
	  https://ratrabbit.nl/ratrabbit/contact .

HOMEPAGE
       https://ratrabbit.nl/ratrabbit/xsnow

COPYRIGHT
       This is free software; see the source for copying conditions.  There is
       NO  warranty;  not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
       PURPOSE.

xsnow-3.8.4~pre01		     2024			      XSNOW(6)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=xsnow&sektion=6&manpath=FreeBSD+Ports+14.3.quarterly>

home | help