=========================== step 1 lua ProjectDIR/src/lmod.in.lua shell --regression_testing --version =========================== Modules based on Lua: Version 9.2 2026-04-06 14:48 -05:00 https://lmod.readthedocs.io =========================== step 2 lua ProjectDIR/src/lmod.in.lua shell --regression_testing --help =========================== Usage: module [options] sub-command [args ...] Options: -h -? -H --help This help message -s availStyle --style=availStyle Site controlled avail style: system (default: system) --regression_testing Lmod regression testing -b --brief brief listing with only user specified modules -D Program tracing written to stderr --debug=dbglvl Program tracing written to stderr (where dbglvl is a number 1,2,3) --pin_versions When doing a restore use specified version, do not follow defaults -d --default List default modules only when used with avail -q --quiet Do not print out warnings --expert Expert mode -t --terse Write out in machine readable format for commands: list, avail, spider, savelist --initial_load loading Lmod for first time in a user shell --latest Load latest (ignore default) -I --ignore_cache Treat the cache file(s) as out-of-date --novice Turn off expert and quiet flag --raw Print modulefile in raw output when used with show -w twidth --width=twidth Use this as max term width -v --version Print version info and quit -r --regexp use regular expression match --gitversion Dump git version in a machine readable way and quit --dumpversion Dump version in a machine readable way and quit --dumpname Dump the name Lmod in a machine readable way and quit --check_syntax --checkSyntax Checking module command syntax: do not load --config Report Lmod Configuration --miniConfig Report Lmod Configuration differences --config_json Report Lmod Configuration in json format --mt Report Module Table State --timer report run times -f --force force removal of a sticky module or save an empty collection --redirect Send the output of list, avail, spider to stdout (not stderr) --no_redirect Force output of list, avail and spider to stderr --show_hidden -A --all Avail and spider will report hidden modules --spider_timeout=timeout a timeout for spider -T --trace trace major changes such as loads --nx --no_extensions Do not print extensions --loc --location Just print the file location when using show --terse_show_extensions report extensions when doing a terse avail --pod Generate pod format module [options] sub-command [args ...] Help sub-commands: help prints this message help module [...] print help message from module(s) Loading/Unloading sub-commands: load | add module [...] load module(s) try-load | try-add module [...] Add module(s), do not complain if not found del | unload module [...] Remove module(s), do not complain if not found swap | sw | switch m1 m2 unload m1 and load m2 purge unload all modules refresh reload aliases from current list of modules. update reload all currently loaded modules. Listing / Searching sub-commands: list List loaded modules list s1 s2 ... List loaded modules that match the pattern avail | av List available modules avail | av string List available modules that contain "string". category | cat List all categories category | cat s1 s2 ... List all categories that match the pattern and display their modules overview | ov List all available modules by short names with number of versions overview | ov string List available modules by short names with number of versions that contain "string" spider List all possible modules spider module List all possible version of that module file spider string List all module that contain the "string". spider name/version Detailed information about that version of the module. whatis module Print whatis information about module keyword | key string Search all name and whatis that contain "string". Searching with Lmod: All searching (spider, list, avail, keyword) support regular expressions: -r spider '^p' Finds all the modules that start with `p' or `P' -r spider mpi Finds all modules that have "mpi" in their name. -r spider 'mpi$ Finds all modules that end with "mpi" in their name. Handling a collection of modules: save | s Save the current list of modules to a user defined "default" collection. save | s name Save the current list of modules to "name" collection. reset The same as "restore system" restore | r Restore modules from the user's "default" or system default. restore | r name Restore modules from "name" collection. restore system Restore module state to system defaults. savelist List of saved collections. describe | mcc name Describe the contents of a module collection. disable name Disable (i.e. remove) a collection. Deprecated commands: getdefault [name] load name collection of modules or user's "default" if no name given. ===> Use "restore" instead <==== setdefault [name] Save current list of modules to name if given, otherwise save as the default list for you the user. ===> Use "save" instead. <==== Miscellaneous sub-commands: is-loaded modulefile return a true status if module is loaded is-avail modulefile return a true status if module can be loaded show modulefile show the commands in the module file. use [-a] path Prepend or Append path to MODULEPATH. unuse path remove path from MODULEPATH. tablelist output list of active modules as a lua table. Important Environment Variables: LMOD_COLORIZE If defined to be "YES" then Lmod prints properties and warning in color. Lmod Web Sites Documentation: https://lmod.readthedocs.org GitHub: https://github.com/TACC/Lmod SourceForge: https://lmod.sf.net TACC Homepage: https://www.tacc.utexas.edu/research-development/tacc-projects/lmod To report a bug please read https://lmod.readthedocs.io/en/latest/075_bug_reporting.html Modules based on Lua: Version 9.2 2026-04-06 14:48 -05:00 https://lmod.readthedocs.io =========================== step 3 lua ProjectDIR/src/lmod.in.lua shell --regression_testing help =========================== Usage: module [options] sub-command [args ...] Options: -h -? -H --help This help message -s availStyle --style=availStyle Site controlled avail style: system (default: system) --regression_testing Lmod regression testing -b --brief brief listing with only user specified modules -D Program tracing written to stderr --debug=dbglvl Program tracing written to stderr (where dbglvl is a number 1,2,3) --pin_versions When doing a restore use specified version, do not follow defaults -d --default List default modules only when used with avail -q --quiet Do not print out warnings --expert Expert mode -t --terse Write out in machine readable format for commands: list, avail, spider, savelist --initial_load loading Lmod for first time in a user shell --latest Load latest (ignore default) -I --ignore_cache Treat the cache file(s) as out-of-date --novice Turn off expert and quiet flag --raw Print modulefile in raw output when used with show -w twidth --width=twidth Use this as max term width -v --version Print version info and quit -r --regexp use regular expression match --gitversion Dump git version in a machine readable way and quit --dumpversion Dump version in a machine readable way and quit --dumpname Dump the name Lmod in a machine readable way and quit --check_syntax --checkSyntax Checking module command syntax: do not load --config Report Lmod Configuration --miniConfig Report Lmod Configuration differences --config_json Report Lmod Configuration in json format --mt Report Module Table State --timer report run times -f --force force removal of a sticky module or save an empty collection --redirect Send the output of list, avail, spider to stdout (not stderr) --no_redirect Force output of list, avail and spider to stderr --show_hidden -A --all Avail and spider will report hidden modules --spider_timeout=timeout a timeout for spider -T --trace trace major changes such as loads --nx --no_extensions Do not print extensions --loc --location Just print the file location when using show --terse_show_extensions report extensions when doing a terse avail --pod Generate pod format module [options] sub-command [args ...] Help sub-commands: help prints this message help module [...] print help message from module(s) Loading/Unloading sub-commands: load | add module [...] load module(s) try-load | try-add module [...] Add module(s), do not complain if not found del | unload module [...] Remove module(s), do not complain if not found swap | sw | switch m1 m2 unload m1 and load m2 purge unload all modules refresh reload aliases from current list of modules. update reload all currently loaded modules. Listing / Searching sub-commands: list List loaded modules list s1 s2 ... List loaded modules that match the pattern avail | av List available modules avail | av string List available modules that contain "string". category | cat List all categories category | cat s1 s2 ... List all categories that match the pattern and display their modules overview | ov List all available modules by short names with number of versions overview | ov string List available modules by short names with number of versions that contain "string" spider List all possible modules spider module List all possible version of that module file spider string List all module that contain the "string". spider name/version Detailed information about that version of the module. whatis module Print whatis information about module keyword | key string Search all name and whatis that contain "string". Searching with Lmod: All searching (spider, list, avail, keyword) support regular expressions: -r spider '^p' Finds all the modules that start with `p' or `P' -r spider mpi Finds all modules that have "mpi" in their name. -r spider 'mpi$ Finds all modules that end with "mpi" in their name. Handling a collection of modules: save | s Save the current list of modules to a user defined "default" collection. save | s name Save the current list of modules to "name" collection. reset The same as "restore system" restore | r Restore modules from the user's "default" or system default. restore | r name Restore modules from "name" collection. restore system Restore module state to system defaults. savelist List of saved collections. describe | mcc name Describe the contents of a module collection. disable name Disable (i.e. remove) a collection. Deprecated commands: getdefault [name] load name collection of modules or user's "default" if no name given. ===> Use "restore" instead <==== setdefault [name] Save current list of modules to name if given, otherwise save as the default list for you the user. ===> Use "save" instead. <==== Miscellaneous sub-commands: is-loaded modulefile return a true status if module is loaded is-avail modulefile return a true status if module can be loaded show modulefile show the commands in the module file. use [-a] path Prepend or Append path to MODULEPATH. unuse path remove path from MODULEPATH. tablelist output list of active modules as a lua table. Important Environment Variables: LMOD_COLORIZE If defined to be "YES" then Lmod prints properties and warning in color. Lmod Web Sites Documentation: https://lmod.readthedocs.org GitHub: https://github.com/TACC/Lmod SourceForge: https://lmod.sf.net TACC Homepage: https://www.tacc.utexas.edu/research-development/tacc-projects/lmod To report a bug please read https://lmod.readthedocs.io/en/latest/075_bug_reporting.html Modules based on Lua: Version 9.2 2026-04-06 14:48 -05:00 https://lmod.readthedocs.io =========================== step 4 lua ProjectDIR/src/lmod.in.lua shell --regression_testing help amber =========================== Module Specific Help for "amber/9" The TACC Amber installation only includes the parallel Sander/pmemd modules. The Amber modulefile defines the following environment variables: TACC_AMBER_DIR, TACC_AMBER_DOC, TACC_AMBER_BIN for the location of the Amber distribution, documentation, and binaries, respectively. Also, AMBERHOME is set to the Amber Home Directory (TACC_AMBER_DIR), and $AMBERHOME/exe is included in the PATH variable. Here is an example command for executing the Sander module: sander.LES -i tes.in -o tes.out -p tes.prmtop.save -c tes.x -r tes.rst Version 9 =========================== step 5 lua ProjectDIR/src/lmod.in.lua shell --regression_testing --config =========================== Modules based on Lua: Version 9.2 2026-04-06 14:48 -05:00 https://lmod.readthedocs.io Description Value Allow root to use Lmod (LMOD_ALLOW_ROOT_USE) yes Allow TCL modulefiles (LMOD_ALLOW_TCL_FILES) yes Auto swapping (LMOD_AUTO_SWAP) yes Avail Style (LMOD_AVAIL_STYLE) Case Independent Sorting (LMOD_CASE_INDEPENDENT_SORTING) no Colorize Lmod (LMOD_COLORIZE) yes Configuration dir (LMOD_CONFIG_DIR) /etc/lmod Disable Same Name AutoSwap (LMOD_DISABLE_SAME_NAME_AUTOSWAP) no Display Extension w/ avail (LMOD_AVAIL_EXTENSIONS) yes Use ~/.config dir only (LMOD_USE_DOT_CONFIG_ONLY) no Downstream Module Conflicts (LMOD_DOWNSTREAM_CONFLICTS) no Allow duplicate paths (LMOD_DUPLICATE_PATHS) no Dynamic Spider Cache (LMOD_DYNAMIC_SPIDER_CACHE) yes Require Exact Match/no defaults (LMOD_EXACT_MATCH) no Export the module command (LMOD_EXPORT_MODULE) yes Allow extended default (LMOD_EXTENDED_DEFAULT) yes Use attached TCL over system call (LMOD_FAST_TCL_INTERP) yes Is fast TCL interp available (LMOD_USING_FAST_TCL_INTERP) no File ignore patterns (LMOD_FILE_IGNORE_PATTERNS) {"%.version[-._].*", "%.modulerc[-._].*"} Use italic instead of dim (LMOD_HIDDEN_ITALIC) no KSH Support (LMOD_KSH_SUPPORT) no Language used for err/msg/warn (LMOD_LANG) en Site message file (LMOD_SITE_MSG_FILE) lmod_config.lua location (LMOD_CONFIG_LOCATION) no LUA_CPATH @sys_lua_cpath@ LUA_PATH @sys_lua_path@ System lua-term (LMOD_HAVE_LUA_TERM) no Modules Auto Handling (MODULES_AUTO_HANDLING) no avail: Include modulepath dir (LMOD_MPATH_AVAIL) no MODULEPATH_INIT (LMOD_MODULEPATH_INIT) @PKG@/init/.modulespath -> MODULEPATH_ROOT (MODULEPATH_ROOT) NAG File (LMOD_ADMIN_FILE) ProjectDIR/src/../../etc/admin.list number of cache dirs 0 Pager (LMOD_PAGER) less Pager Options (LMOD_PAGER_OPTS) -XqMREF Path to HashSum (LMOD_HASHSUM_PATH) PATH_to_HASHSUM Path to Lua lua Pin Versions in restore (LMOD_PIN_VERSIONS) no Pkg Class name Pkg Lmod prefix @PREFIX@ Site controlled prefix (SITE_CONTROLLED_PREFIX) no Prepend order (LMOD_PREPEND_BLOCK) normal LMOD_RC (LMOD_RC) Redirect to stdout (LMOD_REDIRECT) no Supporting Full Settarg Use (LMOD_SETTARG_FULL_SUPPORT) no Site Name (LMOD_SITE_NAME) Site Pkg location standard Ignore Cache (LMOD_IGNORE_CACHE) no Cached loads (LMOD_CACHED_LOADS) no System Default Modules (LMOD_SYSTEM_DEFAULT_MODULES) System Name (LMOD_SYSTEM_NAME) SYSHOST (cluster name) (LMOD_SYSHOST) TCL Version Terse Decorations (LMOD_TERSE_DECORATIONS) yes User cache valid time(sec) (LMOD_ANCIENT_TIME) 86400 Write cache after (sec) (LMOD_SHORT_TIME) 2 Threshold (sec) (LMOD_THRESHOLD) 1 Tmod find first rule (LMOD_TMOD_PATH_RULE) no Tmod prepend PATH Rule (LMOD_TMOD_PATH_RULE) no Tracing (LMOD_TRACING) no uname -a User Cache Directory OutputDIR/.cache/lmod MODULEPATH: ProjectDIR/rt/help/mf LMOD_PACKAGE_PATH D nil LMOD_SYSTEM_DEFAULT_MODULES D __unknown__ LMOD_USING_FAST_TCL_INTERP Other yes no Active RC file(s): ProjectDIR/init/lmodrc.lua OutputDIR/.lmodrc.lua Lmod Property Table (LMOD_RC): propT = { arch = { displayT = { gpu = { color = "red", doc = "built for GPU", full_color = false, long = "(g)", short = "(g)", }, ["gpu:mic"] = { color = "red", doc = "built natively for MIC and GPU", full_color = false, long = "(g,m)", short = "(gm)", }, ["gpu:mic:offload"] = { color = "red", doc = "built natively for MIC and GPU and offload to the MIC", full_color = false, long = "(g,m,o)", short = "(@)", }, mic = { color = "blue", doc = "built for host and native MIC", full_color = false, long = "(m)", short = "(m)", }, ["mic:offload"] = { color = "blue", doc = "built for host, native MIC and offload to the MIC", full_color = false, long = "(m,o)", short = "(*)", }, offload = { color = "blue", doc = "built for offload to the MIC only", full_color = false, long = "(o)", short = "(o)", }, }, validT = { gpu = 1, mic = 1, offload = 1, }, }, lmod = { displayT = { sticky = { color = "red", doc = "Module is Sticky, requires --force to unload or purge", long = "(S)", short = "(S)", }, }, validT = { sticky = 1, }, }, state = { displayT = { experimental = { color = "blue", doc = "Experimental", long = "(E)", short = "(E)", }, obsolete = { color = "red", doc = "Obsolete", long = "(O)", short = "(O)", }, testing = { color = "green", doc = "Testing", long = "(T)", short = "(T)", }, }, validT = { experimental = 1, obsolete = 1, testing = 1, }, }, status = { displayT = { active = { color = "yellow", doc = "Module is loaded", long = "(L)", short = "(L)", }, }, validT = { active = 1, }, }, } =========================== step 6 lua ProjectDIR/src/lmod.in.lua shell --regression_testing --miniConfig =========================== Modules based on Lua: Version 9.2 2026-04-06 14:48 -05:00 https://lmod.readthedocs.io MODULEPATH: ProjectDIR/rt/help/mf LMOD_PACKAGE_PATH D nil LMOD_SYSTEM_DEFAULT_MODULES D __unknown__ LMOD_USING_FAST_TCL_INTERP Other yes no =========================== step 7 lua ProjectDIR/src/lmod.in.lua shell --regression_testing --pod =========================== =encoding UTF-8 module =head1 SYNOPSIS module [options] sub-command [args ...] =head1 DESCRIPTION This tool allow a user to control their environment by load and unloading modulefiles. See https://lmod.readthedocs.org for more details. =head1 OPTIONS =over 4 =item I<-h -? -H --help> This help message =item I<-s availStyle --style=availStyle> Site controlled avail style: system (default: system) =item I<--regression_testing> Lmod regression testing =item I<-b --brief> brief listing with only user specified modules =item I<-D> Program tracing written to stderr =item I<--debug=dbglvl> Program tracing written to stderr (where dbglvl is a number 1,2,3) =item I<--pin_versions> When doing a restore use specified version, do not follow defaults =item I<-d --default> List default modules only when used with avail =item I<-q --quiet> Do not print out warnings =item I<--expert> Expert mode =item I<-t --terse> Write out in machine readable format for commands: list, avail, spider, savelist =item I<--initial_load> loading Lmod for first time in a user shell =item I<--latest> Load latest (ignore default) =item I<-I --ignore_cache> Treat the cache file(s) as out-of-date =item I<--novice> Turn off expert and quiet flag =item I<--raw> Print modulefile in raw output when used with show =item I<-w twidth --width=twidth> Use this as max term width =item I<-v --version> Print version info and quit =item I<-r --regexp> use regular expression match =item I<--gitversion> Dump git version in a machine readable way and quit =item I<--dumpversion> Dump version in a machine readable way and quit =item I<--dumpname> Dump the name Lmod in a machine readable way and quit =item I<--check_syntax --checkSyntax> Checking module command syntax: do not load =item I<--config> Report Lmod Configuration =item I<--miniConfig> Report Lmod Configuration differences =item I<--config_json> Report Lmod Configuration in json format =item I<--mt> Report Module Table State =item I<--timer> report run times =item I<-f --force> force removal of a sticky module or save an empty collection =item I<--redirect> Send the output of list, avail, spider to stdout (not stderr) =item I<--no_redirect> Force output of list, avail and spider to stderr =item I<--show_hidden -A --all> Avail and spider will report hidden modules =item I<--spider_timeout=timeout> a timeout for spider =item I<-T --trace> trace major changes such as loads =item I<--nx --no_extensions> Do not print extensions =item I<--loc --location> Just print the file location when using show =item I<--terse_show_extensions> report extensions when doing a terse avail =item I<--pod> Generate pod format =back =head1 COMMAND OVERVIEW module [options] sub-command [args ...] Help sub-commands: help prints this message help module [...] print help message from module(s) Loading/Unloading sub-commands: load | add module [...] load module(s) try-load | try-add module [...] Add module(s), do not complain if not found del | unload module [...] Remove module(s), do not complain if not found swap | sw | switch m1 m2 unload m1 and load m2 purge unload all modules refresh reload aliases from current list of modules. update reload all currently loaded modules. Listing / Searching sub-commands: list List loaded modules list s1 s2 ... List loaded modules that match the pattern avail | av List available modules avail | av string List available modules that contain "string". category | cat List all categories category | cat s1 s2 ... List all categories that match the pattern and display their modules overview | ov List all available modules by short names with number of versions overview | ov string List available modules by short names with number of versions that contain "string" spider List all possible modules spider module List all possible version of that module file spider string List all module that contain the "string". spider name/version Detailed information about that version of the module. whatis module Print whatis information about module keyword | key string Search all name and whatis that contain "string". Searching with Lmod: All searching (spider, list, avail, keyword) support regular expressions: -r spider '^p' Finds all the modules that start with `p' or `P' -r spider mpi Finds all modules that have "mpi" in their name. -r spider 'mpi$ Finds all modules that end with "mpi" in their name. Handling a collection of modules: save | s Save the current list of modules to a user defined "default" collection. save | s name Save the current list of modules to "name" collection. reset The same as "restore system" restore | r Restore modules from the user's "default" or system default. restore | r name Restore modules from "name" collection. restore system Restore module state to system defaults. savelist List of saved collections. describe | mcc name Describe the contents of a module collection. disable name Disable (i.e. remove) a collection. Deprecated commands: getdefault [name] load name collection of modules or user's "default" if no name given. ===> Use "restore" instead <==== setdefault [name] Save current list of modules to name if given, otherwise save as the default list for you the user. ===> Use "save" instead. <==== Miscellaneous sub-commands: is-loaded modulefile return a true status if module is loaded is-avail modulefile return a true status if module can be loaded show modulefile show the commands in the module file. use [-a] path Prepend or Append path to MODULEPATH. unuse path remove path from MODULEPATH. tablelist output list of active modules as a lua table. Important Environment Variables: LMOD_COLORIZE If defined to be "YES" then Lmod prints properties and warning in color. Lmod Web Sites Documentation: https://lmod.readthedocs.org GitHub: https://github.com/TACC/Lmod SourceForge: https://lmod.sf.net TACC Homepage: https://www.tacc.utexas.edu/research-development/tacc-projects/lmod To report a bug please read https://lmod.readthedocs.io/en/latest/075_bug_reporting.html =head1 AUTHOR Robert McLay mclay@tacc.utexas.edu =========================== step 8 lua ProjectDIR/src/chkJson =========================== Json key: ld_preload has the wrong value: testV: libsandbox.so , v.value: Json is missing key: dot_files rcfileA is a table rcfileA has two entries propT is a table