-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathbuild.sh
More file actions
175 lines (151 loc) · 4.36 KB
/
build.sh
File metadata and controls
175 lines (151 loc) · 4.36 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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
#!/bin/bash
set -e
echo ""
echo "============================================"
echo " Browser AI Assistant - Build Script"
echo "============================================"
echo ""
# Configuration
VERSION="1.0.0"
DIST_NAME="browser-ai-assistant"
# Detect OS
if [[ "$OSTYPE" == "darwin"* ]]; then
OS="macos"
BINARY_NAME="server"
ZIP_NAME="${DIST_NAME}-v${VERSION}-macos.zip"
elif [[ "$OSTYPE" == "linux-gnu"* ]]; then
OS="linux"
BINARY_NAME="server"
ZIP_NAME="${DIST_NAME}-v${VERSION}-linux.zip"
else
OS="windows"
BINARY_NAME="server.exe"
ZIP_NAME="${DIST_NAME}-v${VERSION}-windows.zip"
fi
echo "[INFO] Building for: $OS"
echo ""
# Check cargo
if ! command -v cargo &> /dev/null; then
echo "[ERROR] Rust/Cargo not found!"
echo "Install from: https://rustup.rs"
exit 1
fi
echo "[1/6] Building backend (release mode)..."
cd backend
cargo build --release
cd ..
echo "[OK] Backend built successfully"
echo "[2/6] Creating dist folder..."
rm -rf "dist/${DIST_NAME}"
mkdir -p "dist/${DIST_NAME}"
echo "[OK] Dist folder created"
echo "[3/6] Copying extension files..."
cp -r extension "dist/${DIST_NAME}/"
echo "[OK] Extension copied"
echo "[4/6] Copying server binary..."
if [[ "$OS" == "windows" ]]; then
cp "backend/target/release/backend-rig.exe" "dist/${DIST_NAME}/${BINARY_NAME}"
else
cp "backend/target/release/backend-rig" "dist/${DIST_NAME}/${BINARY_NAME}"
chmod +x "dist/${DIST_NAME}/${BINARY_NAME}"
fi
cp "backend/.env.example" "dist/${DIST_NAME}/.env.example"
echo "[OK] Server binary copied"
echo "[5/6] Creating helper scripts..."
# Create start-server.bat (Windows)
cat > "dist/${DIST_NAME}/start-server.bat" << 'BATEOF'
@echo off
title Browser AI Assistant - Server
echo ============================================
echo Browser AI Assistant - Local Server
echo ============================================
echo.
if not exist ".env" (
echo [ERROR] File .env tidak ditemukan!
echo.
echo 1. Rename ".env.example" menjadi ".env"
echo 2. Edit dan isi GEMINI_API_KEY
echo 3. API Key: https://aistudio.google.com/apikey
echo.
pause
exit /b 1
)
echo [OK] File .env ditemukan
echo [INFO] Server running at http://localhost:3000
echo.
server.exe
pause
BATEOF
# Create start-server.sh (Unix)
cat > "dist/${DIST_NAME}/start-server.sh" << 'SHEOF'
#!/bin/bash
echo "============================================"
echo " Browser AI Assistant - Local Server"
echo "============================================"
echo ""
if [ ! -f ".env" ]; then
echo "[ERROR] File .env tidak ditemukan!"
echo ""
echo "1. Rename '.env.example' menjadi '.env'"
echo "2. Edit dan isi GEMINI_API_KEY"
echo "3. API Key: https://aistudio.google.com/apikey"
exit 1
fi
echo "[OK] File .env ditemukan"
echo "[INFO] Server running at http://localhost:3000"
echo ""
./server
SHEOF
chmod +x "dist/${DIST_NAME}/start-server.sh"
# Create README
cat > "dist/${DIST_NAME}/README.txt" << 'READMEEOF'
============================================
BROWSER AI ASSISTANT - QUICK START
============================================
LANGKAH 1: SETUP API KEY
------------------------
1. Buka https://aistudio.google.com/apikey
2. Buat API Key dan copy
3. Rename ".env.example" menjadi ".env"
4. Edit ".env" dan paste API key
LANGKAH 2: JALANKAN SERVER
--------------------------
Windows: Double-click "start-server.bat"
Mac/Linux: ./start-server.sh
LANGKAH 3: INSTALL EXTENSION
----------------------------
1. Buka chrome://extensions
2. Aktifkan "Developer mode"
3. Klik "Load unpacked"
4. Pilih folder "extension"
LANGKAH 4: GUNAKAN
------------------
1. Buka halaman web apapun
2. Klik icon extension / buka Side Panel
3. Mulai chat dengan AI!
============================================
TROUBLESHOOTING
============================================
Titik merah (disconnected):
- Pastikan server berjalan
- Cek error di terminal
API Key Error:
- Cek file .env sudah benar
- Pastikan API key valid
============================================
READMEEOF
echo "[OK] Helper scripts created"
echo "[6/6] Creating ZIP archive..."
rm -f "dist/${ZIP_NAME}"
cd dist
zip -r "${ZIP_NAME}" "${DIST_NAME}" -q
cd ..
echo "[OK] ZIP created"
echo ""
echo "============================================"
echo " BUILD COMPLETE!"
echo "============================================"
echo ""
echo "Output: dist/${ZIP_NAME}"
echo "Size: $(du -h "dist/${ZIP_NAME}" | cut -f1)"
echo ""