SVG-Compress hinzugefügt via svg-polish python module
This commit is contained in:
+71
-6
@@ -44,13 +44,22 @@ rem ---- Python discovery (avoid MS Store alias) ----
|
||||
set "PY_CMD="
|
||||
set "USE_PY_LAUNCHER="
|
||||
|
||||
rem 1) Prefer local embeddable first
|
||||
if exist "%PY_EXE%" (
|
||||
set "PY_CMD=%PY_EXE%"
|
||||
if defined VIRTUAL_ENV (
|
||||
if exist "%VIRTUAL_ENV%\Scripts\python.exe" (
|
||||
set "PY_CMD=%VIRTUAL_ENV%\Scripts\python.exe"
|
||||
goto :have_python
|
||||
)
|
||||
)
|
||||
|
||||
if exist "%SELF_DIR%.venv\Scripts\python.exe" (
|
||||
set "PY_CMD=%SELF_DIR%.venv\Scripts\python.exe"
|
||||
goto :have_python
|
||||
)
|
||||
if exist "%SELF_DIR%venv\Scripts\python.exe" (
|
||||
set "PY_CMD=%SELF_DIR%venv\Scripts\python.exe"
|
||||
goto :have_python
|
||||
)
|
||||
|
||||
rem 2) Real python.exe in PATH (exclude WindowsApps alias)
|
||||
for /f "delims=" %%P in ('where python.exe 2^>nul') do (
|
||||
echo %%P | find /I "WindowsApps" >nul
|
||||
if errorlevel 1 (
|
||||
@@ -66,7 +75,6 @@ for /f "delims=" %%P in ('where python3.exe 2^>nul') do (
|
||||
)
|
||||
)
|
||||
|
||||
rem 3) Python launcher py.exe (exclude WindowsApps)
|
||||
for /f "delims=" %%P in ('where py.exe 2^>nul') do (
|
||||
echo %%P | find /I "WindowsApps" >nul
|
||||
if errorlevel 1 (
|
||||
@@ -76,7 +84,11 @@ for /f "delims=" %%P in ('where py.exe 2^>nul') do (
|
||||
)
|
||||
)
|
||||
|
||||
rem 4) Download embeddable locally
|
||||
if exist "%PY_EXE%" (
|
||||
set "PY_CMD=%PY_EXE%"
|
||||
goto :have_python
|
||||
)
|
||||
|
||||
if not exist "%SELF_DIR%%PY_EMBED_ZIP%" (
|
||||
echo [INFO] Kein Python gefunden. Lade Embeddable Python %PY_EMBED_VERSION% ...
|
||||
powershell -NoLogo -NoProfile -Command ^
|
||||
@@ -113,6 +125,59 @@ if not exist "%SCRIPT%" (
|
||||
set "RUN_ARGS=%*"
|
||||
if "%~1"=="" set "RUN_ARGS=-h"
|
||||
|
||||
echo [INFO] Pruefe und installiere Python-Abhaengigkeit: svg-polish ...
|
||||
set "PIP_OK=0"
|
||||
if defined USE_PY_LAUNCHER (
|
||||
"%PY_CMD%" -3 -m pip --version >nul 2>&1
|
||||
) else (
|
||||
"%PY_CMD%" -m pip --version >nul 2>&1
|
||||
)
|
||||
if not errorlevel 1 set "PIP_OK=1"
|
||||
|
||||
if "%PIP_OK%"=="0" (
|
||||
echo [INFO] pip nicht verfuegbar. Versuche ensurepip ...
|
||||
if defined USE_PY_LAUNCHER (
|
||||
"%PY_CMD%" -3 -m ensurepip --upgrade >nul 2>&1
|
||||
) else (
|
||||
"%PY_CMD%" -m ensurepip --upgrade >nul 2>&1
|
||||
)
|
||||
if defined USE_PY_LAUNCHER (
|
||||
"%PY_CMD%" -3 -m pip --version >nul 2>&1
|
||||
) else (
|
||||
"%PY_CMD%" -m pip --version >nul 2>&1
|
||||
)
|
||||
if not errorlevel 1 set "PIP_OK=1"
|
||||
)
|
||||
|
||||
if "%PIP_OK%"=="0" (
|
||||
if /I "%PY_CMD%"=="%PY_EXE%" (
|
||||
echo [INFO] ensurepip nicht verfuegbar. Lade get-pip.py ...
|
||||
powershell -NoLogo -NoProfile -Command ^
|
||||
"try { Invoke-WebRequest -Uri 'https://bootstrap.pypa.io/get-pip.py' -OutFile '%SELF_DIR%get-pip.py' -UseBasicParsing; exit 0 } catch { Write-Error $_; exit 1 }"
|
||||
if exist "%SELF_DIR%get-pip.py" (
|
||||
"%PY_CMD%" "%SELF_DIR%get-pip.py" >nul 2>&1
|
||||
del "%SELF_DIR%get-pip.py" >nul 2>&1
|
||||
)
|
||||
"%PY_CMD%" -m pip --version >nul 2>&1
|
||||
if not errorlevel 1 set "PIP_OK=1"
|
||||
)
|
||||
)
|
||||
|
||||
if "%PIP_OK%"=="1" (
|
||||
if defined USE_PY_LAUNCHER (
|
||||
"%PY_CMD%" -3 -m pip install --disable-pip-version-check --quiet svg-polish
|
||||
) else (
|
||||
"%PY_CMD%" -m pip install --disable-pip-version-check --quiet svg-polish
|
||||
)
|
||||
if errorlevel 1 (
|
||||
echo [WARN] 'svg-polish' konnte nicht installiert werden. SVG-Dateien werden nicht komprimiert.
|
||||
) else (
|
||||
echo [OK] 'svg-polish' ist verfuegbar.
|
||||
)
|
||||
) else (
|
||||
echo [WARN] pip konnte nicht eingerichtet werden. SVG-Dateien werden nicht komprimiert.
|
||||
)
|
||||
|
||||
echo.
|
||||
echo [%APP_NAME%] Starte ...
|
||||
echo Command: "%PY_CMD%" "%SCRIPT%" %RUN_ARGS%
|
||||
|
||||
Reference in New Issue
Block a user