From 47bb68c2ecca1e6555086b3d22f869389df99f2a Mon Sep 17 00:00:00 2001 From: Gemini Bot Date: Wed, 21 Jan 2026 12:29:31 +0000 Subject: [PATCH] Add script to patch driver-gridseed.c for proper SHA256 support --- patch_and_build.sh | 49 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100755 patch_and_build.sh diff --git a/patch_and_build.sh b/patch_and_build.sh new file mode 100755 index 0000000..a7727f8 --- /dev/null +++ b/patch_and_build.sh @@ -0,0 +1,49 @@ +#!/bin/bash +# Patch code for SHA256 support and rebuild + +if [ "$EUID" -ne 0 ]; then + echo "Bitte als root ausführen." + exit 1 +fi + +echo "=== Stoppe Miner ===" +systemctl stop necrohash-miner + +echo "=== Bereinige alte Build-Dateien ===" +cd /tmp +rm -rf cgminer-gc3355 + +echo "=== Clone dtbartle/cgminer-gc3355 ===" +git clone https://github.com/dtbartle/cgminer-gc3355.git +cd cgminer-gc3355 + +echo "=== Patche driver-gridseed.c für SHA256/Scrypt Switching ===" + +# Patch 1: gc3355_init - nur LTC Reset senden wenn Scrypt aktiv +sed -i 's/gc3355_send_cmds(gridseed, str_ltc_reset);/if (opt_scrypt) gc3355_send_cmds(gridseed, str_ltc_reset);/' driver-gridseed.c + +# Patch 2: gridseed_prepare_work - nur LTC Reset senden wenn Scrypt aktiv +# Hier müssen wir vorsichtiger sein mit sed, da der Kontext wichtig ist. +# Wir suchen nach der Zeile und ersetzen sie. +sed -i 's/gc3355_send_cmds(gridseed, str_ltc_reset);/if (opt_scrypt) gc3355_send_cmds(gridseed, str_ltc_reset);/' driver-gridseed.c + +echo "=== Konfiguriere Build ===" +export CFLAGS="-fcommon -O2" +if [ -f "./autogen.sh" ]; then + ./autogen.sh +else + autoreconf -ivf +fi + +# Wir aktivieren BEIDES (SHA und Scrypt), damit das Runtime-Flag (opt_scrypt) greift +./configure --enable-gridseed --enable-scrypt --without-curses + +echo "=== Kompiliere... ===" +make -j1 + +echo "=== Installiere ===" +make install + +echo "=== Fertig ===" +echo "Starte Miner neu..." +systemctl start necrohash-miner