Files
Bash-Scripts/install_electrum.sh
T
2025-10-30 20:39:56 +01:00

65 lines
2.5 KiB
Bash

#!/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