muun-recovery/BUILD.md

43 lines
1.2 KiB
Markdown

## Building for Use
To build the tool locally and run it, you must:
1. Install the [Go](https://golang.org/) toolchain.
2. Clone the repository:
```
git clone https://github.com/muun/recovery
cd recovery
```
3. Run the tool with:
```
go run -mod=vendor . -- <path to your Emergency Kit PDF>
```
This will take some time, as all dependencies must be compiled.
## Reproducible Building for Verification
Our builds can be reproduced using Docker. To build all variants and verify the checksums for
the binaries we provide, you need to:
1. Install the [Docker](https://www.docker.com/) toolchain and start the daemon.
2. Run this command:
```
make build-checksum-all
```
3. Verify that the printed checksums match those of the downloaded versions, using `sha256sum`
as in the `Makefile`.
We use Docker for these builds to ensure they are reproducible.
### Note on MacOS
For the 2.2 release, we had to disable reproducible builds for MacOS. The inclusion of C code for
the musig implementation made building the tool inside a Linux container extremely difficult. We'll
be moving the process to GitHub actions soon, which can be easily audited and can build natively on
MacOS.