decred.org/dcrdex@v1.0.5/dex/testing/btc/electrum-base.sh (about) 1 #!/usr/bin/env bash 2 3 # See https://github.com/spesmilo/electrum 4 # On Debian, may need to sudo apt-get install libsecp256k1-0 gettext 5 6 # For LTC, see https://github.com/pooler/electrum-ltc 7 8 set -ex 9 10 ASSET_DIR=~/dextest/electrum/${SYMBOL} 11 ELECTRUM_DIR=${ASSET_DIR}/client 12 REPO_DIR=${ELECTRUM_DIR}/electrum-repo 13 WALLET_DIR=${ELECTRUM_DIR}/wallet 14 NET_DIR=${WALLET_DIR}/regtest 15 16 rm -rf ${NET_DIR}/blockchain_headers ${NET_DIR}/forks ${NET_DIR}/certs ${NET_DIR}/wallets/default_wallet 17 mkdir -p ${NET_DIR}/regtest 18 mkdir -p ${NET_DIR}/wallets 19 mkdir -p ${REPO_DIR} 20 21 cd ${REPO_DIR} 22 23 if [ ! -d "${REPO_DIR}/.git" ]; then 24 git init 25 git remote add origin https://github.com/spesmilo/electrum.git 26 fi 27 28 git fetch --depth 1 origin $COMMIT 29 git reset --hard FETCH_HEAD 30 31 if [ ! -d "${ELECTRUM_DIR}/venv" ]; then 32 python -m venv ${ELECTRUM_DIR}/venv 33 fi 34 source ${ELECTRUM_DIR}/venv/bin/activate 35 python -m ensurepip --upgrade 36 pip install . 37 pip install requests cryptography pycryptodomex pyqt5 scrypt setuptools 38 39 cp "${SCRIPT_DIR}/electrum_default_wallet" "${NET_DIR}/wallets/default_wallet" 40 41 cat > "${NET_DIR}/config" <<EOF 42 { 43 "auto_connect": false, 44 "blockchain_preferred_block": { 45 "hash": "${GENESIS}", 46 "height": 0 47 }, 48 "check_updates": false, 49 "config_version": 3, 50 "decimal_point": 8, 51 "dont_show_testnet_warning": true, 52 "gui_last_wallet": "${NET_DIR}/wallets/default_wallet", 53 "is_maximized": false, 54 "oneserver": false, 55 "recently_open": [ 56 "${NET_DIR}/wallets/default_wallet" 57 ], 58 "rpchost": "127.0.0.1", 59 "rpcpassword": "pass", 60 "rpcport": ${RPCPORT}, 61 "rpcuser": "user", 62 "server": "127.0.0.1:${EX_PORT}:s", 63 "show_addresses_tab": true, 64 "show_console_tab": true, 65 "show_utxo_tab": true, 66 "use_rbf": false 67 } 68 EOF 69 70 cat > "${ASSET_DIR}/client-config.ini" <<EOF 71 rpcuser=user 72 rpcpassword=pass 73 rpcbind=127.0.0.1:${RPCPORT} 74 EOF 75 76 ./run_electrum --regtest --dir ${WALLET_DIR}