diff --git a/setup.py b/setup.py
index 40ec857dcdde8e59c8001ac40ea1a336466a0f8a..945252f9ad333fbd1c50f303b3642907fed3be9a 100644
--- a/setup.py
+++ b/setup.py
@@ -36,6 +36,7 @@ setup(name=name,
       'lxml', # needed to play with XML trees
       'netaddr>=0.7.5', # to play safely with IPv6 prefixes
       'netifaces', # to fetch information about network devices
+      'pyflakes', # For testing purposes
       'setuptools', # namespaces
       'supervisor', # slapgrid uses supervisor to manage processes
       'xml_marshaller>=0.9.3', # to unmarshall/marshall python objects to/from
diff --git a/slapos/tests/pyflakes/__init__.py b/slapos/tests/pyflakes/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..8e2a518c0708fc6dc9f2985ed322808d0178a295
--- /dev/null
+++ b/slapos/tests/pyflakes/__init__.py
@@ -0,0 +1,49 @@
+##############################################################################
+#
+# Copyright (c) 2013 Vifib SARL and Contributors. All Rights Reserved.
+#
+# WARNING: This program as such is intended to be used by professional
+# programmers who take the whole responsibility of assessing all potential
+# consequences resulting from its eventual inadequacies and bugs
+# End users who are looking for a ready-to-use solution with commercial
+# guarantees and support are strongly adviced to contract a Free Software
+# Service Company
+#
+# This program is Free Software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 3
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
+##############################################################################
+
+import os
+import pkg_resources
+import pyflakes.scripts.pyflakes
+import sys
+import unittest
+
+class CheckCodeConsistency(unittest.TestCase):
+  """Lints all SlapOS Node code base."""
+  def setUp(self):
+    self._original_argv = sys.argv
+    sys.argv = [sys.argv[0],
+                os.path.join(
+                    pkg_resources.get_distribution("slapos.core").location,
+                    'slapos',
+                )
+               ]
+
+  def tearDown(self):
+    sys.argv = self._original_argv
+
+  def testCodeConsistency(self):
+    pyflakes.scripts.pyflakes.main()