diff --git a/designer/__main__.py b/designer/__main__.py index 4c60f03..d813e5a 100644 --- a/designer/__main__.py +++ b/designer/__main__.py @@ -1,4 +1,4 @@ -import os.path +from os import path, environ from designer.app import DesignerApp from designer.utils.utils import get_fs_encoding @@ -6,7 +6,8 @@ def main(): - data = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'data') + data = path.join(path.dirname(path.abspath(__file__)), 'data') + environ['designer_source_dir'] = path.dirname(path.abspath(__file__)) if isinstance(data, bytes): data = data.decode(get_fs_encoding()) resource_add_path(data) diff --git a/designer/tools/bug_reporter.py b/designer/tools/bug_reporter.py index 6babf93..28c0f8e 100644 --- a/designer/tools/bug_reporter.py +++ b/designer/tools/bug_reporter.py @@ -167,11 +167,13 @@ def build(self): from pip.download import PipSession import platform + source_dir = os.getenv('designer_source_dir', + os.path.join(os.path.dirname( + os.path.realpath(__file__)), '..')) + requirements = parse_requirements(os.path.join( - os.path.dirname(os.path.realpath(__file__)), - '..', - '..', - 'requirements.txt'), + source_dir, + '..', 'requirements.txt'), session=PipSession() ) env_info = '' diff --git a/designer/utils/utils.py b/designer/utils/utils.py index 217d786..dec854f 100644 --- a/designer/utils/utils.py +++ b/designer/utils/utils.py @@ -127,7 +127,9 @@ def get_config_dir(): def get_kd_dir(): '''Return kivy designer source/binaries folder ''' - _dir = os.path.dirname(designer.__file__) + _dir = os.getenv('designer_source_dir', + os.path.dirname(designer.__file__)) + if isinstance(_dir, bytes): _dir = _dir.decode(get_fs_encoding()) return _dir