-- mirror.lua (总控制台) -- __MIRROR_DIR__ 已经在 Rust 中注入完毕,并且是正斜杠格式 (例如 C:/Tools) local base_dir = __MIRROR_DIR__ -- 1. 自定义局部变量,方便复用与后续维护 local python_home = base_dir .. "/tools/python39" return { --------------------------------------------------- -- 1. 标准相对路径 + 正斜杠拼接 (最推荐,绿色便携) --------------------------------------------------- ["numa"] = { target = base_dir .. "/tools/numa/numa.exe", -- 追加参数 args = { "--help" }, aliases = {}, -- 注入环境变量,使用 get_env 获取宿主机当前值 env = { PATH = { base_dir .. "/tools/numa", get_env("PATH") } } }, ["git"] = { target = base_dir .. "/git/bin/git.exe", -- 追加参数 args = { "--no-pager" }, -- 注入环境变量,使用 get_env 获取宿主机当前值 env = { PATH = { base_dir .. "/git/bin", get_env("PATH") } } }, --------------------------------------------------- -- 2. Lua 原生字符串语法 [[ ]] (适合直接从 Windows 复制绝对路径) --------------------------------------------------- ["python"] = { -- 在 [[]] 内部,\ 不需要写成 \\,直接粘贴即可 target = [[C:\Python310\python.exe]], args = { "-B" }, -- 空字典也是合法的,等同于不设置 env = { -- 普通字符串:Rust 直接新建/覆盖该环境变量 PYTHON_HOME = python_home, HOME = base_dir .. "/home", -- 数组列表:将 python_home 以及 python_home/Scripts 依次拼接到 PATH 前面 PATH = { python_home, python_home .. "/Scripts", get_env("PATH") } } }, --------------------------------------------------- -- 3. 极简参数覆盖 (没有 args 和 env) --------------------------------------------------- ["curl"] = { target = base_dir .. "/curl/curl.exe" }, --------------------------------------------------- -- 4. 模块化路由 (得益于 Rust 注入的 package.path) -- require 能够直接在当前目录 或 tools/ 目录下寻找 node.lua -- 模块缺失时由 Rust 侧记录日志并跳过该条目(见 runtime.rs) --------------------------------------------------- ["node"] = require("node"), ["npm"] = require("npm") }