From 4adb9988966edf82871ffbc5201f1ce1f6b3d466 Mon Sep 17 00:00:00 2001 From: Alex Xu Date: Mon, 30 Dec 2024 22:19:23 -0800 Subject: [PATCH] modify path with c2e and c2p (#790) --- kcc-c2e.py | 3 ++ kcc-c2p.py | 3 ++ kcc.py | 102 +++++++++++++++++++++++++++-------------------------- 3 files changed, 58 insertions(+), 50 deletions(-) diff --git a/kcc-c2e.py b/kcc-c2e.py index ed24575b..c851b3ca 100755 --- a/kcc-c2e.py +++ b/kcc-c2e.py @@ -20,6 +20,8 @@ import sys +from kcc import modify_path + if sys.version_info < (3, 8, 0): print('ERROR: This is a Python 3.8+ script!') sys.exit(1) @@ -28,6 +30,7 @@ from kindlecomicconverter.startup import startC2E if __name__ == "__main__": + modify_path() set_start_method('spawn') freeze_support() startC2E() diff --git a/kcc-c2p.py b/kcc-c2p.py index be8a9819..ef285f87 100755 --- a/kcc-c2p.py +++ b/kcc-c2p.py @@ -20,6 +20,8 @@ import sys +from kcc import modify_path + if sys.version_info < (3, 8, 0): print('ERROR: This is a Python 3.8+ script!') sys.exit(1) @@ -28,6 +30,7 @@ from kindlecomicconverter.startup import startC2P if __name__ == "__main__": + modify_path() set_start_method('spawn') freeze_support() startC2P() diff --git a/kcc.py b/kcc.py index c1bb1b75..31808d89 100755 --- a/kcc.py +++ b/kcc.py @@ -28,64 +28,66 @@ print('ERROR: This is a Python 3.8+ script!') sys.exit(1) -if platform.system() == 'Darwin': - mac_paths = [ - '/Applications/Kindle Comic Creator/Kindle Comic Creator.app/Contents/MacOS', - '/Applications/Kindle Previewer 3.app/Contents/lib/fc/bin/', - ] - if getattr(sys, 'frozen', False): - os.environ['PATH'] += os.pathsep + os.pathsep.join(mac_paths + - [ - '/opt/homebrew/bin', - '/usr/local/bin', - '/usr/bin', - '/bin', - ] - ) - os.chdir(os.path.dirname(os.path.abspath(sys.executable))) - else: - os.environ['PATH'] += os.pathsep + os.pathsep.join(mac_paths) - os.chdir(os.path.dirname(os.path.abspath(__file__))) +def modify_path(): + if platform.system() == 'Darwin': + mac_paths = [ + '/Applications/Kindle Comic Creator/Kindle Comic Creator.app/Contents/MacOS', + '/Applications/Kindle Previewer 3.app/Contents/lib/fc/bin/', + ] + if getattr(sys, 'frozen', False): + os.environ['PATH'] += os.pathsep + os.pathsep.join(mac_paths + + [ + '/opt/homebrew/bin', + '/usr/local/bin', + '/usr/bin', + '/bin', + ] + ) + os.chdir(os.path.dirname(os.path.abspath(sys.executable))) + else: + os.environ['PATH'] += os.pathsep + os.pathsep.join(mac_paths) + os.chdir(os.path.dirname(os.path.abspath(__file__))) -elif platform.system() == 'Linux': - if getattr(sys, 'frozen', False): - os.environ['PATH'] += os.pathsep + os.pathsep.join( - [ - str(Path.home() / ".local" / "bin"), - '/opt/homebrew/bin', - '/usr/local/bin', - '/usr/bin', - '/bin', - ] - ) - os.chdir(os.path.dirname(os.path.abspath(sys.executable))) - else: - os.chdir(os.path.dirname(os.path.abspath(__file__))) + elif platform.system() == 'Linux': + if getattr(sys, 'frozen', False): + os.environ['PATH'] += os.pathsep + os.pathsep.join( + [ + str(Path.home() / ".local" / "bin"), + '/opt/homebrew/bin', + '/usr/local/bin', + '/usr/bin', + '/bin', + ] + ) + os.chdir(os.path.dirname(os.path.abspath(sys.executable))) + else: + os.chdir(os.path.dirname(os.path.abspath(__file__))) -elif platform.system() == 'Windows': - win_paths = [ - os.path.expandvars('%LOCALAPPDATA%\\Amazon\\KC2'), - os.path.expandvars('%LOCALAPPDATA%\\Amazon\\Kindle Previewer 3\\lib\\fc\\bin\\'), - os.path.expandvars('%UserProfile%\\Kindle Previewer 3\\lib\\fc\\bin\\'), - 'C:\\Apps\\Kindle Previewer 3\\lib\\fc\\bin', - 'D:\\Apps\\Kindle Previewer 3\\lib\\fc\\bin', - 'E:\\Apps\\Kindle Previewer 3\\lib\\fc\\bin', - 'C:\\Program Files\\7-Zip', - 'D:\\Program Files\\7-Zip', - 'E:\\Program Files\\7-Zip', - ] - if getattr(sys, 'frozen', False): - os.environ['PATH'] += os.pathsep + os.pathsep.join(win_paths) - os.chdir(os.path.dirname(os.path.abspath(sys.executable))) - else: - os.environ['PATH'] += os.pathsep + os.pathsep.join(win_paths) - os.chdir(os.path.dirname(os.path.abspath(__file__))) + elif platform.system() == 'Windows': + win_paths = [ + os.path.expandvars('%LOCALAPPDATA%\\Amazon\\KC2'), + os.path.expandvars('%LOCALAPPDATA%\\Amazon\\Kindle Previewer 3\\lib\\fc\\bin\\'), + os.path.expandvars('%UserProfile%\\Kindle Previewer 3\\lib\\fc\\bin\\'), + 'C:\\Apps\\Kindle Previewer 3\\lib\\fc\\bin', + 'D:\\Apps\\Kindle Previewer 3\\lib\\fc\\bin', + 'E:\\Apps\\Kindle Previewer 3\\lib\\fc\\bin', + 'C:\\Program Files\\7-Zip', + 'D:\\Program Files\\7-Zip', + 'E:\\Program Files\\7-Zip', + ] + if getattr(sys, 'frozen', False): + os.environ['PATH'] += os.pathsep + os.pathsep.join(win_paths) + os.chdir(os.path.dirname(os.path.abspath(sys.executable))) + else: + os.environ['PATH'] += os.pathsep + os.pathsep.join(win_paths) + os.chdir(os.path.dirname(os.path.abspath(__file__))) from multiprocessing import freeze_support, set_start_method from kindlecomicconverter.startup import start if __name__ == "__main__": + modify_path() set_start_method('spawn') freeze_support() start()