Ledger's recommended plugin guide is out-dated and doesn't work since they introduced a lot of new changes. Here's a simple way to get started with this repo:
- Clone this repo (along with git submodules)
- Install Xquartz and make sure you have enabled "Allow connections from network clients" enabled under "Security" settings.
- Install and start Docker (Note: If Docker is already running, quit and start it after starting Xquartz, otherwise docker cannot connect to Xquartz).
- Install the Ledger Dev Tools VS Code plugin and makes sure it's enabled
- Once you have installed the plugin and open the repo, the plugin should by default try to create and start the containers. If it doesn't, you can simply click "Update Container" under "Ledger Dev Tools" in the Activity Side Bar on VS Code.
- On the "Ledger Dev Tools" side bar, Select a target and then click on Build.
- Once build is complete, click on "Run tests" to run the tests
Ethereum plugins need the Ethereum SDK.
You can use the ETHEREUM_PLUGIN_SDK
variable to point to the directory where you cloned
this repository. By default, the Makefile
expects it to be at the root directory of this
plugin repository by the ethereum-plugin-sdk
name.
You can see that this CI workflow
verifies that the SDK used is either on the latest master
or develop
references. This ensures
the code is compiled and tested on the latest version of the SDK.
The documentation about the plugin is in PLUGIN_SPECIFICATON.md. It includes the smart contracts and functions supported by the plugin.
The C source code is expected to be formatted with clang-format
11.0.0 or higher.
clang-format -i src/*