From cf43039daed25d586cc0fcf12789eb85c0d2c174 Mon Sep 17 00:00:00 2001 From: Dave-Elec Date: Fri, 4 Sep 2020 13:31:53 +0300 Subject: [PATCH] Fixed python2/3 compatiblities --- src/freecad_to_gazebo/__init__.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/freecad_to_gazebo/__init__.py b/src/freecad_to_gazebo/__init__.py index b89fbb6..4cf8a65 100644 --- a/src/freecad_to_gazebo/__init__.py +++ b/src/freecad_to_gazebo/__init__.py @@ -1,12 +1,18 @@ -import os -import platform +import os, platform +import distro + +FREECAD_PATH = '' # check os types to search for freecad libraries if 'linux' in platform.system().lower(): - if 'ubuntu' in platform.dist()[0].lower(): + dist = distro.linux_distribution(full_distribution_name=False)[0].lower() + # TODO: check freecad libs on different distros + if dist in ['ubuntu', 'debian', 'fedora', 'arch']: FREECAD_PATH = '/usr/lib/freecad' - elif 'fedora' in platform.dist()[0].lower(): + else: + # fallback to default path FREECAD_PATH = '/usr/lib/freecad' + print(dist, FREECAD_PATH) elif 'nt' in platform.dist().lower(): pass # TODO: Find freecad libs on windows @@ -14,7 +20,7 @@ else: raise Exception("Platform not supported") # Extend sys.path to include freecad python libraries (including workbenches) -os.sys.path.extend(os.path.join(FREECAD_PATH, d) for d in os.scandir(FREECAD_PATH)) +os.sys.path.extend(os.path.join(FREECAD_PATH, d) for d in os.listdir(FREECAD_PATH)) from freecad_to_gazebo.mesh_exporter import export from freecad_to_gazebo.model import *