For dApps & ServicesDevice AppExplanationLedger Nano Gen5 porting

Ledger Nano Gen5 porting

If you need to adapt a device app to be compatible with the Ledger Nano Gen5, follow the guidelines below. Get in touch with your usual contact at Ledger if you are not sure if you should proceed with the modifications.

What needs to be updated

  • Create two icons for your application: a 48x48px B&W png and a 32x32px B&W png
    • Add the 48x48px in the glyphs folder, and use this naming template app_yourcoin_48px.png
    • Add the 32x32px in the icons folder, and use this naming template app_yourcoin_32px.png
  • For C applications, update the makefile, with the the 32px icon target
    ICON_APEX_P = icons/app_yourcoin_32px.png
  • For Rust applications, update cargo.toml with the Nano Gen5 target (apex_p)
    [package.metadata.ledger.apex_p]
    icon = "icons/app_yourcoin_32px.png"
    # ...
    unexpected_cfgs = { level = "warn", check-cfg = ['cfg(target_os, values("apex_p", "stax", "flex", "nanos", "nanox", "nanosplus"))'] }
  • For both C and Rust applications, update ledger_app.toml with the Nano Gen5 target (apex_p)
    devices = ["nanox", "nanos+", "stax", "flex", "apex_p"]
  • Add tests for Nano Gen5
  • Add the Nano Gen5 target (apex_p) to your App in the the Ledger App Database

Examples

You can use our Boilerplates Apps update to understand the required modifications.

  • For Device Apps in C, read this PR.
  • For Device Apps in Rust, read this PR.

Submission

Use the submission form to submit your update.

Ledger
Copyright © Ledger SAS. All rights reserved. Ledger, Ledger Stax, Ledger Nano S, Ledger Vault, Bolos are trademarks owned by Ledger SAS