diff --git a/backend-golang/rwkv.go b/backend-golang/rwkv.go index cd68e82..2f42527 100644 --- a/backend-golang/rwkv.go +++ b/backend-golang/rwkv.go @@ -4,6 +4,7 @@ import ( "errors" "os" "os/exec" + "path/filepath" "runtime" "strconv" "strings" @@ -51,6 +52,10 @@ func (a *App) InstallPyDep(python string, cnMirror bool) (string, error) { if python == "" { python, err = GetPython() if runtime.GOOS == "windows" { + python, err = filepath.Abs(python) + if err != nil { + return "", err + } python = `"` + python + `"` } } diff --git a/backend-golang/utils.go b/backend-golang/utils.go index d14c288..455c458 100644 --- a/backend-golang/utils.go +++ b/backend-golang/utils.go @@ -115,19 +115,11 @@ func GetPython() (string, error) { if err != nil { return "", errors.New("failed to unzip python") } else { - python, err := filepath.Abs("py310/python.exe") - if err != nil { - return "", err - } - return python, nil + return "py310/python.exe", nil } } } else { - python, err := filepath.Abs("py310/python.exe") - if err != nil { - return "", err - } - return python, nil + return "py310/python.exe", nil } case "darwin": return "python3", nil diff --git a/frontend/src/_locales/zh-hans/main.json b/frontend/src/_locales/zh-hans/main.json index 4b4d6ae..dfac0e1 100644 --- a/frontend/src/_locales/zh-hans/main.json +++ b/frontend/src/_locales/zh-hans/main.json @@ -136,7 +136,7 @@ "Custom Python Path": "自定义Python路径", "Custom Models Path": "自定义模型路径", "Microsoft Visual C++ Redistributable is not installed, would you like to download it?": "微软VC++组件未安装, 是否下载?", - "Path Cannot Contain Space": "路径不能包含空格", + "File Path Cannot Contain Space": "文件路径不能包含空格", "Failed to switch model, please try starting the program with administrator privileges or increasing your virtual memory.": "切换模型失败, 请尝试以管理员权限启动程序, 或增加你的虚拟内存", "Current Strategy": "当前Strategy", "MacOS is not yet supported for performing this operation, please do it manually.": "MacOS尚未支持此操作, 请手动执行", @@ -144,5 +144,6 @@ "On Linux system, you must manually install python dependencies.": "在Linux系统下, 你必须手动安装python依赖", "Update completed, please restart the program.": "更新完成, 请重启程序", "Are you sure you want to reset this page? It cannot be undone.": "你确定要重置本页吗?这无法撤销", - "Model file download is not complete": "模型文件下载未完成" + "Model file download is not complete": "模型文件下载未完成", + "Error": "错误" } \ No newline at end of file diff --git a/frontend/src/components/RunButton.tsx b/frontend/src/components/RunButton.tsx index a56e9a3..eba9776 100644 --- a/frontend/src/components/RunButton.tsx +++ b/frontend/src/components/RunButton.tsx @@ -78,8 +78,13 @@ export const RunButton: FC<{ onClickRun?: MouseEventHandler, iconMode?: boolean toast(depErrorMsg, { type: 'info', position: 'bottom-left' }); if (commonStore.platform != 'linux') toastWithButton(t('Python dependencies are incomplete, would you like to install them?'), t('Install'), () => { - InstallPyDep(commonStore.settings.customPythonPath, commonStore.settings.cnMirror); + InstallPyDep(commonStore.settings.customPythonPath, commonStore.settings.cnMirror).catch((e) => { + const errMsg = e.message || e; + toast(t('Error') + ' - ' + errMsg, { type: 'error' }); + }); setTimeout(WindowShow, 1000); + }, { + autoClose: 8000 }); else toastWithButton(t('On Linux system, you must manually install python dependencies.'), t('Check'), () => { @@ -131,7 +136,13 @@ export const RunButton: FC<{ onClickRun?: MouseEventHandler, iconMode?: boolean await exit(1000).catch(() => { }); - StartServer(commonStore.settings.customPythonPath, port, commonStore.settings.host !== '127.0.0.1' ? '0.0.0.0' : '127.0.0.1'); + StartServer(commonStore.settings.customPythonPath, port, commonStore.settings.host !== '127.0.0.1' ? '0.0.0.0' : '127.0.0.1').catch((e) => { + const errMsg = e.message || e; + if (errMsg.includes('path contains space')) + toast(`${t('Error')} - ${t('File Path Cannot Contain Space')}`, { type: 'error' }); + else + toast(t('Error') + ' - ' + errMsg, { type: 'error' }); + }); setTimeout(WindowShow, 1000); let timeoutCount = 6; diff --git a/frontend/src/pages/Configs.tsx b/frontend/src/pages/Configs.tsx index e607bb6..d927ecb 100644 --- a/frontend/src/pages/Configs.tsx +++ b/frontend/src/pages/Configs.tsx @@ -259,7 +259,7 @@ export const Configs: FC = observer(() => { }).catch(e => { const errMsg = e.message || e; if (errMsg.includes('path contains space')) - toast(`${t('Convert Failed')} - ${t('Path Cannot Contain Space')}`, { type: 'error' }); + toast(`${t('Convert Failed')} - ${t('File Path Cannot Contain Space')}`, { type: 'error' }); else toast(`${t('Convert Failed')} - ${e.message || e}`, { type: 'error' }); });