Skip to content

Commit b080fe1

Browse files
committed
Fix PyInstaller environment variable leak when starting services
1 parent 1b740a4 commit b080fe1

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

needlectl/cli/service.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,8 +116,15 @@ def _start_virtual_env_service(self, service_name: str, command: list, pid_file:
116116
# Use provided working directory or default to needle_home
117117
cwd = working_dir if working_dir else self.needle_home
118118

119-
# Prepare environment variables
119+
# Prepare environment variables - clean PyInstaller env vars to avoid library conflicts
120120
env = os.environ.copy()
121+
122+
# Remove PyInstaller-specific environment variables that can cause library conflicts
123+
pyinstaller_vars = ['_MEIPASS', '_MEIPASS2', 'LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH',
124+
'DYLD_FRAMEWORK_PATH', 'TCL_LIBRARY', 'TK_LIBRARY']
125+
for var in pyinstaller_vars:
126+
env.pop(var, None)
127+
121128
if env_vars:
122129
env.update(env_vars)
123130

0 commit comments

Comments
 (0)