👍️[Update] Installer : GPUを使う項目を追加

This commit is contained in:
misyaguziya
2024-10-23 03:12:27 +09:00
parent c480b3694c
commit 2136865493

View File

@@ -243,7 +243,7 @@ Function PageTranscript
${NSD_CreateDropList} 33% 20u 33% 12u "" ${NSD_CreateDropList} 33% 20u 33% 12u ""
Pop $DropLListTranscriptEngines Pop $DropLListTranscriptEngines
${NSD_CB_AddString} $DropLListTranscriptEngines "Google" ${NSD_CB_AddString} $DropLListTranscriptEngines "Google"
${NSD_CB_AddString} $DropLListTranscriptEngines "Wishper(USE CPU)" ${NSD_CB_AddString} $DropLListTranscriptEngines "Wishper"
${NSD_CB_SelectString} $DropLListTranscriptEngines "Google" ${NSD_CB_SelectString} $DropLListTranscriptEngines "Google"
${NSD_CreateLabel} 0 52u 33% 12u "Select AI Model Size" ${NSD_CreateLabel} 0 52u 33% 12u "Select AI Model Size"
${NSD_CreateDropList} 33% 50u 40% 12u "" ${NSD_CreateDropList} 33% 50u 40% 12u ""
@@ -290,13 +290,41 @@ FunctionEnd
Function OnDropListWishperDownloadWeightClick Function OnDropListWishperDownloadWeightClick
${NSD_GetText} $DropLListTranscriptEngines $0 ${NSD_GetText} $DropLListTranscriptEngines $0
${If} $0 == "Wishper(USE CPU)" ${If} $0 == "Wishper"
EnableWindow $DropListWhisperDownloadWeightType 1 EnableWindow $DropListWhisperDownloadWeightType 1
${Else} ${Else}
EnableWindow $DropListWhisperDownloadWeightType 0 EnableWindow $DropListWhisperDownloadWeightType 0
${EndIf} ${EndIf}
FunctionEnd FunctionEnd
Var CheckboxUseCUDA
Var DialogSelectInstallDeviceVersion
Page custom PageSelectInstallDeviceVersion PageLeaveSelectInstallDeviceVersion
Function PageSelectInstallDeviceVersion
!insertmacro MUI_HEADER_TEXT "Initial Settings" "Enable GPUs for translation and transcription."
nsDialogs::Create 1018
Pop $DialogSelectInstallDeviceVersion
${If} $DialogSelectInstallDeviceVersion == error
Abort
${EndIf}
${NSD_CreateLabel} 0 21u 33% 12u "Enable the use of GPUs"
${NSD_CreateCheckBox} 33% 20u 33% 12u ""
Pop $CheckboxUseCUDA
nsDialogs::Show
FunctionEnd
Function PageLeaveSelectInstallDeviceVersion
${NSD_GetState} $CheckboxUseCUDA $0
${If} $0 == 1
StrCpy $CheckboxUseCUDA "true"
${Else}
StrCpy $CheckboxUseCUDA "false"
${EndIf}
FunctionEnd
!insertmacro MUI_PAGE_COMPONENTS !insertmacro MUI_PAGE_COMPONENTS
; 4-4. Custom page to ask user if he wants to reinstall/uninstall ; 4-4. Custom page to ask user if he wants to reinstall/uninstall
@@ -735,10 +763,18 @@ Section Install
; 指定のURLからファイルをダウンロード ; 指定のURLからファイルをダウンロード
!define SOFTWARE_RELEASE_URL "https://api.github.com/repos/misyaguziya/VRCT/releases/latest" !define SOFTWARE_RELEASE_URL "https://api.github.com/repos/misyaguziya/VRCT/releases/latest"
!define SOFTWARE_DOWNLOAD_FILENAME "VRCT.zip" !define SOFTWARE_DOWNLOAD_FILENAME "VRCT.zip"
!define SOFTWARE_CUDA_DOWNLOAD_FILENAME "VRCT_cuda.zip"
!define SOFTWARE_JSON_FILENAME "response.json" !define SOFTWARE_JSON_FILENAME "response.json"
Var /GLOBAL i Var /GLOBAL i
Var /GLOBAL cmder_dl Var /GLOBAL cmder_dl
Var /GLOBAL cmder_version Var /GLOBAL cmder_version
Var /GLOBAL file_name
${If} $CheckboxUseCUDA == "true"
StrCpy $file_name "${SOFTWARE_CUDA_DOWNLOAD_FILENAME}"
${Else}
StrCpy $file_name "${SOFTWARE_DOWNLOAD_FILENAME}"
${EndIf}
DetailPrint "Fetching Latest Release from GitHub (${SOFTWARE_RELEASE_URL})" DetailPrint "Fetching Latest Release from GitHub (${SOFTWARE_RELEASE_URL})"
inetc::get /SILENT "${SOFTWARE_RELEASE_URL}" "$TEMP\${SOFTWARE_JSON_FILENAME}" inetc::get /SILENT "${SOFTWARE_RELEASE_URL}" "$TEMP\${SOFTWARE_JSON_FILENAME}"
@@ -756,7 +792,7 @@ Section Install
${ForEach} $i 0 $R0 + 1 ${ForEach} $i 0 $R0 + 1
nsJSON::Get 'assets' /index $i 'name' /end nsJSON::Get 'assets' /index $i 'name' /end
Pop $R1 Pop $R1
StrCmp $R1 "${SOFTWARE_DOWNLOAD_FILENAME}" done StrCmp $R1 $file_name done
${Next} ${Next}
done: done:
@@ -764,16 +800,16 @@ Section Install
Pop $cmder_dl Pop $cmder_dl
DetailPrint "Got URL : $cmder_dl" DetailPrint "Got URL : $cmder_dl"
DetailPrint "Downloading ${SOFTWARE_DOWNLOAD_FILENAME}..." DetailPrint "Downloading $file_name..."
inetc::get $cmder_dl "$TEMP\${SOFTWARE_DOWNLOAD_FILENAME}" inetc::get $cmder_dl "$TEMP\$file_name"
Pop $0 Pop $0
StrCmp "$0" "OK" dlok StrCmp "$0" "OK" dlok
DetailPrint "Download Failed $0" DetailPrint "Download Failed $0"
Abort Abort
dlok: dlok:
DetailPrint "Extracting ${SOFTWARE_DOWNLOAD_FILENAME}..." DetailPrint "Extracting $file_name ..."
nsisunz::UnzipToStack "$TEMP\${SOFTWARE_DOWNLOAD_FILENAME}" $INSTDIR nsisunz::UnzipToStack "$TEMP\$file_name" $INSTDIR
; Create uninstaller ; Create uninstaller
WriteUninstaller "$INSTDIR\uninstall.exe" WriteUninstaller "$INSTDIR\uninstall.exe"