Progress
Contents

macOS Guide

Complete guide to setup Bitcoin Core, Fulcrum, and Sparrow Wallet on macOS

Scroll down to follow each step

1

Initial Setup

Create your Bitcoin workspace directory

Create "bitcoinnode" Directory

First, let's create a dedicated folder for all our Bitcoin files.

mkdir ~/Documents/bitcointestnet
Terminal showing mkdir command execution

Creating the bitcoinnode directory using terminal

2

Download Binaries

Get the official Bitcoin software and verification files

Download Bitcoin Core

Use the following commands to download the necessary files

wget https://bitcoincore.org/bin/bitcoin-core-29.0/bitcoin-29.0-arm64-apple-darwin.zip
wget https://bitcoincore.org/bin/bitcoin-core-29.0/SHA256SUMS
wget https://bitcoincore.org/bin/bitcoin-core-29.0/SHA256SUMS.asc
Terminal showing bitcoin core download command execution

Downloading Bitcoin Core using wget

Terminal showing verification files download command execution

Downloading verification files

Navigate to https://bitcoincore.org/en/download

Image showing the files to be downloaded from the Bitcoin Core website

Downloading the approriate binary file

⚠️ Security Note

Always download from the official website only. These verification files are crucial for confirming the software hasn't been tampered with.

3

Verify Downloads

Ensure authenticity using checksums and signatures

Check SHA256 Hash

Open Terminal from your bitcointestnet directory and run:

shasum -a 256 --ignore-missing --check SHA256SUMS
Image showing the results of verifying the SHA256 hash of the downloaded file

Successfull verification of SHA256 hash

This confirms the file wasn't corrupted or tampered with during download.

Verify GPG Signature

Visit https://github.com/bitcoin-core/guix.sigs/tree/main/builder-keys and download:

Image showing the github repo containing the public key of bitcoin core developers

Downloading achow101.gpg and guggero.gpg, public keys of bitcoin core developers

gpg --import *.gpg
Image showing the import of the public key in terminal

Importing the public keys of the Bitcoin Core developers

Use the public key of the Bitcoin Core developers to verify that the SHA256SUMS file is authentic.

gpg --verify SHA256SUMS.asc
Image showing the verification of the public key in terminal

Successful verification of the signatures

This confirms the SHA256SUMS file containing the SHA256 hash of the Bitcoin Core binary is authentic.

📝 Best Practice Note

It is good practice to import the public keys of multiple Bitcoin Core developers and use it in the verification process.

4

Install & Configure

Extract and configure Bitcoin Core

Extract Bitcoin Core

Use the following command to extract bitcoin core

unzip bitcoin-29.0-arm64-apple-darwin.zip
Image showing the Extraction of bitcoin core in Terminal

Extracting the Bitcoin Core binary

Create Configuration File

Navigate to ~/Library/Application\ Support/bitcoin and create bitcoin.conf

Image showing the creation of bitcoin.conf file in the Bitcoin directory

Creating the bitcoin.conf file

# Enable Testnet4
testnet4=1
# Enable Server mode
server = 1
# Set RPC Credentials
rpcuser=bitcoin
rpcpassword=bitcoin123
# Enable full transaction index
txindex=1
# Enable ZMQ notification
zmqpubrawblock=tcp://127.0.0.1:28334
zmqpubrawtx=tcp://127.0.0.1:28335
zmqpubhashblock=tcp://127.0.0.1:28336
[testnet4]
rpcbind=127.0.0.1
rpcallowip=127.0.0.1
rpcport=18332

📝 Configuration Note

This configuration runs Bitcoin Core on testnet4 - an alternative Bitcoin blockchain specifically for testing and development. For mainnet remove 'testnet4=1' and [testnet4] in the above configuration.

5

Blockchain Sync

Launch and sync your Bitcoin node

Start Bitcoin Core

From your bitcoinnode directory:

open Bitcoin-Qt.app
Image showing the starting of the Bitcoin Core Qt app

