Skip to content

Commit

Permalink
Add documentation for flake introduction
Browse files Browse the repository at this point in the history
  • Loading branch information
albertodvp authored and iskyd committed Dec 7, 2024
1 parent 03864ad commit 939a5a9
Showing 1 changed file with 36 additions and 0 deletions.
36 changes: 36 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,48 @@ zig build test --summary all -- src/bip39/bip39.zig src/bip38/bip38.zig

#### Dev Environment

##### Devbox

You can directly use devbox to create a complete dev environment. Check devbox.json and [devbox](https://www.jetify.com/devbox) docs for more information.

``` bash
devbox shell
```

##### Nix + devenv

In order to get a shell with all the tools you need to contribute to this project you can run

```bash
direnv allow
```

This will enable the `direnv` environment that will automatically makes you enter the development shell every time you enter the project directory (or any subdirectory). This uses [nix](https://nixos.org/download/) (with [flakes](https://nixos.wiki/wiki/Flakes)) and [direnv](https://direnv.net).

This command

```bash
nix flake check
```

will run regular checks of the flake, in particular it will run _git hooks_.
This runs in the GHA `flake-check` job.

###### Git hooks

The `nix` shell will install the git hooks automatically.
The pre-commit configuration `.pre-commit-config.yaml` is git-ignored because it will be a simple
link to the `/nix/store`: the semantic is not changing but the location can differ from different
machines/configuration.

You can manually trigger the hooks on all files:

```bash
pre-commit run -a
```

Check the `--help` for more usages.

#### Bitcoin Node

walle needs a bitcoin-core node. You can run one using the Dockerfile. The configuration is defined in node/bitcoin.conf and it is used to create a regtest network.
Expand Down

0 comments on commit 939a5a9

Please sign in to comment.