-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcxFreeze.bat
More file actions
89 lines (75 loc) · 2.66 KB
/
cxFreeze.bat
File metadata and controls
89 lines (75 loc) · 2.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
@echo off
REM ==========================================
REM Streamlit Desktop Environment Setup Script
REM Author: Chris Castaldi
REM ==========================================
setlocal enabledelayedexpansion
set "SCRIPT_DIR=%~dp0"
set "REQUIREMENTS_FILE=requirements.txt"
pushd "%SCRIPT_DIR%" >nul 2>&1
REM ==========================================
REM User Configuration
REM ==========================================
set "VENV_NAME=streamlitDesktop"
set "EXE_NAME=MyStreamlitApp.exe"
set "PACKAGES=streamlit"
REM ==========================================
echo.
echo ==========================================
echo Setting up Streamlit Desktop Environment...
echo ==========================================
REM Step 1: Ensure Python and pip are installed
python --version >nul 2>&1
IF %ERRORLEVEL% NEQ 0 (
echo Python not found! Please install Python 3.11 or later and retry.
pause
popd
exit /b
)
echo Python found.
REM Step 2: Install virtualenv if not already installed
echo Installing virtualenv...
pip install virtualenv
REM Step 3: Create virtual environment
echo Creating virtual environment "%VENV_NAME%"...
python -m virtualenv "%VENV_NAME%"
REM Step 4: Activate the virtual environment
echo Activating environment...
call ".\%VENV_NAME%\Scripts\activate"
REM Step 5: Install required packages
echo Installing required packages:
echo %PACKAGES%
pip install %PACKAGES%
REM Step 5b: Install packages from requirements.txt when available
if exist "%SCRIPT_DIR%%REQUIREMENTS_FILE%" (
echo Installing dependencies from %REQUIREMENTS_FILE%...
pip install -r "%SCRIPT_DIR%%REQUIREMENTS_FILE%"
) else (
echo No %REQUIREMENTS_FILE% found in %SCRIPT_DIR%. Skipping optional install.
)
REM Step 6: Copy setup.py and app.py
echo Copying setup.py and app.py into %VENV_NAME% folder...
copy "%SCRIPT_DIR%setup.py" "%SCRIPT_DIR%%VENV_NAME%\"
copy "%SCRIPT_DIR%app.py" "%SCRIPT_DIR%%VENV_NAME%\"
REM Step 7: Navigate to the environment folder
cd "%SCRIPT_DIR%%VENV_NAME%"
REM Step 8: Freeze the application into an executable
echo Building executable with cx_Freeze...
cxfreeze -c setup.py --target-dir toRun --target-name "%EXE_NAME%"
echo.
echo ==========================================
echo Build Complete!
echo ==========================================
echo Locate your EXE and support files in:
echo %CD%\toRun
echo.
echo Remember to also include:
echo - setup.py
echo - app.py
echo - Any other Python files your app depends on
echo.
echo This EXE will run any Python app using these packages:
echo %PACKAGES%
echo ==========================================
pause
popd >nul 2>&1