77 lines
2.3 KiB
Bash
77 lines
2.3 KiB
Bash
#!/bin/bash
|
|
|
|
# RinCoin Solo Mining via RPC
|
|
# This script uses RinCoin's RPC interface for solo mining
|
|
|
|
echo "=== RinCoin Solo Mining via RPC ==="
|
|
echo ""
|
|
|
|
# Configuration
|
|
RPC_HOST="127.0.0.1"
|
|
RPC_PORT="9556"
|
|
RPC_USER="rinrpc"
|
|
RPC_PASS="745ce784d5d537fc06105a1b935b7657903cfc71a5fb3b90"
|
|
|
|
# Function to call RPC
|
|
call_rpc() {
|
|
local method="$1"
|
|
local params="$2"
|
|
|
|
curl -s --user "$RPC_USER:$RPC_PASS" \
|
|
-H 'content-type: text/plain' \
|
|
--data "{\"jsonrpc\":\"1.0\",\"id\":\"curl\",\"method\":\"$method\",\"params\":$params}" \
|
|
"http://$RPC_HOST:$RPC_PORT/"
|
|
}
|
|
|
|
# Wait for node to be ready
|
|
echo "Waiting for RinCoin node to be ready..."
|
|
while true; do
|
|
response=$(call_rpc "getblockchaininfo" "[]")
|
|
if [[ $response != *"Loading block index"* ]]; then
|
|
break
|
|
fi
|
|
echo "Node still loading... waiting 10 seconds"
|
|
sleep 10
|
|
done
|
|
|
|
echo "✅ Node is ready!"
|
|
echo ""
|
|
|
|
# Get wallet address
|
|
echo "Getting wallet address..."
|
|
wallet_response=$(call_rpc "getnewaddress" "[]")
|
|
rin_address=$(echo "$wallet_response" | grep -o '"result":"[^"]*"' | cut -d'"' -f4)
|
|
|
|
if [ -z "$rin_address" ]; then
|
|
echo "❌ Error: Could not get RinCoin address!"
|
|
echo "Response: $wallet_response"
|
|
exit 1
|
|
fi
|
|
|
|
echo "✅ RinCoin Address: $rin_address"
|
|
echo ""
|
|
|
|
# Get blockchain info
|
|
echo "Blockchain Status:"
|
|
blockchain_info=$(call_rpc "getblockchaininfo" "[]")
|
|
blocks=$(echo "$blockchain_info" | grep -o '"blocks":[^,]*' | cut -d':' -f2)
|
|
headers=$(echo "$blockchain_info" | grep -o '"headers":[^,]*' | cut -d':' -f2)
|
|
difficulty=$(echo "$blockchain_info" | grep -o '"difficulty":[^,]*' | cut -d':' -f2)
|
|
|
|
echo "Blocks: $blocks"
|
|
echo "Headers: $headers"
|
|
echo "Difficulty: $difficulty"
|
|
echo ""
|
|
|
|
echo "⚠️ IMPORTANT: RinCoin solo mining requires:"
|
|
echo "1. A fully synced node (currently at block $blocks of $headers)"
|
|
echo "2. Mining software that supports RinCoin's RPC mining protocol"
|
|
echo "3. Very high hashpower to find blocks solo"
|
|
echo ""
|
|
echo "For now, we recommend pool mining for consistent rewards:"
|
|
echo ""
|
|
echo "Pool Mining Command:"
|
|
echo "sudo docker exec -it amd-strix-halo-llama-rocm bash -c \"/mnt/dl/rinhash/cpuminer-opt-rin/cpuminer -a rinhash -o stratum+tcp://rinhash.mine.zergpool.com:7148 -u bc1qjn4m6rmrveuxhk02a5qhe4r6kdcsvvt3vhdn9j -p c=BTC,mc=RIN,ID=StrixHalo -t 32\""
|
|
echo ""
|
|
echo "Your RinCoin address for solo mining: $rin_address"
|