add cnMirror

This commit is contained in:
josc146 2023-05-21 10:49:45 +08:00
parent 8d730d71ba
commit 825cbd15f8
7 changed files with 31 additions and 9 deletions

View File

@ -34,12 +34,16 @@ func (a *App) DepCheck() error {
return nil return nil
} }
func (a *App) InstallPyDep() (string, error) { func (a *App) InstallPyDep(cnMirror bool) (string, error) {
python, err := GetPython() python, err := GetPython()
if err != nil { if err != nil {
return "", err return "", err
} }
_, err = Cmd(python, "./backend-python/get-pip.py") if cnMirror {
_, err = Cmd(python, "./backend-python/get-pip.py", "-i", "https://pypi.tuna.tsinghua.edu.cn/simple")
} else {
_, err = Cmd(python, "./backend-python/get-pip.py")
}
if err != nil { if err != nil {
return "", err return "", err
} }
@ -48,5 +52,9 @@ func (a *App) InstallPyDep() (string, error) {
if err != nil { if err != nil {
return "", err return "", err
} }
return Cmd(python, "-m", "pip", "install", "-r", "./backend-python/requirements_versions.txt") if cnMirror {
return Cmd(python, "-m", "pip", "install", "-r", "./backend-python/requirements_versions.txt", "-i", "https://pypi.tuna.tsinghua.edu.cn/simple")
} else {
return Cmd(python, "-m", "pip", "install", "-r", "./backend-python/requirements_versions.txt")
}
} }

View File

@ -94,5 +94,6 @@
"Python target not found, would you like to download it?": "没有找到目标Python, 是否下载?", "Python target not found, would you like to download it?": "没有找到目标Python, 是否下载?",
"Python dependencies are incomplete, would you like to install them?": "Python依赖缺失, 是否安装?", "Python dependencies are incomplete, would you like to install them?": "Python依赖缺失, 是否安装?",
"Install": "安装", "Install": "安装",
"This is the latest version": "已是最新版" "This is the latest version": "已是最新版",
"Use Tsinghua Pip Mirrors": "使用清华大学Pip镜像源"
} }

View File

@ -52,7 +52,7 @@ export const RunButton: FC<{ onClickRun?: MouseEventHandler, iconMode?: boolean
}); });
} else if (depErrorMsg.includes('DepCheck Error')) { } else if (depErrorMsg.includes('DepCheck Error')) {
toastWithButton(t('Python dependencies are incomplete, would you like to install them?'), t('Install'), () => { toastWithButton(t('Python dependencies are incomplete, would you like to install them?'), t('Install'), () => {
InstallPyDep(); InstallPyDep(commonStore.settings.cnMirror);
}); });
} else { } else {
toast(depErrorMsg, {type: 'error'}); toast(depErrorMsg, {type: 'error'});

View File

@ -18,6 +18,7 @@ export type SettingsType = {
language: Language, language: Language,
darkMode: boolean darkMode: boolean
autoUpdatesCheck: boolean autoUpdatesCheck: boolean
cnMirror: boolean
} }
export const Settings: FC = observer(() => { export const Settings: FC = observer(() => {
@ -63,6 +64,17 @@ export const Settings: FC = observer(() => {
checkUpdate(true); checkUpdate(true);
}}/> }}/>
}/> }/>
{
commonStore.settings.language === 'zh' &&
<Labeled label={t('Use Tsinghua Pip Mirrors')} flex spaceBetween content={
<Switch checked={commonStore.settings.cnMirror}
onChange={(e, data) => {
commonStore.setSettings({
cnMirror: data.checked
});
}}/>
}/>
}
</div> </div>
}/> }/>
); );

View File

@ -48,7 +48,8 @@ class CommonStore {
settings: SettingsType = { settings: SettingsType = {
language: getUserLanguage(), language: getUserLanguage(),
darkMode: !isSystemLightMode(), darkMode: !isSystemLightMode(),
autoUpdatesCheck: true autoUpdatesCheck: true,
cnMirror: getUserLanguage() === 'zh'
}; };
// about // about

View File

@ -18,7 +18,7 @@ export function FileExists(arg1:string):Promise<boolean>;
export function GetPlatform():Promise<string>; export function GetPlatform():Promise<string>;
export function InstallPyDep():Promise<string>; export function InstallPyDep(arg1:boolean):Promise<string>;
export function ListDirFiles(arg1:string):Promise<Array<backend_golang.FileInfo>>; export function ListDirFiles(arg1:string):Promise<Array<backend_golang.FileInfo>>;

View File

@ -34,8 +34,8 @@ export function GetPlatform() {
return window['go']['backend_golang']['App']['GetPlatform'](); return window['go']['backend_golang']['App']['GetPlatform']();
} }
export function InstallPyDep() { export function InstallPyDep(arg1) {
return window['go']['backend_golang']['App']['InstallPyDep'](); return window['go']['backend_golang']['App']['InstallPyDep'](arg1);
} }
export function ListDirFiles(arg1) { export function ListDirFiles(arg1) {