From 67622e3f3dc03277bd706c023668cd70bd4085b1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Philipp=20H=C3=B6rist?= <philipp@hoerist.com>
Date: Tue, 23 Aug 2016 01:05:47 +0200
Subject: [PATCH] Better version check

---
 omemo/__init__.py | 18 +++++++++++++++---
 1 file changed, 15 insertions(+), 3 deletions(-)

diff --git a/omemo/__init__.py b/omemo/__init__.py
index 5348572c..07f729d4 100644
--- a/omemo/__init__.py
+++ b/omemo/__init__.py
@@ -21,6 +21,7 @@
 import logging
 import os
 import sqlite3
+import os
 
 from common import caps_cache, gajim, ged
 from common.pep import SUPPORTED_PERSONAL_USER_EVENTS
@@ -74,9 +75,20 @@ except Exception as e:
     log.error(e)
     ERROR_MSG = AXOLOTL_MISSING
 
-ver = gajim.config.get('version')
-if ver[0:6] != '0.16.5':
-    ERROR_MSG = GAJIM_VERSION
+GAJIM_VER = gajim.config.get('version')
+
+if os.name != 'nt':
+    try:
+        SETUPTOOLS_MISSING = False
+        from pkg_resources import parse_version
+    except Exception as e:
+        log.error(e)
+        SETUPTOOLS_MISSING = True
+        ERROR_MSG = 'You are missing the Setuptools package.'
+
+    if not SETUPTOOLS_MISSING:
+        if parse_version(GAJIM_VER) < parse_version('0.16.5'):
+            ERROR_MSG = GAJIM_VERSION
 
 # pylint: disable=no-init
 # pylint: disable=attribute-defined-outside-init
-- 
GitLab