aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--launch.py4
-rw-r--r--modules/extensions.py4
-rw-r--r--modules/shared.py3
3 files changed, 10 insertions, 1 deletions
diff --git a/launch.py b/launch.py
index c41ae82d..1321b77a 100644
--- a/launch.py
+++ b/launch.py
@@ -206,6 +206,10 @@ def list_extensions(settings_file):
print(e, file=sys.stderr)
disabled_extensions = set(settings.get('disabled_extensions', []))
+ disable_all_extensions = settings.get('disable_all_extensions', False)
+
+ if disable_all_extensions:
+ return []
return [x for x in os.listdir(extensions_dir) if x not in disabled_extensions]
diff --git a/modules/extensions.py b/modules/extensions.py
index 0d34b89a..1493e8c8 100644
--- a/modules/extensions.py
+++ b/modules/extensions.py
@@ -97,6 +97,10 @@ def list_extensions():
if not os.path.isdir(extensions_dir):
return
+ if shared.opts.disable_all_extensions:
+ print("*** \"Disable all extensions\" option was set, will not load any extensions ***")
+ return
+
extension_paths = []
for dirname in [extensions_dir, extensions_builtin_dir]:
if not os.path.isdir(dirname):
diff --git a/modules/shared.py b/modules/shared.py
index 3ad0862b..c79ec67b 100644
--- a/modules/shared.py
+++ b/modules/shared.py
@@ -422,7 +422,8 @@ options_templates.update(options_section(('postprocessing', "Postprocessing"), {
}))
options_templates.update(options_section((None, "Hidden options"), {
- "disabled_extensions": OptionInfo([], "Disable those extensions"),
+ "disabled_extensions": OptionInfo([], "Disable these extensions"),
+ "disable_all_extensions": OptionInfo(False, "Disable all extensions (preserves the list of disabled extensions)"),
"sd_checkpoint_hash": OptionInfo("", "SHA256 hash of the current checkpoint"),
}))