comfy-env 0.0.68__tar.gz → 0.0.69__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. {comfy_env-0.0.68 → comfy_env-0.0.69}/PKG-INFO +1 -1
  2. {comfy_env-0.0.68 → comfy_env-0.0.69}/pyproject.toml +1 -1
  3. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/install.py +1 -1
  4. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/pixi/core.py +22 -24
  5. {comfy_env-0.0.68 → comfy_env-0.0.69}/.github/workflows/publish.yml +0 -0
  6. {comfy_env-0.0.68 → comfy_env-0.0.69}/.gitignore +0 -0
  7. {comfy_env-0.0.68 → comfy_env-0.0.69}/LICENSE +0 -0
  8. {comfy_env-0.0.68 → comfy_env-0.0.69}/README.md +0 -0
  9. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/__init__.py +0 -0
  10. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/cli.py +0 -0
  11. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/config/__init__.py +0 -0
  12. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/config/parser.py +0 -0
  13. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/config/types.py +0 -0
  14. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/errors.py +0 -0
  15. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/isolation/__init__.py +0 -0
  16. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/isolation/wrap.py +0 -0
  17. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/nodes.py +0 -0
  18. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/pixi/__init__.py +0 -0
  19. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/pixi/cuda_detection.py +0 -0
  20. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/pixi/platform/__init__.py +0 -0
  21. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/pixi/platform/base.py +0 -0
  22. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/pixi/platform/darwin.py +0 -0
  23. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/pixi/platform/linux.py +0 -0
  24. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/pixi/platform/windows.py +0 -0
  25. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/pixi/resolver.py +0 -0
  26. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/prestartup.py +0 -0
  27. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/templates/comfy-env-instructions.txt +0 -0
  28. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/templates/comfy-env.toml +0 -0
  29. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/workers/__init__.py +0 -0
  30. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/workers/base.py +0 -0
  31. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/workers/mp.py +0 -0
  32. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/workers/subprocess.py +0 -0
  33. {comfy_env-0.0.68 → comfy_env-0.0.69}/src/comfy_env/workers/tensor_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: comfy-env
3
- Version: 0.0.68
3
+ Version: 0.0.69
4
4
  Summary: Environment management for ComfyUI custom nodes - CUDA wheel resolution and process isolation
5
5
  Project-URL: Homepage, https://github.com/PozzettiAndrea/comfy-env
6
6
  Project-URL: Repository, https://github.com/PozzettiAndrea/comfy-env
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "comfy-env"
3
- version = "0.0.68"
3
+ version = "0.0.69"
4
4
  description = "Environment management for ComfyUI custom nodes - CUDA wheel resolution and process isolation"
5
5
  readme = "README.md"
6
6
  license = {text = "MIT"}
@@ -151,7 +151,7 @@ def _install_isolated_subdirs(
151
151
  log(f" (dry run)")
152
152
  continue
153
153
 
154
- pixi_install(sub_cfg, sub_dir, log, create_env_link=True)
154
+ pixi_install(sub_cfg, sub_dir, log)
155
155
 
156
156
 
157
157
  def verify_installation(
@@ -172,7 +172,6 @@ def pixi_install(
172
172
  cfg: ComfyEnvConfig,
173
173
  node_dir: Path,
174
174
  log: Callable[[str], None] = print,
175
- create_env_link: bool = False,
176
175
  ) -> bool:
177
176
  """
178
177
  Install all packages via pixi.
@@ -188,7 +187,6 @@ def pixi_install(
188
187
  cfg: ComfyEnvConfig with packages to install.
189
188
  node_dir: Directory to install in.
190
189
  log: Logging callback.
191
- create_env_link: If True, create _env_<name> symlink for isolation.
192
190
 
193
191
  Returns:
194
192
  True if installation succeeded.
@@ -217,9 +215,31 @@ def pixi_install(
217
215
  else:
218
216
  log("Warning: CUDA packages requested but no GPU detected")
219
217
 
218
+ # Install system dependencies on Linux (OpenGL, build tools)
219
+ if sys.platform == "linux":
220
+ log("Installing system dependencies...")
221
+ subprocess.run(
222
+ ["sudo", "apt-get", "update"],
223
+ capture_output=True,
224
+ )
225
+ subprocess.run(
226
+ ["sudo", "apt-get", "install", "-y",
227
+ "python3-dev", # Build deps for C extensions
228
+ "libgl1-mesa-glx", # OpenGL
229
+ "libglu1-mesa", # GLU
230
+ ],
231
+ capture_output=True,
232
+ )
233
+
220
234
  # Clean previous artifacts
221
235
  clean_pixi_artifacts(node_dir, log)
222
236
 
237
+ # Create .pixi/config.toml to ensure inline (non-detached) environments
238
+ pixi_config_dir = node_dir / ".pixi"
239
+ pixi_config_dir.mkdir(parents=True, exist_ok=True)
240
+ pixi_config_file = pixi_config_dir / "config.toml"
241
+ pixi_config_file.write_text("detached-environments = false\n")
242
+
223
243
  # Ensure pixi is installed
224
244
  pixi_path = ensure_pixi(log=log)
225
245
 
@@ -324,27 +344,5 @@ def pixi_install(
324
344
 
325
345
  log("CUDA packages installed")
326
346
 
327
- # Create symlink/junction to _env_<name> for discovery (only for isolated subdirs)
328
- if create_env_link:
329
- env_dir = node_dir / ".pixi" / "envs" / "default"
330
- env_link = node_dir / f"_env_{node_dir.name}"
331
- if env_dir.exists():
332
- # Remove existing link/dir if present
333
- if env_link.is_symlink() or env_link.exists():
334
- if env_link.is_symlink():
335
- env_link.unlink()
336
- else:
337
- shutil.rmtree(env_link)
338
- # Create symlink (Linux/Mac) or junction (Windows)
339
- if sys.platform == "win32":
340
- # Use junction on Windows
341
- subprocess.run(
342
- ["cmd", "/c", "mklink", "/J", str(env_link), str(env_dir)],
343
- capture_output=True,
344
- )
345
- else:
346
- env_link.symlink_to(env_dir)
347
- log(f"Linked: {env_link.name} -> .pixi/envs/default")
348
-
349
347
  log("Installation complete!")
350
348
  return True
File without changes
File without changes
File without changes