Browse Source
App Submission: Fulcrum (#1531 )
Co-authored-by: nmfretz <nmfretz@gmail.com>
main
Sahil Phule
4 months ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with
125 additions and
0 deletions
fulcrum/data/fulcrum/.gitkeep
fulcrum/docker-compose.yml
fulcrum/exports.sh
fulcrum/hooks/pre-start
fulcrum/torrc.template
fulcrum/umbrel-app.yml
@ -0,0 +1,56 @@
version : "3.7"
services:
app_proxy:
environment:
APP_HOST : $APP_FULCRUM_IP
APP_PORT : 3006
app:
image : ghcr.io/sahilph/umbrel-fulcrum:sha-349e246@sha256:5d565f3b15f7bbeab28c027320ffc84d647e7816cd007fd84077c0db05c15393
depends_on:
- fulcrum
restart : on -failure
environment:
ELECTRUM_HIDDEN_SERVICE : "${APP_FULCRUM_RPC_HIDDEN_SERVICE}"
ELECTRUM_LOCAL_SERVICE : "${DEVICE_DOMAIN_NAME}"
ELECTRUM_PORT : ${APP_FULCRUM_NODE_PORT}
FULCRUM_HOST : "${APP_FULCRUM_NODE_IP}"
FULCRUM_PORT : "${APP_FULCRUM_NODE_PORT}"
BITCOIN_HOST : "${APP_BITCOIN_NODE_IP}"
RPC_USER : "${APP_BITCOIN_RPC_USER}"
RPC_PASSWORD : "${APP_BITCOIN_RPC_PASS}"
RPC_PORT : "${APP_BITCOIN_RPC_PORT}"
networks:
default:
ipv4_address : $APP_FULCRUM_IP
fulcrum:
image : cculianu/fulcrum:v1.11.1@sha256:70f06b93ab5863997992d4b4508312fe81ce576017e16ecc7e69c7d38165bdf2
restart : on -failure
user : "1000:1000"
environment:
TCP : 0.0 .0 .0 : ${APP_FULCRUM_NODE_PORT}
BITCOIND : ${APP_BITCOIN_NODE_IP}:${APP_BITCOIN_RPC_PORT}
RPCUSER : ${APP_BITCOIN_RPC_USER}
RPCPASSWORD : ${APP_BITCOIN_RPC_PASS}
PEERING : "false"
ANNOUNCE : "false"
command : Fulcrum _ENV_
volumes:
- "${APP_DATA_DIR}/data/fulcrum:/data"
ports:
- "${APP_FULCRUM_NODE_PORT}:${APP_FULCRUM_NODE_PORT}"
networks:
default:
ipv4_address : $APP_FULCRUM_NODE_IP
tor:
image : getumbrel/tor:0.4.7.8@sha256:2ace83f22501f58857fa9b403009f595137fa2e7986c4fda79d82a8119072b6a
user : "1000:1000"
restart : on -failure
volumes:
- ${APP_DATA_DIR}/torrc:/etc/tor/torrc:ro
- ${TOR_DATA_DIR}:/data
environment:
HOME : "/tmp"
@ -0,0 +1,7 @@
export APP_FULCRUM_IP = "10.21.22.200"
export APP_FULCRUM_NODE_IP = "10.21.21.200"
export APP_FULCRUM_NODE_PORT = "50002"
rpc_hidden_service_file = " ${ EXPORTS_TOR_DATA_DIR } /app- ${ EXPORTS_APP_ID } -rpc/hostname "
export APP_FULCRUM_RPC_HIDDEN_SERVICE = " $( cat " ${ rpc_hidden_service_file } " 2>/dev/null || echo "notyetset.onion" ) "
@ -0,0 +1,26 @@
#!/usr/bin/env bash
# Delay booting Fulcrum until the RPC Tor Hidden Service is ready
HIDDEN_SERVICE_FILE="${TOR_DATA_DIR}/app-${APP_ID}-rpc/hostname"
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
exit
fi
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" up --detach fulcrum
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" up --detach tor
echo "App: ${APP_ID} - Generating Tor Hidden Service..."
for attempt in $(seq 1 100); do
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
echo "App: ${APP_ID} - Hidden service file created successfully!"
break
fi
sleep 0.1
done
if [[ ! -f "${HIDDEN_SERVICE_FILE}" ]]; then
echo "App: ${APP_ID} - Hidden service file wasn't created"
fi
@ -0,0 +1,3 @@
# Fulcrum RPC Hidden Service
HiddenServiceDir /data/app-$APP_ID-rpc
HiddenServicePort $APP_FULCRUM_NODE_PORT $APP_FULCRUM_NODE_IP:$APP_FULCRUM_NODE_PORT
@ -0,0 +1,33 @@
manifestVersion : 1.1
id : fulcrum
category : bitcoin
name : Fulcrum
version : "1.11.1"
tagline : A fast and nimble Electrum Server
description : >-
Run your personal Electrum server and connect your Electrum-compatible wallet,
including BitBoxApp, BlueWallet, Electrum Wallet (Android and Desktop), Nunchuk
(Desktop), Phoenix, and Sparrow Wallet to it instead of using a third-party
Electrum server.
Powered by Fulcrum from Calin Culianu
⚠️ Fulcrum does not yet automatically integrate with other apps in the Bitcoin ecosystem on Umbrel. However, in a future umbrelOS update, users will be able to choose which Electrum Server app they want to use to connect with other apps.
developer : Calin Culianu
website : https://fulcrumserver.org/
submitter : Sahil Phule
submission : https://github.com/getumbrel/umbrel-apps/pull/1531
dependencies:
- bitcoin
repo : https://github.com/cculianu/Fulcrum
support : https://github.com/cculianu/Fulcrum/issues
port : 2107
gallery:
- 1. jpg
- 2. jpg
- 3. jpg
path : ""
defaultPassword : ""
releaseNotes : ""