has anyone tried to send a PR to metamask repo to add derivation path for RSK when connecting to a hardware wallet? seems really easy do to so I guess has been done but they refused to merge?
We have indeed, this has been a feature that we’ve been asking the MetaMask team to implement for a very long time now; to no avail:
In terms of PRs, we put a gitcoin bounty on this:
Additionally, we tackled a related (but simpler) issue,
also putting a bounty on it:
The second one was successfully implemented:
… but as of now, 9 months later, it has yet to be merged.
(If you would like to push this issue forward, you could help by adding a comment on that Github PR, to push for higher prioritisation.)
Adding 1 more:
Here’s a post on the metamask support forum:
Please signal your support for this on that post too!
So there is in fact no PR pushed to the repo for custom derivation path? I see 3 applicants to the bounty but no PR. so not sure if there is a refusal or they just dont care to do it by themselves.
I might be interested in doing that but I see the bounty program is finished, also I need to confirm if the PR will be accepted or not.
also I see the gitcoin bounty is to add derivation path in the custom network section which is ideal, but I was referring to something even easier which is add derivation path options when you try to connect a hardware wallet. when you do that, metamask shows you a dropdown with some derivation paths options to choose but no RSK option is available.
If I’m not wrong, this might do it:
diff --git a/ui/pages/create-account/connect-hardware/index.js b/ui/pages/create-account/connect-hardware/index.js
index 0e784c7c5..87268201a 100644
--- a/ui/pages/create-account/connect-hardware/index.js
+++ b/ui/pages/create-account/connect-hardware/index.js
@@ -23,10 +23,15 @@ const U2F_ERROR = 'U2F';
const LEDGER_LIVE_PATH = `m/44'/60'/0'/0/0`;
const MEW_PATH = `m/44'/60'/0'`;
const BIP44_PATH = `m/44'/60'/0'/0`;
+const RSKIP57_PATH = `m/44'/137'/0'/0`;
+const RSKIP57_TESNET_PATH = `m/44'/37310'/0'/0`;
+
const LEDGER_HD_PATHS = [
{ name: 'Ledger Live', value: LEDGER_LIVE_PATH },
{ name: 'Legacy (MEW / MyCrypto)', value: MEW_PATH },
{ name: `BIP44 Standard (e.g. MetaMask, Trezor)`, value: BIP44_PATH },
+ { name: `RSK Mainnet`, value: RSKIP57_PATH },
+ { name: `RSK Testnet`, value: RSKIP57_TESTNET_PATH },
];
const LATTICE_STANDARD_BIP44_PATH = `m/44'/60'/0'/0/x`;
@@ -48,6 +53,8 @@ const TREZOR_TESTNET_PATH = `m/44'/1'/0'/0`;
const TREZOR_HD_PATHS = [
{ name: `BIP44 Standard (e.g. MetaMask, Trezor)`, value: BIP44_PATH },
{ name: `Trezor Testnets`, value: TREZOR_TESTNET_PATH },
+ { name: `RSK Mainnet`, value: RSKIP57_PATH },
+ { name: `RSK Testnet`, value: RSKIP57_TESTNET_PATH },
];
so this works only for wallets created using HW. if you dont create a wallet with a HW you are still using the ethereum hardcoded derivation path
The bounty (with 3 applicatns and no submission) is no longer open, unfortunately,
but you can still submit a PR to MetaMask in github regardless!
If I’m not wrong, this might do it:
I’d encourage you to do so with the patch you have above!
The bounty (with 3 applicatns and no submission) is no longer open, unfortunately,
but you can still submit a PR to MetaMask in github regardless!
I dont have enough free time to do it for free. but yes I will try to submit this patch and see what happens.
thanks
hey @bguiz have you seen this? Configurable derivation path for custom RPCs - #9 by barbara - Feature Requests / Ideas - MetaMask
Yes indeed, we have actually started exploring metamask snaps, and have a WIP implementation. More news (if successful).
Hi @alex,
We are working on snaps implementation and after security approval we are planning to publish rsksnap as a npm package and an example app that interacts with the snap soon.
hi @bguiz @7alip , any news on this? if not, can I help? I’m a software developer and I’m really interested on this
it has been a month since my last post. Is this people still working for RSK?
@gino.osahon any idea?
Hi alex, checking on the status of this project for you.
Hi @alex, the PoC is finished but the repository is still private. If you share your github user, I can grant you reading access.
@acavallero I’ve sent you a private message