Generate clean, testable FTC robot projects with proper separation from SDK bloat. Features: - Composite build setup - one shared SDK, multiple clean projects - Subsystem pattern with hardware interfaces for easy testing - JUnit scaffolding - tests run on PC without robot - Minimal project structure (~50KB vs 200MB SDK) - Support for multiple FTC SDK versions Philosophy: Your code should be YOUR code. SDK is just a dependency. Built by Nexus Workshops for FTC teams tired of fighting the standard structure. License: MIT
34 lines
1.0 KiB
Bash
Executable File
34 lines
1.0 KiB
Bash
Executable File
#!/bin/bash
|
|
# Install FTC project generator
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
INSTALL_DIR="/usr/local/bin"
|
|
|
|
echo "FTC Project Generator - Installation"
|
|
echo ""
|
|
|
|
# Check if running as root for system install
|
|
if [ -w "$INSTALL_DIR" ]; then
|
|
echo "Installing to $INSTALL_DIR (system-wide)..."
|
|
ln -sf "$SCRIPT_DIR/ftc-new-project" "$INSTALL_DIR/ftc-new-project"
|
|
echo "✓ Installed! Use 'ftc-new-project' from anywhere."
|
|
else
|
|
echo "No write access to $INSTALL_DIR"
|
|
echo ""
|
|
echo "Choose installation method:"
|
|
echo ""
|
|
echo "1. System-wide (requires sudo):"
|
|
echo " sudo $0"
|
|
echo ""
|
|
echo "2. User-only (no sudo needed):"
|
|
echo " mkdir -p ~/bin"
|
|
echo " ln -sf $SCRIPT_DIR/ftc-new-project ~/bin/ftc-new-project"
|
|
echo " echo 'export PATH=\$PATH:~/bin' >> ~/.bashrc"
|
|
echo " source ~/.bashrc"
|
|
echo ""
|
|
echo "3. Add this directory to PATH:"
|
|
echo " echo 'export PATH=\$PATH:$SCRIPT_DIR' >> ~/.bashrc"
|
|
echo " source ~/.bashrc"
|
|
exit 1
|
|
fi
|