From The Core Issue: A look at what Bitcoin Core developers do to ensure the software running on your computer is actually the code they wrote.

When most people download Bitcoin Core, their interaction with the build system is over in a few clicks. They grab the executable binary of the software, verify a signature (hopefully!), and start running a Bitcoin node. What they immediately see is running software. What they don’t see is the build system and extensive processes that produced that software. A build system that represents Bitcoin’s principles of decentralization, transparency, and verifiability.

Behind that download lies years of engineering work designed to answer a simple question: “Why should anyone trust this software?” The answer is: you shouldn’t have to. You should be able to verify.

In a time when software supply-chain attacks make global headlines, from compromised npm packages, backdoored libraries, rogue CI servers, Bitcoin Core’s build process stands as a quiet project of discipline. Its methods may seem slow and complicated compared to the frictionless convenience of “push to deploy,” but that’s the point. Security isn’t convenient.

To understand Bitcoin Core’s build system, we should understand: