# Quick Start
Ape Trezor is a plugin for [Ape Framework](https://github.com/ApeWorx/ape) which integrates [Trezorlib ethereum.py](https://github.com/trezor/trezor-firmware/blob/master/python/src/trezorlib/ethereum.py) to load and create accounts, sign messages, and sign transactions.
## Dependencies
- [python3](https://www.python.org/downloads) version 3.9 up tp 3.12.
**Note**: USB does not work in WSL2 environments natively and is [not currently supported](https://github.com/microsoft/WSL/issues/5158).
## Installation
### via `pip`
You can install the latest release via [`pip`](https://pypi.org/project/pip/):
```bash
pip install ape-trezor
```
### via `setuptools`
You can clone the repository and use [`setuptools`](https://github.com/pypa/setuptools) for the most up-to-date version:
```bash
git clone https://github.com/ApeWorX/ape-trezor.git
cd ape-trezor
python3 setup.py install
```
## Quick Usage
Trezor accounts have the following capabilities in `ape`:
1. Can sign transactions (both static-fee and EIP-1559 compliant)
2. Can sign messages using the default EIP-191 specification
To use the Trezor plugin, you must have the Trezor USB device connected and unlocked.
**WARNING**: When the Trezor Suite is open, you may face additional connection issues.
It is recommended to not have the Trezor Suite application open while using the plugin.
## Add Accounts
Add accounts using the `add` command:
```bash
ape trezor add <alias>
```
You can also specify the HD Path:
```bash
ape trezor add <alias> --hd-path "m/44'/1'/0'/0"
```
**WARNING**: When using 3rd party wallets, such as this plugin, `trezorlib` discourages signing transactions from the default Ethereum HD Path `m/44'/60'/0'/0`.
Changing the HD-Path in that circumstance will allow fewer warnings from both Ape and the device, as well as improved security.
See https://github.com/trezor/trezor-firmware/issues/1336#issuecomment-720126545 for more information.
```yaml
trezor:
hd_path: "m/44'/1'/0'/0"
```
## List Accounts
To list just your Trezor accounts in `ape`, do:
```bash
ape trezor list
```
## Remove accounts
You can also remove accounts:
```bash
ape trezor delete <alias>
ape trezor delete-all
```
## Sign Messages
You can sign messages with your accounts:
```bash
ape trezor sign-message <alias> "hello world"
```
## Verify Messages
You can also verify a message with a signature:
```bash
ape trezor verify-message "hello world" <signature>
```
## Development
Please see the [contributing guide](CONTRIBUTING.md) to learn more how to contribute to this project.
Comments, questions, criticisms and pull requests are welcomed.
Raw data
{
"_id": null,
"home_page": "https://github.com/ApeWorX/ape-trezor",
"name": "ape-trezor",
"maintainer": null,
"docs_url": null,
"requires_python": "<4,>=3.9",
"maintainer_email": null,
"keywords": "ethereum",
"author": "ApeWorX Ltd.",
"author_email": "admin@apeworx.io",
"download_url": "https://files.pythonhosted.org/packages/67/74/ce1c48b980fc211da68f4f765da2c2ea7e8dcbbbb16a07dd09e94cc822f5/ape-trezor-0.8.1.tar.gz",
"platform": null,
"description": "# Quick Start\n\nApe Trezor is a plugin for [Ape Framework](https://github.com/ApeWorx/ape) which integrates [Trezorlib ethereum.py](https://github.com/trezor/trezor-firmware/blob/master/python/src/trezorlib/ethereum.py) to load and create accounts, sign messages, and sign transactions.\n\n## Dependencies\n\n- [python3](https://www.python.org/downloads) version 3.9 up tp 3.12.\n\n**Note**: USB does not work in WSL2 environments natively and is [not currently supported](https://github.com/microsoft/WSL/issues/5158).\n\n## Installation\n\n### via `pip`\n\nYou can install the latest release via [`pip`](https://pypi.org/project/pip/):\n\n```bash\npip install ape-trezor\n```\n\n### via `setuptools`\n\nYou can clone the repository and use [`setuptools`](https://github.com/pypa/setuptools) for the most up-to-date version:\n\n```bash\ngit clone https://github.com/ApeWorX/ape-trezor.git\ncd ape-trezor\npython3 setup.py install\n```\n\n## Quick Usage\n\nTrezor accounts have the following capabilities in `ape`:\n\n1. Can sign transactions (both static-fee and EIP-1559 compliant)\n2. Can sign messages using the default EIP-191 specification\n\nTo use the Trezor plugin, you must have the Trezor USB device connected and unlocked.\n\n**WARNING**: When the Trezor Suite is open, you may face additional connection issues.\nIt is recommended to not have the Trezor Suite application open while using the plugin.\n\n## Add Accounts\n\nAdd accounts using the `add` command:\n\n```bash\nape trezor add <alias>\n```\n\nYou can also specify the HD Path:\n\n```bash\nape trezor add <alias> --hd-path \"m/44'/1'/0'/0\"\n```\n\n**WARNING**: When using 3rd party wallets, such as this plugin, `trezorlib` discourages signing transactions from the default Ethereum HD Path `m/44'/60'/0'/0`.\nChanging the HD-Path in that circumstance will allow fewer warnings from both Ape and the device, as well as improved security.\nSee https://github.com/trezor/trezor-firmware/issues/1336#issuecomment-720126545 for more information.\n\n```yaml\ntrezor:\n hd_path: \"m/44'/1'/0'/0\"\n```\n\n## List Accounts\n\nTo list just your Trezor accounts in `ape`, do:\n\n```bash\nape trezor list\n```\n\n## Remove accounts\n\nYou can also remove accounts:\n\n```bash\nape trezor delete <alias>\nape trezor delete-all\n```\n\n## Sign Messages\n\nYou can sign messages with your accounts:\n\n```bash\nape trezor sign-message <alias> \"hello world\"\n```\n\n## Verify Messages\n\nYou can also verify a message with a signature:\n\n```bash\nape trezor verify-message \"hello world\" <signature>\n```\n\n## Development\n\nPlease see the [contributing guide](CONTRIBUTING.md) to learn more how to contribute to this project.\nComments, questions, criticisms and pull requests are welcomed.\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "ape-trezor: Plugin for Trezor Hardware Wallets",
"version": "0.8.1",
"project_urls": {
"Homepage": "https://github.com/ApeWorX/ape-trezor"
},
"split_keywords": [
"ethereum"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "39e7c862d9a8b53fda0e423c27080b96922129107420019472883f0fdbd6db91",
"md5": "64b030be1baa7d825b2565f0be1201f1",
"sha256": "6e9fee9fc723999b88148cc1727fcea145f15ef7811ebcd2d070709db343c853"
},
"downloads": -1,
"filename": "ape_trezor-0.8.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "64b030be1baa7d825b2565f0be1201f1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4,>=3.9",
"size": 17545,
"upload_time": "2024-10-29T16:27:42",
"upload_time_iso_8601": "2024-10-29T16:27:42.034433Z",
"url": "https://files.pythonhosted.org/packages/39/e7/c862d9a8b53fda0e423c27080b96922129107420019472883f0fdbd6db91/ape_trezor-0.8.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6774ce1c48b980fc211da68f4f765da2c2ea7e8dcbbbb16a07dd09e94cc822f5",
"md5": "2a8d0040b354e6c4f37827aa8f8f4b14",
"sha256": "66ce43212781cb66ce696fab0ec7fc1f0a16e5761bf6e00cdc8b4f0d8ff3d6fc"
},
"downloads": -1,
"filename": "ape-trezor-0.8.1.tar.gz",
"has_sig": false,
"md5_digest": "2a8d0040b354e6c4f37827aa8f8f4b14",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4,>=3.9",
"size": 27774,
"upload_time": "2024-10-29T16:27:43",
"upload_time_iso_8601": "2024-10-29T16:27:43.998413Z",
"url": "https://files.pythonhosted.org/packages/67/74/ce1c48b980fc211da68f4f765da2c2ea7e8dcbbbb16a07dd09e94cc822f5/ape-trezor-0.8.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-29 16:27:43",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ApeWorX",
"github_project": "ape-trezor",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "ape-trezor"
}