Files
synology-thumbgen/autoThumbs.bat
2025-07-01 23:27:50 -06:00

143 lines
3.9 KiB
Batchfile

@echo off
setlocal
REM Always use 'nathan' as NAS username
set NASUSER=nathan
REM Menu for operation selection
echo.
echo Select operation:
echo 1. Generate thumbnails only
echo 2. SSH cleanup only
echo 3. Both (generate thumbnails + SSH cleanup)
echo 4. Fix OneDrive thumbnail override (NEW!)
echo.
set /p CHOICE=Enter your choice (1-4):
if "%CHOICE%"=="1" goto THUMBS_ONLY
if "%CHOICE%"=="2" goto SSH_ONLY
if "%CHOICE%"=="3" goto BOTH
if "%CHOICE%"=="4" goto FIX_ONEDRIVE
echo Invalid choice. Exiting.
exit /b
:THUMBS_ONLY
REM Prompt for Windows path
set /p WINPATH=Enter the full Windows path to your NAS directory (e.g., R:\YouTube\Streams\MixerTwitch):
if "%WINPATH%"=="" (
echo No path provided. Exiting.
exit /b
)
REM Run psthumbgen.py
python psthumbgen.py --directory "%WINPATH%"
goto END
:SSH_ONLY
REM Prompt for Windows path
set /p WINPATH=Enter the full Windows path to your NAS directory (e.g., R:\YouTube\Streams\MixerTwitch):
if "%WINPATH%"=="" (
echo No path provided. Exiting.
exit /b
)
REM Convert Windows path to NAS path
set "RELPATH=%WINPATH:~3%"
set "RELPATH=%RELPATH:\=/%"
set "NASPATH=/volume1/Hydra/%RELPATH%"
echo DEBUG: WINPATH = %WINPATH%
echo DEBUG: RELPATH = %RELPATH%
echo DEBUG: NASPATH = %NASPATH%
echo.
REM SSH cleanup commands (run separately)
echo Running SSH cleanup commands...
echo.
echo Please run these commands manually on your NAS:
echo.
echo ssh nathan@hydra
echo find "%NASPATH%" -type d -name '@eaDir' -exec rm -rf '{}' \;
echo find "%NASPATH%" -type d -name 'eaDir_tmp' -exec bash -c 'mv "$0" "${0%%/*}/@eaDir"' {} \;
echo.
echo Press any key when done...
goto END
:BOTH
REM Prompt for Windows path
set /p WINPATH=Enter the full Windows path to your NAS directory (e.g., R:\YouTube\Streams\MixerTwitch):
if "%WINPATH%"=="" (
echo No path provided. Exiting.
exit /b
)
REM Run psthumbgen.py
python psthumbgen.py --directory "%WINPATH%"
REM Convert Windows path to NAS path
set "RELPATH=%WINPATH:~3%"
set "RELPATH=%RELPATH:\=/%"
set "NASPATH=/volume1/Hydra/%RELPATH%"
echo DEBUG: WINPATH = %WINPATH%
echo DEBUG: RELPATH = %RELPATH%
echo DEBUG: NASPATH = %NASPATH%
echo.
REM SSH cleanup commands (run separately)
echo Running SSH cleanup commands...
echo.
echo Please run these commands manually on your NAS:
echo.
echo ssh nathan@hydra
echo find "%NASPATH%" -type d -name '@eaDir' -exec rm -rf '{}' \;
echo find "%NASPATH%" -type d -name 'eaDir_tmp' -exec bash -c 'mv "$0" "${0%%/*}/@eaDir"' {} \;
echo.
echo Press any key when done...
goto END
:FIX_ONEDRIVE
echo.
echo =================================================================
echo FIX ONEDRIVE THUMBNAIL OVERRIDE
echo =================================================================
echo.
echo This will fix OneDrive overriding your custom thumbnails with
echo generic file icons for unsupported formats like .blend files.
echo.
echo What this does:
echo - Disables OneDrive cloud thumbnail providers
echo - Restores local thumbnail priority
echo - Prevents future thumbnail cache deletion
echo.
set /p CONFIRM=Continue? (y/n):
if /i not "%CONFIRM%"=="y" goto END
echo.
echo Running PowerShell script to fix OneDrive thumbnail override...
echo.
REM Check if PowerShell script exists
if not exist "fix_thumbnail_override.ps1" (
echo ERROR: fix_thumbnail_override.ps1 not found in current directory.
echo Please ensure the PowerShell script is in the same folder as this batch file.
pause
goto END
)
REM Run PowerShell script as administrator
powershell -ExecutionPolicy Bypass -Command "Start-Process PowerShell -ArgumentList '-ExecutionPolicy Bypass -File \"%~dp0fix_thumbnail_override.ps1\"' -Verb RunAs"
echo.
echo OneDrive thumbnail override fix initiated.
echo Please check the PowerShell window for progress and results.
echo.
echo After the fix completes:
echo 1. Restart your computer
echo 2. Re-run your thumbnail generation process
echo 3. Your custom thumbnails should now have priority!
echo.
goto END
:END
pause