|
import configparser
|
|
import os
|
|
|
|
version_code = [6, 0, 2]
|
|
version = f"V{version_code[0]}.{version_code[1]}" + (f'.{version_code[2]}' if len(version_code) > 2 else '')
|
|
|
|
dependency_version = 22
|
|
|
|
my_path = os.path.dirname(__file__)
|
|
old_config_path = os.path.join(my_path, "impact-pack.ini")
|
|
config_path = os.path.join(my_path, "..", "..", "impact-pack.ini")
|
|
latent_letter_path = os.path.join(my_path, "..", "..", "latent.png")
|
|
|
|
|
|
def write_config():
|
|
config = configparser.ConfigParser()
|
|
config['default'] = {
|
|
'dependency_version': str(dependency_version),
|
|
'mmdet_skip': str(get_config()['mmdet_skip']),
|
|
'sam_editor_cpu': str(get_config()['sam_editor_cpu']),
|
|
'sam_editor_model': get_config()['sam_editor_model'],
|
|
'custom_wildcards': get_config()['custom_wildcards'],
|
|
'disable_gpu_opencv': get_config()['disable_gpu_opencv'],
|
|
}
|
|
with open(config_path, 'w') as configfile:
|
|
config.write(configfile)
|
|
|
|
|
|
def read_config():
|
|
try:
|
|
config = configparser.ConfigParser()
|
|
config.read(config_path)
|
|
default_conf = config['default']
|
|
|
|
if not os.path.exists(default_conf['custom_wildcards']):
|
|
print(f"[WARN] ComfyUI-Impact-Pack: custom_wildcards path not found: {default_conf['custom_wildcards']}. Using default path.")
|
|
default_conf['custom_wildcards'] = os.path.join(my_path, "..", "..", "custom_wildcards")
|
|
|
|
return {
|
|
'dependency_version': int(default_conf['dependency_version']),
|
|
'mmdet_skip': default_conf['mmdet_skip'].lower() == 'true' if 'mmdet_skip' in default_conf else True,
|
|
'sam_editor_cpu': default_conf['sam_editor_cpu'].lower() == 'true' if 'sam_editor_cpu' in default_conf else False,
|
|
'sam_editor_model': default_conf['sam_editor_model'].lower() if 'sam_editor_model' else 'sam_vit_b_01ec64.pth',
|
|
'custom_wildcards': default_conf['custom_wildcards'] if 'custom_wildcards' in default_conf else os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "..", "custom_wildcards")),
|
|
'disable_gpu_opencv': default_conf['disable_gpu_opencv'].lower() == 'true' if 'disable_gpu_opencv' in default_conf else True
|
|
}
|
|
|
|
except Exception:
|
|
return {
|
|
'dependency_version': 0,
|
|
'mmdet_skip': True,
|
|
'sam_editor_cpu': False,
|
|
'sam_editor_model': 'sam_vit_b_01ec64.pth',
|
|
'custom_wildcards': os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "..", "custom_wildcards")),
|
|
'disable_gpu_opencv': True
|
|
}
|
|
|
|
|
|
cached_config = None
|
|
|
|
|
|
def get_config():
|
|
global cached_config
|
|
|
|
if cached_config is None:
|
|
cached_config = read_config()
|
|
|
|
return cached_config
|
|
|