Starting Bitcoin Core

Your node needs to sync with the testnet4 network. This process can take some time. If a pre-synced testnet4 folder is provided by your instructor, replace the existing testnet4 directory ~/Library/Application\ Support/bitcoin/testnet4/ for faster setup. It is always best to verify the blocks yourself, by letting Bitcoin Core perform the initial block download (IBD).

Image showing the syncing of the Bitcoin Core Qt app

Bitcoin Core is downloading and verifying all testnet4 blocks. This creates a complete copy of the testnet blockchain on your machine.

6

Install Fulcrum

Download, verify & Install your personal electrum server

Build Fulcrum from Source

Fulcrum needs to be built from source on macOS.

brew install qt@5 pkg-config
brew install zeromq miniupnpc rocksdb cmake
git clone https://github.com/cculianu/Fulcrum.git
cd Fulcrum
qmake Fulcrum.pro
Image showing building of Fulcrum in Terminal

Building Fulcrum from source

make -j4
Image showing building of Fulcrum in Terminal

Building Fulcrum from source

7

Configure Fulcrum

Set up Fulcrum to connect with Bitcoin Core

Create Fulcrum Configuration

Inside the Fulcrum directory, create a configuration file: fulcrum.conf

server=1
testnet4=1
# Set data directory
datadir = /data
# BTC Core Credentials
bitcoind = 127.0.0.1:18332
rpcuser = bitcoin
rpcpassword = bitcoin123
rpcbind=127.0.0.1
rpcallowip=127.0.0.1

Launch Fulcrum

With Bitcoin Core running, launch Fulcrum using the following command

./Fulcrum fulcrum.conf
Image showing Fulcrum running in Terminal

Fulcrum running successfully

⚠️ Important

Keep this terminal window open and running in the background. Fulcrum needs to index all transactions, which may take time.

8

Install Wallet

Get your Bitcoin wallet interface

Download Sparrow Wallet

Visit https://sparrowwallet.com/download/

Image showing Sparrow signature

Downloading manifest and signature files for verification

Verify Sparrow Wallet

Use Sparrow's built-in verification tool: Upload the signature, manifest, and installer files

Image showing Sparrow signature

Using the inbuilt verification tool to verify the installed Sparrow Wallet

Image showing Sparrow signature

Uploading the signature, manifest, and installer files for the in-built verifier to perform verification

Image showing Sparrow signature

Successful Verification of Sparrow Wallet

9

Connect Wallet

Link Sparrow Wallet to your Fulcrum server

Configure Sparrow Connection

In Sparrow Wallet:

Image showing Sparrow switching to testnet4

Switching Sparrow Wallet to testnet4

Image showing config for Sparrow

127.0.0.1
50001

You should see:Connected to Fulcrum 1.12.0 on protocol version 1.4.2

10

Create Wallet

Set up a new testnet4 wallet

Generate New Wallet

Creating new wallet in Sparrow

Naming a new wallet

Generating 12 seed words

Creating a software wallet with 12 mnemonic words

Generating 12 seed words

Generating 12seed mnemonic words

🔒 Security Warning

Never input mnemonic words into any other device unless you are absolutely certain about what you are doing. Write down your mnemonic words in the exact order they appear. For maximum security, consider stamping them onto steel plates for long-term safekeeping. For long-term safekeeping, of mainnet bitcoins, use of Hardwate Wallet is strongly recommended.

Confirm 12 seed words

To make sure that you have written down the words correctly, Sparrow asks you to reenter them.

Reentering 12 seed words

Creating a keystore

Importing the keystore

Once created, the keystore is imported into your wallet.

Applying wallet settings

Applying the settings to the wallet

Completed Sparrow setup

Your Sparrow wallet is now ready to use. Get some testnet4 coins from a faucet and start experimenting!

🎉 Congratulations!

Your complete Bitcoin sovereignty stack is now ready! You have Bitcoin Core running, Fulcrum indexing transactions, and Sparrow Wallet connected to your personal infrastructure.