FROM python:3.11-slim # Set working directory WORKDIR /app # Set environment variables ENV DEBIAN_FRONTEND=noninteractive ENV APPIMAGE_EXTRACT_AND_RUN=1 # Update and install dependencies RUN apt-get update && apt-get install -y \ curl \ gpg \ apt-transport-https \ ca-certificates \ git \ xvfb \ x11-utils \ && rm -rf /var/lib/apt/lists/* # Add Antigravity repository RUN mkdir -p /etc/apt/keyrings RUN curl -fsSL https://us-central1-apt.pkg.dev/doc/repo-signing-key.gpg | \ gpg --dearmor --yes -o /etc/apt/keyrings/antigravity-repo-key.gpg RUN echo "deb [signed-by=/etc/apt/keyrings/antigravity-repo-key.gpg] https://us-central1-apt.pkg.dev/projects/antigravity-auto-updater-dev/ antigravity-debian main" | \ tee /etc/apt/sources.list.d/antigravity.list # Update and install Antigravity RUN apt-get update && apt-get install -y \ antigravity \ && rm -rf /var/lib/apt/lists/* # Create data directory for Antigravity RUN mkdir -p /tmp/antigravity-data # Create startup script RUN cat > /start.sh << 'EOF' #!/bin/bash set -x echo "Starting Antigravity..." export DISPLAY=:99 Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 & sleep 2 antigravity --no-sandbox --user-data-dir=/tmp/antigravity-data EOF RUN chmod +x /start.sh # Expose Hugging Face Spaces default port EXPOSE 7860 # Default command with startup script CMD ["/start.sh"]