This commit is contained in:
Sas van Gulik 2025-12-14 11:02:46 +01:00 committed by GitHub
commit a5a4182336
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 18 additions and 1 deletions

View File

@ -47,6 +47,7 @@ parser.add_argument("--extra-model-paths-config", type=str, default=None, metava
parser.add_argument("--output-directory", type=str, default=None, help="Set the ComfyUI output directory. Overrides --base-directory.")
parser.add_argument("--temp-directory", type=str, default=None, help="Set the ComfyUI temp directory (default is in the ComfyUI directory). Overrides --base-directory.")
parser.add_argument("--input-directory", type=str, default=None, help="Set the ComfyUI input directory. Overrides --base-directory.")
parser.add_argument("--custom-nodes-directory", type=str, default=None, help="Set the ComfyUI custom_nodes directory. Overrides --base-directory.")
parser.add_argument("--auto-launch", action="store_true", help="Automatically launch ComfyUI in the default browser.")
parser.add_argument("--disable-auto-launch", action="store_true", help="Disable auto launching the browser.")
parser.add_argument("--cuda-device", type=int, default=None, metavar="DEVICE_ID", help="Set the id of the cuda device this instance will use. All other devices will not be visible.")

View File

@ -4,6 +4,7 @@ import os
import time
import mimetypes
import logging
import sys
from typing import Literal, List
from collections.abc import Collection
@ -117,6 +118,16 @@ def set_input_directory(input_dir: str) -> None:
global input_directory
input_directory = input_dir
def set_custom_nodes_directory(custom_nodes_dir: str) -> None:
global folder_names_and_paths
delimiter = ":"
if sys.platform in ("win32", "cygwin"):
delimiter = ";"
directories = custom_nodes_dir.split(delimiter)
folder_names_and_paths["custom_nodes"] = (directories, set())
def get_output_directory() -> str:
global output_directory
return output_directory

View File

@ -50,7 +50,7 @@ def apply_custom_paths():
for config_path in itertools.chain(*args.extra_model_paths_config):
utils.extra_config.load_extra_path_config(config_path)
# --output-directory, --input-directory, --user-directory
# --output-directory, --input-directory, --user-directory, --custom-nodes-directory
if args.output_directory:
output_dir = os.path.abspath(args.output_directory)
logging.info(f"Setting output directory to: {output_dir}")
@ -74,6 +74,11 @@ def apply_custom_paths():
logging.info(f"Setting user directory to: {user_dir}")
folder_paths.set_user_directory(user_dir)
if args.custom_nodes_directory:
custom_nodes_dir = os.path.abspath(args.custom_nodes_directory)
logging.info(f"Setting custom nodes directory to: {custom_nodes_dir}")
folder_paths.set_custom_nodes_directory(custom_nodes_dir)
def execute_prestartup_script():
if args.disable_all_custom_nodes and len(args.whitelist_custom_nodes) == 0: