Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 31 additions & 43 deletions BUILD_EXE.bat
Original file line number Diff line number Diff line change
@@ -1,66 +1,63 @@
@echo off
chcp 65001 >nul
cd /d "%~dp0"
title VoxFlow Build Installer
title VoxFlow - Build Setup.exe Installer

echo.
echo ╔══════════════════════════════════════════════════════════╗
echo VoxFlow Build Setup.exe Installer
echo by AI Evolution Polska
echo ╚══════════════════════════════════════════════════════════╝
echo ============================================================
echo VoxFlow - Build Setup.exe Installer
echo by AI Evolution Polska
echo ============================================================
echo.

REM ─── Step 0: Check venv ─────────────────────────────────────────
REM --- Sprawdz venv ---
if not exist "venv\Scripts\activate.bat" (
echo ❌ Środowisko venv nie istnieje. Uruchom najpierw install.bat
echo [BLAD] Srodowisko venv nie istnieje. Uruchom najpierw install.bat
pause & exit /b 1
)
call venv\Scripts\activate.bat

REM ─── Step 1: Install/update build tools ─────────────────────────
echo [1/4] Instalowanie narzędzi build...
REM --- Krok 1: Narzedzia build ---
echo [1/4] Instalowanie PyInstaller...
pip install pyinstaller --quiet --disable-pip-version-check
if %errorlevel% neq 0 (
echo ❌ Błąd instalacji PyInstaller!
echo [BLAD] Instalacja PyInstaller nie powiodla sie!
pause & exit /b 1
)
echo PyInstaller gotowy
echo [OK] PyInstaller gotowy

REM ─── Step 2: Clean previous build ───────────────────────────────
REM --- Krok 2: Czyszczenie ---
echo.
echo [2/4] Czyszczenie poprzedniego buildu...
echo [2/4] Czyszczenie poprzedniego buildu...
if exist "dist\VoxFlow" rmdir /s /q "dist\VoxFlow"
if exist "build" rmdir /s /q "build"
echo Wyczyszczono
echo [OK] Wyczyszczono

REM ─── Step 3: Build EXE with PyInstaller ─────────────────────────
REM --- Krok 3: Build EXE ---
echo.
echo [3/4] Budowanie VoxFlow.exe przez PyInstaller...
echo (To może potrwać 2-5 minut — proszę czekać)
echo [3/4] Budowanie VoxFlow.exe przez PyInstaller...
echo (To moze potrwac 3-6 minut - prosze czekac)
echo.

pyinstaller VoxFlow.spec --noconfirm --clean

if %errorlevel% neq 0 (
echo.
echo ❌ PyInstaller zakończył się błędem!
echo Sprawdź logi powyżej.
echo [BLAD] PyInstaller zakonczyl sie bledem!
pause & exit /b 1
)
if not exist "dist\VoxFlow\VoxFlow.exe" (
echo Nie znaleziono dist\VoxFlow\VoxFlow.exe!
echo [BLAD] Nie znaleziono dist\VoxFlow\VoxFlow.exe!
pause & exit /b 1
)

echo.
echo VoxFlow.exe zbudowany pomyślnie
echo [OK] VoxFlow.exe zbudowany pomyslnie

REM ─── Step 4: Build Installer with Inno Setup ────────────────────
REM --- Krok 4: Inno Setup ---
echo.
echo [4/4] Tworzenie instalatora VoxFlow_Setup.exe...
echo [4/4] Tworzenie instalatora VoxFlow_Setup.exe...
echo.

REM Possible Inno Setup locations
set ISCC=""
if exist "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" (
set ISCC="C:\Program Files (x86)\Inno Setup 6\ISCC.exe"
Expand All @@ -70,39 +67,30 @@ if exist "C:\Program Files\Inno Setup 6\ISCC.exe" (
)

if %ISCC%=="" (
echo ⚠️ Inno Setup nie jest zainstalowany!
echo [UWAGA] Inno Setup nie jest zainstalowany!
echo.
echo Pobierz Inno Setup 6 ze strony:
echo https://jrsoftware.org/isinfo.php
echo Pobierz Inno Setup 6 ze strony:
echo https://jrsoftware.org/isinfo.php
echo.
echo Następnie uruchom ten skrypt ponownie, aby stworzyć
echo plik instalacyjny VoxFlow_Setup.exe
echo.
echo Gotowy EXE znajduje się w: dist\VoxFlow\VoxFlow.exe
echo Gotowy EXE znajduje sie w: dist\VoxFlow\VoxFlow.exe
pause
start "" explorer "dist\VoxFlow"
exit /b 0
)

if not exist "installer_output" mkdir installer_output

%ISCC% installer.iss /Q

if %errorlevel% neq 0 (
echo.
echo ❌ Inno Setup zakończył się błędem!
echo Sprawdź plik installer.iss
echo [BLAD] Inno Setup zakonczyl sie bledem!
pause & exit /b 1
)

echo.
echo ╔══════════════════════════════════════════════════════════╗
echo ║ ║
echo ║ ✅ GOTOWE! VoxFlow_Setup.exe zbudowany pomyślnie ║
echo ║ ║
echo ║ Lokalizacja: installer_output\VoxFlow_Setup_v*.exe ║
echo ║ ║
echo ╚══════════════════════════════════════════════════════════╝
echo ============================================================
echo [OK] GOTOWE! VoxFlow_Setup.exe zbudowany pomyslnie
echo Lokalizacja: installer_output\VoxFlow_Setup_v*.exe
echo ============================================================
echo.

start "" explorer "installer_output"
Expand Down
113 changes: 54 additions & 59 deletions CREATE_PORTABLE.bat
Original file line number Diff line number Diff line change
@@ -1,132 +1,127 @@
@echo off
chcp 65001 >nul
cd /d "%~dp0"
title VoxFlow Tworzenie wersji Portable
title VoxFlow - Tworzenie wersji Portable

echo.
echo ╔══════════════════════════════════════════════════════════╗
echo VoxFlow Tworzenie wersji Portable
echo by AI Evolution Polska
echo ╚══════════════════════════════════════════════════════════╝
echo ============================================================
echo VoxFlow - Tworzenie wersji Portable
echo by AI Evolution Polska
echo ============================================================
echo.

REM ─── Ustal wersję ──────────────────────────────────────────────
set VER=1.1.0
set PORTABLE_DIR=dist\VoxFlow_Portable_v%VER%
set PORTABLE_APP=%PORTABLE_DIR%\VoxFlow

REM ─── Krok 0: Sprawdź venv ──────────────────────────────────────
REM --- Sprawdz venv ---
if not exist "venv\Scripts\activate.bat" (
echo Nie znaleziono środowiska venv.
echo Uruchom najpierw install.bat
echo [BLAD] Nie znaleziono srodowiska venv.
echo Uruchom najpierw install.bat
echo.
pause & exit /b 1
)
call venv\Scripts\activate.bat

REM ─── Krok 1: Zbuduj EXE jeśli nie istnieje ────────────────────
echo [1/4] Sprawdzam czy VoxFlow.exe jest zbudowany...
REM --- Krok 1: Zbuduj EXE jesli nie istnieje ---
echo [1/4] Sprawdzam czy VoxFlow.exe jest zbudowany...
if exist "dist\VoxFlow\VoxFlow.exe" (
echo VoxFlow.exe już istnieje pomijam build
echo [OK] VoxFlow.exe juz istnieje - pomijam build
) else (
echo ⏳ Buduję VoxFlow.exe przez PyInstaller...
echo (To może potrwać 3-6 minut)
echo Budowanie VoxFlow.exe przez PyInstaller...
echo (To moze potrwac 3-6 minut)
pip install pyinstaller --quiet --disable-pip-version-check
pyinstaller VoxFlow.spec --noconfirm --clean
if %errorlevel% neq 0 (
echo Build nie powiódł się!
echo [BLAD] Build nie powiodl sie!
pause & exit /b 1
)
if not exist "dist\VoxFlow\VoxFlow.exe" (
echo Nie znaleziono dist\VoxFlow\VoxFlow.exe
echo [BLAD] Nie znaleziono dist\VoxFlow\VoxFlow.exe
pause & exit /b 1
)
echo VoxFlow.exe zbudowany
echo [OK] VoxFlow.exe zbudowany
)

REM ─── Krok 2: Wyczyść stary portable folder ────────────────────
REM --- Krok 2: Wyczysc stary portable folder ---
echo.
echo [2/4] Przygotowanie katalogu portable...
echo [2/4] Przygotowanie katalogu portable...
if exist "%PORTABLE_DIR%" (
echo 🗑 Usuwam stary folder %PORTABLE_DIR%...
echo Usuwam stary folder %PORTABLE_DIR%...
rmdir /s /q "%PORTABLE_DIR%"
)
mkdir "%PORTABLE_DIR%"

REM ─── Krok 3: Kopiuj pliki ─────────────────────────────────────
REM --- Krok 3: Kopiuj pliki ---
echo.
echo [3/4] Kopiowanie plików VoxFlow...
echo [3/4] Kopiowanie plikow VoxFlow...
xcopy "dist\VoxFlow\*" "%PORTABLE_APP%\" /E /I /Q
if %errorlevel% neq 0 (
echo ❌ Błąd kopiowania plików!
echo [BLAD] Blad kopiowania plikow!
pause & exit /b 1
)

REM ─── Stwórz launcher START_VOXFLOW.bat ────────────────────────
echo @echo off > "%PORTABLE_DIR%\START_VOXFLOW.bat"
echo chcp 65001 ^>nul >> "%PORTABLE_DIR%\START_VOXFLOW.bat"
echo cd /d "%%~dp0VoxFlow" >> "%PORTABLE_DIR%\START_VOXFLOW.bat"
echo start "" "VoxFlow.exe" >> "%PORTABLE_DIR%\START_VOXFLOW.bat"
REM --- Stworz launcher START_VOXFLOW.bat ---
(
echo @echo off
echo cd /d "%%~dp0VoxFlow"
echo start "" "VoxFlow.exe"
) > "%PORTABLE_DIR%\START_VOXFLOW.bat"

REM ─── Stwórz README_PORTABLE.txt ───────────────────────────────
REM --- Stworz README_PORTABLE.txt ---
(
echo VoxFlow %VER% Wersja Portable
echo VoxFlow %VER% - Wersja Portable
echo ================================
echo.
echo JAK URUCHOMIĆ:
echo 1. Kliknij dwukrotnie START_VOXFLOW.bat
echo (lub uruchom VoxFlow\VoxFlow.exe bezpośrednio)
echo JAK URUCHOMIC:
echo Kliknij dwukrotnie START_VOXFLOW.bat
echo (lub uruchom VoxFlow\VoxFlow.exe bezposrednio)
echo.
echo JAK DZIAŁA:
echo - Przytrzymaj F2 i mów - pojawi sie animacja nagrywania na dole ekranu
echo JAK DZIALA:
echo - Przytrzymaj F2 i mow - pojawi sie animacja nagrywania na dole ekranu
echo - Zwolnij F2 - tekst zostanie wklejony w aktywnym oknie
echo - Kliknij przycisk klawisza w UI zeby zmienić skrót klawiszowy
echo - Kliknij przycisk klawisza w UI aby zmienic skrot klawiszowy
echo - Ikona w zasobniku - kliknij prawym przyciskiem dla opcji
echo.
echo WYMAGANIA:
echo - Windows 10/11 (64-bit)
echo - Mikrofon
echo - Połączenie z internetem (TYLKO przy pierwszym uruchomieniu
echo - do pobrania modelu AI ~500 MB)
echo - Internet TYLKO przy pierwszym uruchomieniu
echo (pobranie modelu AI ~500 MB)
echo.
echo WAŻNE:
echo - NIE przenoś samego VoxFlow.exe bez całego folderu VoxFlow\
echo - Możesz przenieść cały folder VoxFlow_Portable_v%VER% gdzie chcesz
echo - Ustawienia zapisywane w: %%APPDATA%%\VoxFlow\
echo WAZNE:
echo - NIE przenosic samego VoxFlow.exe bez calego folderu VoxFlow\
echo - Caly folder VoxFlow_Portable_v%VER% mozna przeniesc gdzie chcesz
echo - Ustawienia zapisywane w: %%APPDATA%%\VoxFlow\
echo.
echo by AI Evolution Polska - https://github.com/aievolutionpl/VoxFlow
) > "%PORTABLE_DIR%\README_PORTABLE.txt"

echo.
echo [4/4] Gotowe!
echo [4/4] Gotowe!
echo.

REM ─── Zapytaj czy zipować ──────────────────────────────────────
set /p DOZIP="Czy spakować do ZIP? [T/n]: "
REM --- Zapytaj czy zipowac ---
set /p DOZIP=Czy spakowac do ZIP? [T/n]:
if /i "%DOZIP%"=="n" goto :done

echo.
echo 📦 Pakuję do ZIP...

REM Użyj PowerShell do zipowania
echo Pakuje do ZIP...
powershell -Command "Compress-Archive -Path '%PORTABLE_DIR%' -DestinationPath 'dist\VoxFlow_Portable_v%VER%.zip' -Force"

if %errorlevel% equ 0 (
echo ZIP stworzony: dist\VoxFlow_Portable_v%VER%.zip
echo [OK] ZIP stworzony: dist\VoxFlow_Portable_v%VER%.zip
) else (
echo ⚠️ Nie udało się stworzyć ZIP. Folder istnieje: %PORTABLE_DIR%
echo [UWAGA] Nie udalo sie stworzyc ZIP. Folder istnieje: %PORTABLE_DIR%
)

:done
echo.
echo ╔══════════════════════════════════════════════════════════╗
echo ║ ║
echo ║ ✅ Wersja Portable gotowa! ║
echo ║ ║
echo ║ Folder: %PORTABLE_DIR% ║
echo ║ Launcher: START_VOXFLOW.bat ║
echo ║ ║
echo ╚══════════════════════════════════════════════════════════╝
echo ============================================================
echo [OK] Wersja Portable gotowa!
echo.
echo Folder: %PORTABLE_DIR%
echo Launcher: START_VOXFLOW.bat
echo ============================================================
echo.

start "" explorer "%PORTABLE_DIR%"
Expand Down
Loading