Skip to content

Instantly share code, notes, and snippets.

@kdmukai
Last active November 14, 2021 20:31
Show Gist options
  • Save kdmukai/810ce3aeea55918fbf32ecccf4c8946f to your computer and use it in GitHub Desktop.
Save kdmukai/810ce3aeea55918fbf32ecccf4c8946f to your computer and use it in GitHub Desktop.
Install Bitcoin Core v22+ bitcoind binary on a Raspberry Pi

Install Bitcoin Core v22+ bitcoind on a Raspberry Pi

Procedure has changed, starting with v22!

Download binary and verification hashes

wget https://bitcoin.org/bin/bitcoin-core-22.0/bitcoin-22.0-arm-linux-gnueabihf.tar.gz
wget https://bitcoin.org/bin/bitcoin-core-22.0/SHA256SUMS.asc
wget https://bitcoin.org/bin/bitcoin-core-22.0/SHA256SUMS

Verify the SHA256SUMS.asc file has a legit signature

gpg --keyserver keys.openpgp.org --search-keys [email protected]

Search should return:

gpg: data source: http://keys.openpgp.org:11371
(1)	Wladimir J. van der Laan <[email protected]>
	Wladimir J. van der Laan <[email protected]>
	Wladimir J. van der Laan <[email protected]>
	  2048 bit RSA key 74810B012346C9A6, created: 2011-08-24
Keys 1-1 of 1 for "[email protected]".  Enter number(s), N)ext, or Q)uit >

Select the one and only option: 1.

Expected output:

gpg: key 74810B012346C9A6: public key "Wladimir J. van der Laan <[email protected]>" imported
gpg: Total number processed: 1
gpg:               imported: 1

Optionally add more signatures

gpg --keyserver keys.openpgp.org --search-keys [email protected]
gpg --keyserver keys.openpgp.org --search-keys [email protected]
gpg --keyserver keys.openpgp.org --search-keys [email protected]
gpg --keyserver keys.openpgp.org --search-keys [email protected]
gpg --keyserver keys.openpgp.org --search-keys [email protected]
gpg --keyserver keys.openpgp.org --search-keys [email protected]
gpg --keyserver keys.openpgp.org --search-keys [email protected]
gpg --keyserver keys.openpgp.org --search-keys [email protected]

Verify the signatures:

gpg --verify SHA256SUMS.asc SHA256SUMS

Expected output (a series of these, one for each signer):

gpg: Signature made Fri 10 Sep 2021 18:33:30 BST
gpg:                using RSA key 9DEAE0DC7063249FB05474681E4AED62986CD25D
gpg: Good signature from "Wladimir J. van der Laan <[email protected]>" [unknown]
gpg:                 aka "Wladimir J. van der Laan <[email protected]>" [unknown]
gpg:                 aka "Wladimir J. van der Laan <[email protected]>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 71A3 B167 3540 5025 D447  E8F2 7481 0B01 2346 C9A6
     Subkey fingerprint: 9DEA E0DC 7063 249F B054  7468 1E4A ED62 986C D25D```

Verify that the binary hash matches the list in SHA256SUMS

sha256sum bitcoin-22.0-arm-linux-gnueabihf.tar.gz

Expected output:

b8713c6c5f03f5258b54e9f436e2ed6d85449aa24c2c9972f91963d413e86311  bitcoin-22.0-arm-linux-gnueabihf.tar.gz

Compare that against the matching entry in the SHASUMS file:

cat SHA256SUMS | grep bitcoin-22.0-arm-linux-gnueabihf.tar.gz

Untar and install

tar -zxf bitcoin-22.0-arm-linux-gnueabihf.tar.gz
sudo install -m 0755 -o root -g root -t /usr/local/bin bitcoin-22.0/bin/*

Confirm install

bitcoind --version

Expected output:

Bitcoin Core version v22.0.0

Cleanup

rm -rf bitcoin-22.0*
rm SHA256SUMS*
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment