Skip to content

karlsen-network/app-karlsen

 
 

Repository files navigation

Karlsen Ledger Integration

This is the code for the Karlsen embedded app.

Prerequisite

With the docker image builder

The app-builder docker image from this repository contains all needed tools and library to build and load an application. You can download it from the ghcr.io docker repository:

docker pull ghcr.io/karlsen-network/ledger-app-builder/ledger-app-builder-legacy:latest

You can then enter this development environment by executing the following command from the directory of the application git repository:

cd app-karlsen
docker run --rm -ti -v "$(realpath .):/app" --user root ghcr.io/karlsen-network/ledger-app-builder/ledger-app-builder-legacy:latest

The application's code will be available from inside the docker container, you can proceed to the following compilation steps to build your app.

Compilation and load

make DEBUG=1  # compile optionally with PRINTF
make load     # load the app on the Nano using ledgerblue

Documentation

High level documentation such as APDU, commands and transaction serialization are included in developer documentation which can be generated with doxygen

doxygen .doxygen/Doxyfile

the process outputs HTML and LaTeX documentations in doc/html and doc/latex folders.

Tests & Continuous Integration

The flow processed in GitHub Actions is the following:

It outputs 3 artifacts:

  • speculos-log within APDU command/response when executing end-to-end tests
  • code-coverage within HTML details of code coverage
  • documentation within HTML auto-generated documentation

About

Karlsen Ledger Integration

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 72.2%
  • Python 22.4%
  • CMake 2.1%
  • Shell 1.8%
  • Makefile 1.3%
  • Ruby 0.1%
  • Dockerfile 0.1%