From 197f0a8db81ee89ade3ee9e1be9e45946ab0c0bd Mon Sep 17 00:00:00 2001 From: goyban Date: Thu, 30 Oct 2025 20:39:56 +0100 Subject: [PATCH] Added install electrum --- install_electrum.sh | 64 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 install_electrum.sh diff --git a/install_electrum.sh b/install_electrum.sh new file mode 100644 index 0000000..b0299f2 --- /dev/null +++ b/install_electrum.sh @@ -0,0 +1,64 @@ +#!/bin/bash + +mkdir -p /tmp/electrum/ && cd /tmp/electrum/ + +sudo apt update && sudo apt install -y wget gpg python3-pyqt6 libsecp256k1-dev python3-cryptography python3-venv autoconf automake libtool + +ELECTRUM_VERSION=${1:-'4.6.2'} +ELECTRUM_DOWNLOAD_LINK="https://download.electrum.org/$ELECTRUM_VERSION/Electrum-$ELECTRUM_VERSION.tar.gz" +ELECTRUM_SIGNATURE="https://download.electrum.org/$ELECTRUM_VERSION/Electrum-$ELECTRUM_VERSION.tar.gz.asc" +ELECTRUM_FILE="Electrum-$ELECTRUM_VERSION.tar.gz" +ELECTRUM_SIGNATURE_FILE="Electrum-$ELECTRUM_VERSION.tar.gz.asc" +VERIFY_OUTPUT_FILE="Verify_output.txt" + +FINGERPRINT_THOMASV='6694 D8DE 7BE8 EE56 31BE D950 2BD5 824B 7F94 70E6' +FINGERPRINT_SOMBERNIGHT='0EED CFD5 CAFB 4590 6734 9B23 CA9E EEC4 3DF9 11DC' +FINGERPRINT_EMZY='9EDA FF80 E080 6596 04F4 A76B 2EBB 056F D847 F8A7' + + +PUB_THOMASV='https://raw.githubusercontent.com/spesmilo/electrum/master/pubkeys/ThomasV.asc' +PUB_SOMBERNIGHT='https://raw.githubusercontent.com/spesmilo/electrum/master/pubkeys/sombernight_releasekey.asc' +PUB_EMZY='https://raw.githubusercontent.com/spesmilo/electrum/master/pubkeys/Emzy.asc' + +for pubkey in "$PUB_THOMASV" "$PUB_SOMBERNIGHT" "$PUB_EMZY"; do + wget "$pubkey" +done + +for pubkey in *.asc; do + gpg --import $pubkey +done + +wget $ELECTRUM_DOWNLOAD_LINK +wget $ELECTRUM_SIGNATURE + +ls +echo "gpg --verify $ELECTRUM_SIGNATURE_FILE $ELECTRUM_SIGNATURE_FILE > $VERIFY_OUTPUT_FILE" +gpg --verify "$ELECTRUM_SIGNATURE_FILE" "$ELECTRUM_FILE" > "$VERIFY_OUTPUT_FILE" 2>&1 + + +cat $VERIFY_OUTPUT_FILE | grep "Good signature" +sleep 5 + +for fingerprint in "$FINGERPRINT_EMZY" "$FINGERPRINT_SOMBERNIGHT" "$FINGERPRINT_THOMASV"; do + echo $fingerprint + if grep -q "$fingerprint" "$VERIFY_OUTPUT_FILE"; then + echo "Good FingerPrint is valid!" + else + echo "[Error] Fingerprint is not valid" + exit 1 + fi +done + +# Create the environment folder for Electrum +sudo python3 -m venv --system-site-packages /opt/electrum + +# Install Electrum using pip +sudo /opt/electrum/bin/pip install --use-pep517 $ELECTRUM_FILE + +# A symlink to the binary is needed for the app drawer launcher and to simplify CLI commands +sudo ln -s /opt/electrum/bin/electrum /usr/bin/electrum + +# Create the app drawer launcher file, "electrum.desktop," and update it's link to the icon image location +sudo desktop-file-install /opt/electrum/share/applications/electrum.desktop +sudo sed -i -e 's+Icon=electrum+Icon=/opt/electrum/share/icons/hicolor/128x128/apps/electrum.png+' /usr/share/applications/electrum.desktop +