diff --git a/ChangeLog b/ChangeLog
index 60271d5bc8c8a7615ad8d212f553f0a44fe77ac7..67b0dc2961cc0242afedf339af69d3352427e35d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,16 @@
+2013-08-23, v0.5.1
+	* Allow more characters in the cloud name
+	* Fix various bugs
+	* Handle kamaki config errors
+
+2013-08-04, v0.5
+	* Add support for sysprep-parameters
+	* Add support for syspreping Windows media
+	* Code cleanup
+
 2013-07-31, v0.4.4
 	* Fix a bug where the system tried to use file scrubbing without
-          checking if it was supported
+	  checking if it was supported
 
 2013-07-18, v0.4.3
 	* Force TERM=linux when working on xterm. This makes dialog behave
diff --git a/docs/conf.py b/docs/conf.py
index 0f38fb5442975f55e7db698a7d39f92ad9483a81..8392d22492670dd9d22b8030830ef5af5618abd6 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -50,9 +50,9 @@ copyright = u'2012, 2013 GRNET S.A. All rights reserved'
 # built documents.
 #
 # The short X.Y version.
-version = '0.4.4'
+version = '0.5.1'
 # The full version, including alpha/beta/rc tags.
-release = '0.4.4'
+release = '0.5.1'
 
 # The language for content autogenerated by Sphinx. Refer to documentation
 # for a list of supported languages.
diff --git a/image_creator/dialog_util.py b/image_creator/dialog_util.py
index ec5be5ff8998bf0f1f432c16ab02043fc0a0572f..af5e4254c5cd3eaf2903848465e68c393d9229e2 100644
--- a/image_creator/dialog_util.py
+++ b/image_creator/dialog_util.py
@@ -180,10 +180,10 @@ def extract_image(session):
 def _check_cloud(session, name, description, url, token):
     """Checks if the provided info for a cloud are valid"""
     d = session['dialog']
-    regexp = re.compile('^[a-zA-Z0-9_]+$')
+    regexp = re.compile('^[~@#$:\-\w]+$')
 
     if not re.match(regexp, name):
-        d.msgbox("Allowed characters for name: [a-zA-Z0-9_]", width=WIDTH)
+        d.msgbox("Allowed characters for name: a-zA-Z0-9_~@#$:-", width=WIDTH)
         return False
 
     if len(url) == 0:
diff --git a/image_creator/dialog_wizard.py b/image_creator/dialog_wizard.py
index 0856d8ae1a7768cfaa6d03324ea6991b94497ed6..ffabecf0b6f66a0efe81f65d4179baabed72ab96 100644
--- a/image_creator/dialog_wizard.py
+++ b/image_creator/dialog_wizard.py
@@ -414,7 +414,8 @@ def create_image(session):
         out.clear()
 
         #Sysprep
-        image.os.sysprep_params.update(wizard['SysprepParams'])
+        if 'SysprepParams' in wizard:
+            image.os.sysprep_params.update(wizard['SysprepParams'])
         image.os.do_sysprep()
         metadata = image.os.meta
 
diff --git a/image_creator/image.py b/image_creator/image.py
index 686fad621f7e7897c8a44e560b9ee4060fd43299..7eb8ad84d567bfc602bc6a01afee5f03ba9ffcb8 100644
--- a/image_creator/image.py
+++ b/image_creator/image.py
@@ -293,7 +293,12 @@ class Image(object):
             return self.size
 
         part_dev = "%s%d" % (self.guestfs_device, last_part['part_num'])
-        self.g.e2fsck_f(part_dev)
+
+        if self.check_guestfs_version(1, 15, 17) >= 0:
+            self.g.e2fsck(part_dev, forceall=1)
+        else:
+            self.g.e2fsck_f(part_dev)
+
         self.g.resize2fs_M(part_dev)
 
         out = self.g.tune2fs_l(part_dev)
diff --git a/image_creator/kamaki_wrapper.py b/image_creator/kamaki_wrapper.py
index c515fa65764bc18557747e0b13bdcc157840e180..36695266685b1667d231eda279ee8124e1a7bcd7 100644
--- a/image_creator/kamaki_wrapper.py
+++ b/image_creator/kamaki_wrapper.py
@@ -38,6 +38,8 @@ The library is used to upload images to and register them with a Synnefo
 deployment.
 """
 
+import sys
+
 from os.path import basename
 
 from kamaki.cli.config import Config
@@ -46,8 +48,11 @@ from kamaki.clients.image import ImageClient
 from kamaki.clients.pithos import PithosClient
 from kamaki.clients.astakos import AstakosClient
 
-
-config = Config()
+try:
+    config = Config()
+except Exception as e:
+    sys.stderr.write("Kamaki config error: %s\n" % str(e))
+    sys.exit(1)
 
 
 class Kamaki(object):
diff --git a/image_creator/os_type/__init__.py b/image_creator/os_type/__init__.py
index 19e63fc520bef1164fa90702a7b758c747842ff5..529856996516defa28dd9f4e5f9cdd5a07ac0e0a 100644
--- a/image_creator/os_type/__init__.py
+++ b/image_creator/os_type/__init__.py
@@ -320,6 +320,10 @@ class OSBase(object):
 
         * exclude: Exclude all files that follow this pattern.
         """
+        if not self.image.g.is_dir(directory):
+            self.out.warn("Directory: `%s' does not exist!" % directory)
+            return
+
         maxdepth = None if 'maxdepth' not in kargs else kargs['maxdepth']
         if maxdepth == 0:
             return
diff --git a/image_creator/os_type/unix.py b/image_creator/os_type/unix.py
index 8779b76632e5ab9b0d4db06297c5bada9c57fb9d..7255f444c7b2f11c6a1b027756c539e2eab9f2e8 100644
--- a/image_creator/os_type/unix.py
+++ b/image_creator/os_type/unix.py
@@ -108,9 +108,7 @@ class Unix(OSBase):
     def cleanup_mail(self):
         """Remove all files under /var/mail and /var/spool/mail"""
 
-        if self.image.g.is_dir('/var/spool/mail'):
-            self._foreach_file('/var/spool/mail', self.image.g.rm_rf,
-                               maxdepth=1)
+        self._foreach_file('/var/spool/mail', self.image.g.rm_rf, maxdepth=1)
 
         self._foreach_file('/var/mail', self.image.g.rm_rf, maxdepth=1)
 
diff --git a/image_creator/version.py b/image_creator/version.py
index dc31a71b9c8051ec474da51c286fd24c7d1fb4eb..59db0cb90748764ad97a7b99440c947213b47288 100644
--- a/image_creator/version.py
+++ b/image_creator/version.py
@@ -1,8 +1,7 @@
-
-__version__ = "0.4.4next"
+__version__ = "0.5.1"
+__version_info__ = ['0', '5', '1']
 __version_vcs_info__ = {
-    'branch': 'develop',
-    'revid': 'c5effe0',
-    'revno': 370}
-__version_user_email__ = "skalkoto@grnet.gr"
-__version_user_name__ = "Nikos Skalkotos"
+    'branch': 'hotfix-0.5.1',
+    'revid': 'b25b422',
+    'revno': 393}
+__version_user_info__ = "skalkoto@darkstar.admin.grnet.gr"
diff --git a/version b/version
index 15c226a41b0f7714998ef238e8de5d7a3326dc74..4b9fcbec101a6ff8ec68e0f95131ccda4861407f 100644
--- a/version
+++ b/version
@@ -1 +1 @@
-0.4.4next
+0.5.1