2025-03-12 00:40:33 -05:00
2025-03-12 00:40:33 -05:00
2025-03-05 16:45:21 -06:00
2025-03-05 16:45:21 -06:00
2025-03-12 00:40:33 -05:00

Cross-Py-Builder

Cross-Py-Builder is a simple remote build tool for compiling Python projects with PyInstaller on different platforms on a local network.

System Requirements

  • Ubuntu/Debian & macOS: 2GB+ RAM
  • Windows: 4GB+ RAM
  • Python 3.10 or later installed
  • Local Network for build agents

Example Usage

./cross-py-builder.py --build /path/to/repo -cpu x64 -os windows

options:
 -h, --help           show this help message and exit
 --status             Get status of available servers
 --build BUILD        Path to the project to build
 -cpu CPU             CPU architecture
 -os OS               Operating system
 -d, --download       Download after build
 --delete-cache       Delete cache
 --update-all         Update build agent
 --restart RESTART    Hostname to restart
 --restart-all        Restart all agents
 --shutdown SHUTDOWN  Hostname to shutdown
 --shutdown-all       Shutdown all agents

Worker VM Setup Guide

This guide provides steps to set up a worker VM on Ubuntu/Debian, macOS, or Windows.

Ubuntu/Debian or macOS

  1. Create a new VM and install the OS.
  2. Update the system:
    • Ubuntu/Debian:
      sudo apt update && sudo apt upgrade -y
      sudo apt install python3-pip python3-venv -y
      
    • macOS:
      xcode-select --install  # Install xcode tools
      
  3. Install Python >=3.10 from python.org (Windows and macOS - macOS)
  4. Set up a virtual environment:
    • Ubuntu/Debian/macOS:
      python3 -m venv venv
      source venv/bin/activate
      
    • Windows:
      python3 -m venv venv
      venv\Scripts\activate
      
  5. Copy project files and install dependencies:
    pip install -r requirements.txt
    
  6. Start Build Agent:
    • Ubuntu/Debian/macOS:
      python3 build_agent.py
      
    • Windows:
      python build_agent.py
      

Description
Tool to build PyInstaller apps across different platforms
Readme 65 KiB
Languages
Python 100%