# RinHash Miner - Simple Build Guide ## 🚀 Quick Build Commands ### Prerequisites ```bash sudo apt update sudo apt install build-essential autotools-dev autoconf pkg-config libcurl4-openssl-dev libjansson-dev libssl-dev libgmp-dev zlib1g-dev git automake libtool docker.io ``` #### Git Credential Setup (Linux Users) If VS Code keeps asking for Git credentials, set up credential management: **Quick Setup (Linux Mint - Recommended):** ```bash cd /mnt/shared/DEV/repos/d-popov.com/mines/rin/miner ./setup-git-credentials-linux.sh ``` **Test Your Setup:** ```bash ./test-git-credentials-linux.sh ``` **Available Methods:** - ✅ **SSH Keys** - Most secure, no password prompts (recommended) - ✅ **GNOME Keyring** - Encrypted storage using system keyring - ✅ **Git Credential Cache** - Temporary credential caching - ✅ **Personal Access Tokens** - For custom Git servers - ✅ **VS Code Integration** - Built-in credential storage **For git.d-popov.com (your custom server):** 1. **SSH Keys (Recommended):** - Run setup script and choose SSH option - Copy public key to git.d-popov.com - Test: `ssh -T git@git.d-popov.com` 2. **Personal Access Token:** - Generate token in git.d-popov.com web interface - Use username + token as password 3. **GNOME Keyring:** - Automatic encrypted storage - Integrated with system credentials ### 🛠️ VS Code Integration (Recommended) If you're using VS Code, the project now includes pre-configured tasks for easy building: 1. **Open in VS Code:** ```bash cd /mnt/shared/DEV/repos/d-popov.com/mines/rin/miner code . ``` 2. **Use Build Tasks:** - Press `Ctrl+Shift+P` (or `Cmd+Shift+P` on Mac) - Type "Tasks: Run Task" - Select "Build Windows CPU Miner (Smart)" - **RECOMMENDED** - Or choose other build options as needed **Available VS Code Tasks:** - **Build Windows CPU Miner (Smart)** ⭐ - Automatically detects curl and builds optimally - **Build Windows CPU Miner (Original Curl)** - Forces original curl implementation - **Build Windows CPU Miner (NO_CURL Fallback)** - Direct socket fallback - **Clean Windows Build** - Clean build artifacts - **Test Windows Executable** - Verify build results **Benefits:** - ✅ No need to remember complex Docker commands - ✅ Automatic curl detection and optimal build selection - ✅ Integrated terminal output in VS Code - ✅ One-click building from the IDE ## 🐳 Remote Docker Access Options You don't need to SSH as root every time! Here are several ways to use Docker remotely from another machine: ### Option 1: VS Code Docker Extension (Easiest - Recommended) ```bash # On the build machine (where Docker is running) - Quick setup: cd /mnt/shared/DEV/repos/d-popov.com/mines/rin/miner ./setup-remote-docker.sh # Or manually: sudo systemctl enable docker sudo systemctl start docker sudo usermod -aG docker $USER # Add user to docker group ``` **In VS Code on your local machine:** 1. Install "Docker" extension by Microsoft 2. Install "Remote-SSH" extension for SSH tunneling 3. Connect to build machine: `Ctrl+Shift+P` → "Remote-SSH: Connect to Host" 4. Use VS Code Docker extension to manage containers remotely ### Option 2: Docker Remote API (Advanced) ```bash # On the build machine - enable Docker API over TCP: sudo mkdir -p /etc/systemd/system/docker.service.d sudo tee /etc/systemd/system/docker.service.d/override.conf > /dev/null <