Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: EVM Support #461

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from
Draft

feat: EVM Support #461

wants to merge 4 commits into from

Conversation

Vvaradinov
Copy link

Long standing feature branch for EVM inclusion:

  • Instantiated and wired Keepers for x/evm and x/feemarket in app.go
  • Additions to config files and proto config
  • Included script for starting new testnet directly init.sh
  • Separate and included only the needed EthAnteHandler keeping the rest through regular Antehandler stack
  • 6 Decimal wrapper for correct displaying and gas logic
  • Investigate Coin Type / HD path discrepancies

Guide to run locally

  1. Run init.sh in the root of the project - this will start a local node with the testnet command and create a new account in the test keyring with the now supported ethsecp256k1 algorithm called dev0. This is the default dev EthAccount. You will see this in the keyring running babylond keys list --keyring-backend test --home .testnet/node0/babylond

    - address: bbn1q986wh082dp6wndt58j60hrgsr8kh9wgt0maz8
      name: dev0
      pubkey: '{"@type":"/ethermint.crypto.v1.ethsecp256k1.PubKey","key":"A92x5YqLnNhrBrkm5qJ+EhzAPj9qiYF4qjjqh4A/MewT"}'
      type: local
    - address: bbn15qhzl5sncuyq3lvdkw479gttscemlv2c4pmx92
      name: node0
      pubkey: '{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"AyfbMYS6SZHu5+S4dZdDiNIORWHBVh33b0VBBFyVsKYa"}'
      type: local
    
  2. Export the PK of the dev0 account using the export command - babylond keys unsafe-export-eth-key dev0 --keyring-backend test --home .testnet/node0/babylond. This will give you your Private Key that you can then import into Metamask.

  3. Add new network in Metamask. In the Networks overview at the bottom look for Add Custom Network and use the following information:
    image

  4. Go to Remix IDE, the default Environment should me Remix VM, change it to Injected Provider and approve the connection from your MM wallet. Now you can deploy any contract and interact with it.

# Conflicts:
#	app/app.go
#	app/keepers/keepers.go
#	go.mod
#	go.sum
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant