From 210d76a62114980a98899a0c8937926cfd936e72 Mon Sep 17 00:00:00 2001 From: Cohee <18619528+Cohee1207@users.noreply.github.com> Date: Wed, 30 Aug 2023 18:34:42 +0300 Subject: [PATCH] Hold off launcher.bat --- Launcher.bat | 501 --------------------------------------------------- 1 file changed, 501 deletions(-) delete mode 100644 Launcher.bat diff --git a/Launcher.bat b/Launcher.bat deleted file mode 100644 index cca33efad..000000000 --- a/Launcher.bat +++ /dev/null @@ -1,501 +0,0 @@ -@echo off -REM -------------------------------------------- -REM This script was created by: Deffcolony -REM -------------------------------------------- -title SillyTavern Launcher -setlocal - -REM ANSI Escape Code for Colors -set "reset=" - -REM Strong Foreground Colors -set "white_fg_strong=" -set "red_fg_strong=" -set "green_fg_strong=" -set "yellow_fg_strong=" -set "blue_fg_strong=" -set "magenta_fg_strong=" -set "cyan_fg_strong=" - -REM Normal Background Colors -set "red_bg=" -set "blue_bg=" - -REM Environment Variables (TOOLBOX 7-Zip) -set "zip7version=7z2301-x64" -set "zip7_install_path=%ProgramFiles%\7-Zip" -set "zip7_download_path=%TEMP%\%zip7version%.exe" - -REM Environment Variables (TOOLBOX FFmpeg) -set "ffmpeg_url=https://www.gyan.dev/ffmpeg/builds/ffmpeg-git-full.7z" -set "ffdownload_path=%TEMP%\ffmpeg.7z" -set "ffextract_path=C:\ffmpeg" -set "bin_path=%ffextract_path%\bin" - -REM Environment Variables (TOOLBOX Node.js) -set "node_installer_path=%temp%\NodejsInstaller.msi" - - -REM Check if Git is installed if not then install git -git --version > nul 2>&1 -if %errorlevel% neq 0 ( - echo %yellow_fg_strong%[WARN]%reset% Git is not installed on this system. - echo %blue_fg_strong%[INFO]%reset% Installing Git... - bitsadmin /transfer "GitInstaller" /download /priority FOREGROUND "https://github.com/git-for-windows/git/releases/download/v2.42.0.windows.1/Git-2.42.0-64-bit.exe" "%temp%GitInstaller.exe" -rem curl -o "%temp%\GitInstaller.exe" "https://github.com/git-for-windows/git/releases/download/v2.42.0.windows.1/Git-2.42.0-64-bit.exe" - echo %blue_fg_strong%[INFO]%reset% Launching GitInstaller... - powershell.exe -nologo -noprofile -command "Start-Process '%temp%GitInstaller.exe' -Verb runAs" - echo %blue_bg%From the Git installer: Click NEXT on everything.%reset% - pause - del "%temp%GitInstaller.exe" - echo %green_fg_strong%Git is installed. Please restart the Launcher.%reset% - pause - exit -) - -REM Check for updates -git fetch origin - -for /f %%i in ('git rev-list HEAD...origin/%current_branch%') do ( - set "update_status=%yellow_fg_strong%Update Available%reset%" - goto :found_update -) - -set "update_status=%green_fg_strong%Up to Date%reset%" -:found_update - - -REM Home - frontend -:home -cls -echo %blue_fg_strong%/ Home%reset% -echo ------------------------------------- -echo What would you like to do? -echo 1. Start SillyTavern -echo 2. Update -echo 3. Switch to release branch -echo 4. Switch to staging branch -echo 5. Backup -echo 6. Toolbox -echo 7. Exit - -REM Get the current Git branch -for /f %%i in ('git branch --show-current') do set current_branch=%%i -echo ======== VERSION STATUS ========= -echo Current branch: %cyan_fg_strong%%current_branch%%reset% -echo Update Status: %update_status% -echo ================================= -set /p choice=Choose Your Destiny: - - -REM Home - backend -if "%choice%"=="1" ( - call :start -) else if "%choice%"=="2" ( - call :update -) else if "%choice%"=="3" ( - call :switch_release -) else if "%choice%"=="4" ( - call :switch_staging -) else if "%choice%"=="5" ( - call :backup_menu -) else if "%choice%"=="6" ( - call :toolbox -) else if "%choice%"=="7" ( - exit -) else ( - color 6 - echo WARNING: Invalid number. Please insert a valid number. - pause - goto :home -) - -:start -REM Check if Node.js is installed -node --version > nul 2>&1 -if %errorlevel% neq 0 ( - echo %red_fg_strong%[ERROR] node command not found in PATH%reset% - echo %red_bg%Please make sure Node.js is installed and added to your PATH.%reset% - echo %blue_bg%To install Node.js go to Toolbox%reset% - pause - goto :home -) - -echo Launching SillyTavern... -cls -pushd %~dp0 -call npm install --no-audit -node server.js -pause -popd -goto :home - -:update -echo Updating... -pushd %~dp0 - -REM Check if git is installed -git --version > nul 2>&1 -if %errorlevel% neq 0 ( - echo %red_fg_strong%[ERROR] git command not found in PATH. Skipping update.%reset% - echo %red_bg%Please make sure Git is installed and added to your PATH.%reset% - echo %blue_bg%To install Git go to Toolbox%reset% -) else ( - call git pull --rebase --autostash - if %errorlevel% neq 0 ( - REM incase there is still something wrong - echo There were errors while updating. Please download the latest version manually. - ) -) -pause -goto :home - - -:switch_release -REM Check if git is installed -git --version > nul 2>&1 -if %errorlevel% neq 0 ( - echo %red_fg_strong%[ERROR] git command not found in PATH%reset% - echo %red_bg%Please make sure Git is installed and added to your PATH.%reset% - echo %blue_bg%To install Git go to Toolbox%reset% - pause - goto :home -) -echo Switching to release branch... -git switch release -pause -goto :home - - -:switch_staging -REM Check if git is installed -git --version > nul 2>&1 -if %errorlevel% neq 0 ( - echo %red_fg_strong%[ERROR] git command not found in PATH%reset% - echo %red_bg%Please make sure git is installed and added to your PATH.%reset% - pause - goto :home -) -echo Switching to staging branch... -git switch staging -pause -goto :home - - - -REM backup - frontend -:backup_menu -REM Check if 7-Zip is installed -7z > nul 2>&1 -if %errorlevel% neq 0 ( - echo %red_fg_strong%[ERROR] 7z command not found in PATH%reset% - echo %red_bg%Please make sure 7-Zip is installed and added to your PATH.%reset% - echo %blue_bg%To install 7-Zip go to Toolbox%reset% - pause - goto :home -) - -cls -echo %blue_fg_strong%/ Home / Backup%reset% -echo ------------------------------------- -echo What would you like to do? -REM color 7 -echo 1. Create Backup -echo 2. Restore Backup -echo 3. Back to Home - -set /p backup_choice=Choose Your Destiny: - -REM backup - backend -if "%backup_choice%"=="1" ( - call :create_backup -) else if "%backup_choice%"=="2" ( - call :restore_backup -) else if "%backup_choice%"=="3" ( - goto :home -) else ( - color 6 - echo WARNING: Invalid number. Please insert a valid number. - pause - goto :backup_menu -) - - -REM toolbox - frontend -:toolbox -cls -echo %blue_fg_strong%/ Home / Toolbox%reset% -echo ------------------------------------- -echo What would you like to do? -REM color 7 -echo 1. Install 7-Zip -echo 2. Install FFmpeg -echo 3. Install Node.js -echo 4. Edit Environment - Power Users only! -echo 5. Reinstall SillyTavern -echo 6. Back to Home - -set /p toolbox_choice=Choose Your Destiny: - -REM toolbox - backend -if "%toolbox_choice%"=="1" ( - call :install7zip -) else if "%toolbox_choice%"=="2" ( - call :installffmpeg -) else if "%toolbox_choice%"=="3" ( - call :installnodejs -) else if "%toolbox_choice%"=="4" ( - call :editenvironment -) else if "%toolbox_choice%"=="5" ( - call :reinstallsillytavern -) else if "%toolbox_choice%"=="6" ( - goto :home -) else ( - color 6 - echo WARNING: Invalid number. Please insert a valid number. - pause - goto :toolbox -) - - -:install7zip -echo Downloading 7-Zip... -curl -o "%TEMP%\%zip7version%.exe" "https://www.7-zip.org/a/%zip7version%.exe" - -echo Launching 7-Zip installer... -echo %blue_bg%Make sure to install 7-Zip at %zip7_install_path%%reset% -"%TEMP%\%zip7version%.exe" - - -rem Get the current PATH value from the registry -for /f "tokens=2*" %%A in ('reg query "HKCU\Environment" /v PATH') do set "current_path=%%B" - -rem Check if the paths are already in the current PATH -echo %current_path% | find /i "%zip7_install_path%" > nul -set "zip7_path_exists=%errorlevel%" - -rem Append the new paths to the current PATH only if they don't exist -if %zip7_path_exists% neq 0 ( - set "new_path=%current_path%;%zip7_install_path%" - echo %green_fg_strong%7-Zip added to PATH.%reset% -) else ( - set "new_path=%current_path%" - echo %yellow_fg_strong%[WARN] 7-Zip already exists in PATH!%reset% -) - -rem Update the PATH value in the registry -reg add "HKCU\Environment" /v PATH /t REG_EXPAND_SZ /d "%new_path%" /f - -rem Update the PATH value for the current session -setx PATH "%new_path%" - -del "%zip7_download_path%" -echo %green_fg_strong%7-Zip is installed. Please restart the Launcher.%reset% -pause -exit - - -:installffmpeg -REM Check if 7-Zip is installed -7z > nul 2>&1 -if %errorlevel% neq 0 ( - echo %red_fg_strong%[ERROR] 7z command not found in PATH%reset% - echo %red_bg%Please make sure 7-Zip is installed and added to your PATH.%reset% - echo %blue_bg%To install 7-Zip go to Toolbox%reset% - pause - goto :toolbox -) - -echo Downloading FFmpeg archive... -rem bitsadmin /transfer "ffmpeg" /download /priority FOREGROUND "%ffmpeg_url%" "%ffdownload_path%" -curl -o "%ffdownload_path%" "%ffmpeg_url%" - -echo Creating ffmpeg directory if it doesn't exist... -if not exist "%ffextract_path%" ( - mkdir "%ffextract_path%" -) - -echo Extracting FFmpeg archive... -7z x "%ffdownload_path%" -o"%ffextract_path%" - - -echo Moving FFmpeg contents to C:\ffmpeg... -for /d %%i in ("%ffextract_path%\ffmpeg-*-full_build") do ( - xcopy "%%i\bin" "%ffextract_path%\bin" /E /I /Y - xcopy "%%i\doc" "%ffextract_path%\doc" /E /I /Y - xcopy "%%i\presets" "%ffextract_path%\presets" /E /I /Y - rd "%%i" /S /Q -) - -rem Get the current PATH value from the registry -for /f "tokens=2*" %%A in ('reg query "HKCU\Environment" /v PATH') do set "current_path=%%B" - -rem Check if the paths are already in the current PATH -echo %current_path% | find /i "%bin_path%" > nul -set "ff_path_exists=%errorlevel%" - -rem Append the new paths to the current PATH only if they don't exist -if %ff_path_exists% neq 0 ( - set "new_path=%current_path%;%bin_path%" - echo %green_fg_strong%ffmpeg added to PATH.%reset% -) else ( - set "new_path=%current_path%" - echo %yellow_fg_strong%[WARN] ffmpeg already exists in PATH!%reset% -) - -rem Update the PATH value in the registry -reg add "HKCU\Environment" /v PATH /t REG_EXPAND_SZ /d "%new_path%" /f - -rem Update the PATH value for the current session -setx PATH "%new_path%" > nul - -del "%ffdownload_path%" -echo %green_fg_strong%FFmpeg is installed. Please restart the Launcher.%reset% -pause -exit - - -:installnodejs -rem bitsadmin /transfer "NodejsInstaller" /download /priority FOREGROUND "https://nodejs.org/dist/v18.17.1/node-v18.17.1-x64.msi" "%node_installer_path%" -curl -o "%node_installer_path%" "https://nodejs.org/dist/v18.17.1/node-v18.17.1-x64.msi" -echo %blue_fg_strong%[INFO]%reset% Installing Nodejs... -msiexec /i "%node_installer_path%" /passive -echo %green_fg_strong%Node.js is installed. Please restart the Launcher.%reset% -pause -exit - - -:editenvironment -rundll32.exe sysdm.cpl,EditEnvironmentVariables -goto :toolbox - - -:reinstallsillytavern -setlocal enabledelayedexpansion -chcp 65001 > nul -REM Define the names of items to be excluded -set "script_name=%~nx0" -set "excluded_folders=backups" -set "excluded_files=!script_name!" - -REM Confirm with the user before proceeding -echo. -echo %red_bg%╔════ DANGER ZONE ══════════════════════════════════════════════════════════════════════════════╗%reset% -echo %red_bg%║ WARNING: This will delete all data in the current branch except the Backups. ║%reset% -echo %red_bg%║ If you want to keep any data, make sure to create a backup before proceeding. ║%reset% -echo %red_bg%╚═══════════════════════════════════════════════════════════════════════════════════════════════╝%reset% -echo. -echo Are you sure you want to proceed? (Y/N) -set /p "confirmation=" -if /i "!confirmation!"=="Y" ( - REM Remove non-excluded folders - for /d %%D in (*) do ( - set "exclude_folder=" - for %%E in (!excluded_folders!) do ( - if "%%D"=="%%E" set "exclude_folder=true" - ) - if not defined exclude_folder ( - rmdir /s /q "%%D" 2>nul - ) - ) - - REM Remove non-excluded files - for %%F in (*) do ( - set "exclude_file=" - for %%E in (!excluded_files!) do ( - if "%%F"=="%%E" set "exclude_file=true" - ) - if not defined exclude_file ( - del /f /q "%%F" 2>nul - ) - ) - - REM Clone repo into %temp% folder - git clone https://github.com/SillyTavern/SillyTavern.git "%temp%\SillyTavernTemp" - - REM Move the contents of the temporary folder to the current directory - xcopy /e /y "%temp%\SillyTavernTemp\*" . - - REM Clean up the temporary folder - rmdir /s /q "%temp%\SillyTavernTemp" - - echo %green_fg_strong%SillyTavern reinstalled successfully!%reset% -) else ( - echo Reinstall canceled. -) -endlocal -pause -goto :toolbox - - -:create_backup -REM Create a backup using 7zip -7z a "backups\backup_.7z" ^ - "public\assets\*" ^ - "public\Backgrounds\*" ^ - "public\Characters\*" ^ - "public\Chats\*" ^ - "public\context\*" ^ - "public\Group chats\*" ^ - "public\Groups\*" ^ - "public\instruct\*" ^ - "public\KoboldAI Settings\*" ^ - "public\movingUI\*" ^ - "public\NovelAI Settings\*" ^ - "public\OpenAI Settings\*" ^ - "public\QuickReplies\*" ^ - "public\TextGen Settings\*" ^ - "public\themes\*" ^ - "public\User Avatars\*" ^ - "public\user\*" ^ - "public\worlds\*" ^ - "public\settings.json" ^ - "secrets.json" - -REM Rename the backup file with current date and time -for /f "tokens=1-5 delims=/ " %%d in ("%date%") do ( - for /f "tokens=1-2 delims=:." %%h in ("%time%") do ( - rename "backups\backup_.7z" backup_%%e-%%f-%%g_%%h%%i.7z - ) -) - -echo %green_fg_strong%Backup created successfully!%reset% -pause -endlocal -goto :backup_menu - - -:restore_backup -REM Restore a backup using 7zip - -echo List of available backups: -echo ========================= - -setlocal enabledelayedexpansion -set "backup_count=0" - -for %%F in ("backups\backup_*.7z") do ( - set /a "backup_count+=1" - set "backup_files[!backup_count!]=%%~nF" - echo !backup_count!. %cyan_fg_strong%%%~nF%reset% -) - -echo ========================= -set /p "restore_choice=Enter number of backup to restore: " - -if "%restore_choice%" geq "1" ( - if "%restore_choice%" leq "%backup_count%" ( - set "selected_backup=!backup_files[%restore_choice%]!" - echo Restoring backup !selected_backup!... - 7z x "backups\!selected_backup!.7z" -o"SillyTavern\public" - echo %green_fg_strong%!selected_backup! restored successfully.%reset% - ) else ( - color 6 - echo WARNING: Invalid backup number. Please insert a valid number. - ) -) else ( - color 6 - echo WARNING: Invalid number. Please insert a valid number. -) -pause -goto :backup_menu