|
#!/bin/bash |
|
|
|
echo "🔄 FastAPI Django Main Live - Post Start Setup..." |
|
echo "🧠 AI GUI System - PostStart Initialization" |
|
|
|
|
|
export PATH="$HOME/.cargo/bin:$PATH" |
|
|
|
|
|
export DISPLAY=:1 |
|
export XVFB_RES=1920x1080x24 |
|
|
|
|
|
echo "🔍 Checking dependencies..." |
|
python3 -c " |
|
try: |
|
import gradio |
|
import fastapi |
|
import open_interpreter |
|
import sqlite3 |
|
print('✅ All core dependencies available') |
|
except ImportError as e: |
|
print(f'❌ Missing dependency: {e}') |
|
print('Run: pip install -r requirements.txt') |
|
" |
|
|
|
|
|
echo "🖥️ Initializing AI Persistent GUI Desktop..." |
|
|
|
|
|
if command -v docker &> /dev/null; then |
|
echo "🐳 Docker is available - Starting persistent GUI environment..." |
|
|
|
|
|
if [ -f "ai_persistent_gui_manager.py" ]; then |
|
echo "🚀 Starting AI Persistent GUI Manager..." |
|
python3 ai_persistent_gui_manager.py & |
|
sleep 5 |
|
else |
|
echo "⚠️ AI Persistent GUI Manager not found, using fallback method..." |
|
|
|
|
|
if [ -f "docker-compose-persistent-gui.yml" ]; then |
|
echo "🐳 Starting GUI with docker-compose..." |
|
docker-compose -f docker-compose-persistent-gui.yml up -d |
|
sleep 5 |
|
fi |
|
fi |
|
else |
|
echo "⚠️ Docker not available, using local GUI services..." |
|
|
|
|
|
|
|
if ! pgrep -x "Xvfb" > /dev/null; then |
|
echo "🖥️ Starting Xvfb..." |
|
Xvfb :1 -screen 0 1920x1080x24 & |
|
sleep 2 |
|
fi |
|
|
|
|
|
if ! pgrep -x "fluxbox" > /dev/null; then |
|
echo "🖥️ Starting Fluxbox desktop..." |
|
DISPLAY=:1 fluxbox & |
|
sleep 2 |
|
fi |
|
|
|
|
|
if ! pgrep -x "x11vnc" > /dev/null; then |
|
echo "📺 Starting VNC server..." |
|
DISPLAY=:1 x11vnc -display :1 -forever -passwd copilot -rfbport 5901 -shared -bg |
|
sleep 2 |
|
fi |
|
|
|
|
|
if ! pgrep -f "websockify" > /dev/null && command -v websockify &> /dev/null; then |
|
echo "🌐 Starting noVNC with websockify..." |
|
websockify --web=/usr/share/novnc/ 6080 localhost:5901 & |
|
sleep 2 |
|
fi |
|
fi |
|
|
|
|
|
echo "🧠 Restoring AI Memory..." |
|
|
|
|
|
if [ -f "ai_memory_restoration.py" ]; then |
|
echo "🧠 Running AI memory restoration..." |
|
python3 ai_memory_restoration.py |
|
else |
|
echo "⚠️ AI memory restoration script not found" |
|
fi |
|
|
|
|
|
echo "🧠 Initializing AI Memory System..." |
|
python3 -c " |
|
from ai_memory_system import ai_memory |
|
print('🧠 AI Memory System Status:') |
|
print(ai_memory.generate_memory_summary()) |
|
" 2>/dev/null || echo "⚠️ AI Memory System not yet available" |
|
|
|
|
|
echo "📁 Setting up AI directories..." |
|
mkdir -p /ai-memory/screenshots |
|
mkdir -p /ai-memory/downloads |
|
mkdir -p /ai-memory/temp |
|
mkdir -p /gui-data/profiles |
|
mkdir -p /browser-data/downloads |
|
|
|
|
|
chmod -R 755 /ai-memory 2>/dev/null || true |
|
chmod -R 755 /gui-data 2>/dev/null || true |
|
chmod -R 755 /browser-data 2>/dev/null || true |
|
|
|
|
|
echo "🌐 Checking browser environment..." |
|
if [ ! -f "/browser-data/.browser-initialized" ]; then |
|
echo "🌐 Initializing browser environment..." |
|
mkdir -p /browser-data/firefox-profile |
|
touch /browser-data/.browser-initialized |
|
fi |
|
|
|
|
|
echo "" |
|
echo "🚀 FastAPI Django Main Live is ready!" |
|
echo "✅ AI GUI System startup complete!" |
|
echo "" |
|
echo "📱 Available services:" |
|
echo " • Main App: http://localhost:7860" |
|
echo " • Test Manager: http://localhost:7861" |
|
echo " • Debug Port: 5678" |
|
echo " • AI GUI Desktop (Persistent): http://localhost:6081" |
|
echo " • AI GUI Desktop (Fallback): http://localhost:6080" |
|
echo " • VNC Direct Access: localhost:5902 (Persistent) / localhost:5901 (Fallback)" |
|
echo "" |
|
echo "🛠️ Quick commands:" |
|
echo " • Start main app: python3 app.py" |
|
echo " • Start debug mode: python3 app_debug_server.py" |
|
echo " • Test prompt manager: python3 test_prompt_manager.py" |
|
echo " • Test AI GUI system: python3 ai_gui_system.py" |
|
echo "" |
|
echo "📊 System Status:" |
|
echo " - X Server: $(pgrep -x Xvfb > /dev/null && echo '✅ Running' || echo '❌ Not running')" |
|
echo " - Desktop: $(pgrep -x fluxbox > /dev/null && echo '✅ Running' || echo '❌ Not running')" |
|
echo " - noVNC: $(pgrep -f novnc > /dev/null && echo '✅ Running' || echo '❌ Not running')" |
|
echo " - AI Memory: $([ -d '/ai-memory' ] && echo '✅ Available' || echo '❌ Not available')" |
|
echo "" |
|
echo "🔐 VNC Password: copilot" |
|
echo "🎯 30-Year Dream Status: SYSTEM READY FOR AI GUI AUTOMATION!" |
|
echo "" |
|
|