Index: /fact/tools/pyscripts/pyfact/pyfact.py
===================================================================
--- /fact/tools/pyscripts/pyfact/pyfact.py	(revision 17802)
+++ /fact/tools/pyscripts/pyfact/pyfact.py	(revision 17803)
@@ -4,4 +4,5 @@
 # ETH Zurich, TU Dortmund
 #
+import sys
 from ctypes import *
 import numpy as np
@@ -15,14 +16,28 @@
 # having it in PYTHONPATH is *not* sufficient
 hostname = ROOT.gSystem.HostName()
-if 'isdc' in hostname:
-    ROOT.gSystem.Load("/usr/lib64/libz.so")
-elif ('neiseLenovo' in hostname or 'factcontrol' in hostname):
-    ROOT.gSystem.Load("/usr/lib/libz.so")
-elif ("max-K50AB" in hostname or "watz" in hostname or "TPK-Ubuntu" in hostname):
-    ROOT.gSystem.Load("/usr/lib/x86_64-linux-gnu/libz.so")
-elif ("grolsch" in hostname):
-    ROOT.gSystem.Load("/usr/lib/i386-linux-gnu/libz.so")
-else:
-    print "Error,Warning,Whatever libz stuff makes me crazy."
+libz_path_dict = {
+    # hostname  :   /path/to/libz.so
+    'isdc'          : "/usr/lib64/libz.so",
+    'neiseLenovo'   : "/usr/lib/libz.so",
+    'factcontrol'   : "/usr/lib/libz.so",
+    "max-K50AB"     : "/usr/lib/x86_64-linux-gnu/libz.so",
+    "watz"          : "/usr/lib/x86_64-linux-gnu/libz.so",
+    "grolsch"       : "/usr/lib/i386-linux-gnu/libz.so",
+}
+libz_loaded = False
+for my_hostname in libz_path_dict:
+    if my_hostname in hostname:
+        ROOT.gSystem.Load(libz_path_dict[my_hostname])
+        libz_loaded = True
+if not libz_loaded:
+    print """Warning - Warning - Warning - Warning - Warning - Warning - Warning
+    I most probably need to load libz.so but I don't know where it is.
+    
+    Please edit pyfact.py around line 16-24 and insert your hostname and your
+    path to your libz.so 
+    Sorry for the inconvenience.
+    """
+    sys.exit(-1)
+
     
 root_make_string = ROOT.gSystem.GetMakeSharedLib()
@@ -1015,5 +1030,4 @@
 if __name__ == '__main__':
     """ tests  """
-    import sys
     
     f = fits(sys.argv[1])
