diff --git a/doc/C/jhbuild.xml b/doc/C/jhbuild.xml
index 650229f..860df78 100644
--- a/doc/C/jhbuild.xml
+++ b/doc/C/jhbuild.xml
@@ -1587,7 +1587,8 @@ libgnomecanvas is missing branch definition for gnome-2-20
 	    <simpara>A boolean value specifying whether to emit
 	    notifications using the notification daemon.  If set to
 	    <constant>True</constant>, notifications are not emitted.
-	    Defaults to <constant>False</constant>.</simpara>
+	    Defaults to <constant>False</constant>, except on Win32
+		where it defaults to <constant>True</constant>.</simpara>
 	  </listitem>
 	</varlistentry>
 	<varlistentry>
@@ -1602,6 +1603,16 @@ libgnomecanvas is missing branch definition for gnome-2-20
 	  </listitem>
 	</varlistentry>
 	<varlistentry>
+	  <term id="cfg-notrayicon"><varname>notrayicon</varname></term>
+	  <listitem>
+	    <simpara>A boolean value specifying whether to show an icon
+	    in the system tray using Zenity. If set to
+	    <constant>True</constant>, notifications are not emitted.
+	    Defaults to <constant>False</constant> except from on Win32,
+		where it defaults to <constant>True</constant>.</simpara>
+	  </listitem>
+	</varlistentry>
+	<varlistentry>
 	  <term id="cfg-noxvfb"><varname>noxvfb</varname></term>
 	  <listitem>
 	    <simpara>A boolean value which, if set to
diff --git a/jhbuild/config.py b/jhbuild/config.py
index ed8534d..8f0faff 100644
--- a/jhbuild/config.py
+++ b/jhbuild/config.py
@@ -40,7 +40,7 @@ _known_keys = [ 'moduleset', 'modules', 'skip', 'tags', 'prefix',
                 'alwaysautogen', 'nobuild', 'makeclean', 'makecheck', 'module_makecheck',
                 'use_lib64', 'tinderbox_outputdir', 'sticky_date',
                 'tarballdir', 'pretty_print', 'svn_program', 'makedist',
-                'makedistcheck', 'nonotify', 'cvs_program',
+                'makedistcheck', 'nonotify', 'notrayicon', 'cvs_program',
                 'checkout_mode', 'copy_dir', 'module_checkout_mode',
                 'build_policy', 'trycheckout', 'min_time',
                 'nopoison', 'forcecheck', 'makecheck_advisory',
diff --git a/jhbuild/defaults.jhbuildrc b/jhbuild/defaults.jhbuildrc
index 865f34a..eba30f5 100644
--- a/jhbuild/defaults.jhbuildrc
+++ b/jhbuild/defaults.jhbuildrc
@@ -2,7 +2,7 @@
 # This file holds the default values for the ~/.jhbuildrc file.
 # Do not copy this to ~/.jhbuildrc
 
-import os
+import os, sys
 
 if 'GTK_PATH' in os.environ.keys():
     del os.environ['GTK_PATH']
@@ -132,8 +132,14 @@ cvs_program = 'cvs'
 mirror_policy = ""
 module_mirror_policy = {}
 
-# whether not to emit notifications through the notification daemon
-nonotify = False
+if sys.platform.startswith('win'):
+    notrayicon = True
+    nonotify = True
+else:
+    # Show a tray icon using zenity
+    notrayicon = False
+    # whether not to emit notifications through the notification daemon
+    nonotify = False
 
 # whether to run tests in real X and not in Xvfb
 noxvfb = False
diff --git a/jhbuild/utils/trayicon.py b/jhbuild/utils/trayicon.py
index 349a263..9afbba6 100644
--- a/jhbuild/utils/trayicon.py
+++ b/jhbuild/utils/trayicon.py
@@ -26,6 +26,8 @@ class TrayIcon:
     proc = None
 
     def __init__(self):
+        if config and config.notrayicon:
+            return
         if not os.environ.get('DISPLAY'):
             return
         try:
