From 3dd7bc160e6451a22155ed30715523bac4ff9e72 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 21 Nov 2020 12:20:54 +0530 Subject: [PATCH] Move loading of env vars to bypy. Allows defining CALIBRE_DEVELOP_FROM in env vars file --- bypy/macos/__main__.py | 6 +++++- bypy/macos/site.py | 24 ------------------------ 2 files changed, 5 insertions(+), 25 deletions(-) diff --git a/bypy/macos/__main__.py b/bypy/macos/__main__.py index adc48a5cb9..fd6c52f009 100644 --- a/bypy/macos/__main__.py +++ b/bypy/macos/__main__.py @@ -653,7 +653,11 @@ class Freeze(object): os.rename(join(src, x), join(pydir, x)) os.rmdir(src) py_compile(pydir) - freeze_python(pydir, dest, self.inc_dir, self.ext_map, develop_mode_env_var='CALIBRE_DEVELOP_FROM') + freeze_python( + pydir, dest, self.inc_dir, self.ext_map, + develop_mode_env_var='CALIBRE_DEVELOP_FROM', + path_to_user_env_vars='~/Library/Preferences/calibre/macos-env.txt' + ) shutil.rmtree(pydir) def create_app_clone(self, name, specialise_plist, remove_doc_types=False, base_dir=None): diff --git a/bypy/macos/site.py b/bypy/macos/site.py index 73fa25eee6..b490bb9fa5 100644 --- a/bypy/macos/site.py +++ b/bypy/macos/site.py @@ -4,21 +4,6 @@ import sys import _sitebuiltins -def read_user_env_vars(): - try: - with open(os.path.expanduser('~/Library/Preferences/calibre/macos-env.txt'), 'rb') as f: - raw = f.read().decode('utf-8', 'replace') - except EnvironmentError: - return - for line in raw.splitlines(): - if line.startswith('#'): - continue - parts = line.split('=', 1) - if len(parts) == 2: - key, val = parts - os.environ[key] = os.path.expandvars(os.path.expanduser(val)) - - def nuke_stdout(): # Redirect stdout, stdin and stderr to /dev/null from calibre_extensions.speedup import detach @@ -37,15 +22,6 @@ def set_quit(): def main(): sys.argv[0] = sys.calibre_basename - try: - read_user_env_vars() - except Exception as err: - try: - print('Failed to read user env vars with error:', err, file=sys.stderr) - sys.stderr.flush() - except Exception: - pass - set_helper() set_quit() mod = __import__(sys.calibre_module, fromlist=[1])