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
This commit is contained in:
cschantz
2025-12-16 20:18:06 -05:00
parent c25b5fc19e
commit 13f68e80d2
+2 -5
View File
@@ -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
# 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 ""