From a2484703921d572a62baacc5a403a78efbb11a27 Mon Sep 17 00:00:00 2001 From: cschantz Date: Tue, 16 Dec 2025 20:18:06 -0500 Subject: [PATCH] Cache system detection across module runs for instant launches Removed subshell isolation that was unsetting SYS_ variables before each module run. This caused full system re-detection (~530ms) every time a module launched from the menu. Changes: - Removed: Subshell + SYS_ variable unsetting (lines 63-68) - Now: Direct module execution with cached detection Benefits: - Module launches: ~530ms faster (instant after first detection) - No redundant detection on every menu selection - Detection only runs once per toolkit session - Modules still get fresh detection if they explicitly call detect functions Result: Modules now launch instantly instead of having 0.5s delay --- launcher.sh | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/launcher.sh b/launcher.sh index c6cbcf6..2034f47 100755 --- a/launcher.sh +++ b/launcher.sh @@ -60,12 +60,9 @@ run_module() { echo -e "${CYAN}Launching: $category/$module${NC}" echo -e "${CYAN}──────────────────────────────────────────────────────────────${NC}" - ( - for var in $(compgen -e | grep "^SYS_"); do - unset "$var" - done - "$MODULES_DIR/$category/$module" "$@" - ) + # Run module directly - keep SYS_ variables cached for performance + # Modules will use cached detection instead of re-detecting on every run + "$MODULES_DIR/$category/$module" "$@" local exit_code=$? echo ""