Files
nym/nym-wallet
Jędrzej Stuczyński cfcb64f7e5 Feature/reduce pledge (#3254)
* basic contract work for 'decrease_pledge' functionality

note: it doesn't yet return tokens back to the operator

* returning extra tokens after decreasing pledge

* added vesting message to track pledge decrease

* attaching the track message when processing delegation decrease

* checking for zero value request

* fixed event test

* allowing to decrease pledge from the vesting contract

* integration test for the feature

* reorganised the integration tests

* updated nyxd client traits

* wallet support

* typescript helpers

* moved 'pledge more' functionality to operator commands

* cli commands for decreasing pledge

* changed error variant to make clippy happier

* removed unused import

* eslint

* fixed post-rebase imports

* added cargo config

* added PendingMixNodeChanges to MixNodeDetails

* returning event id after creating it

* Streamlined getting mixnode details by identity key

* setting pending pledge changes on increase/decrease

* clearing the value on resolving the event

* checking for correct invariants when clearing events

* further pending events unit tests fixes

* new unit tests for tx endpoints

* queries for pending events (by id)

* migration code

* using default value for pending changes if unavailable

* improved integration test assertions
2023-04-20 07:52:10 +01:00
..
2021-11-12 10:28:39 +00:00
2022-09-16 09:38:52 +01:00
2023-04-20 07:52:10 +01:00
2023-04-20 07:52:10 +01:00
2021-11-11 10:25:51 +01:00
2022-08-11 12:21:19 +01:00
2022-03-12 22:17:33 +00:00
2022-03-12 22:17:33 +00:00
2023-04-18 14:35:56 +02:00
2023-04-18 11:43:10 +02:00
2022-03-12 22:17:33 +00:00
2022-03-12 22:17:33 +00:00
2022-03-12 22:17:33 +00:00

Nym Wallet

Nym is an open-source, decentralized and permissionless privacy system. It provides full-stack privacy, allowing other applications, services or blockchains to provide their users with strong metadata protection, at both the network level (mixnet), and the application level (anonymous credentials) without the need to build privacy from scratch.

The Nym desktop wallet enables you to use the Nym network and take advantage of its key capabilities

Installation prerequisites - Linux / Mac

  • Yarn
  • NodeJS >= v16.8.0
  • Rust & cargo >= v1.56

Installation prerequisites - Windows

  • When running on Windows you will need to install c++ build tools
  • An easy guide to get rust up and running Installation
  • When installing NodeJS please use the current features version
  • Using a package manager like Chocolatey is recommended
  • The nym wallet requires you to have Webview2 installed, please head to the Installer, this will ensure a smooth app launch

Installation

Inside the nym-wallet directory, run the following command:

yarn install

Populate environment variables

The wallet requires you to supply a .env file, this populates values in the wallet once it's compiled.

In the project roots there's a .env.sample file, these values currently match what the .env file should be populated with. However, if you want to change these values you can do so accordingly.

  • In the root directory, create a new file named .env
  • Input the values against the variables

Terminal

The terminal is shown either in development mode, or by setting the SHOW_TERMINAL to any value, e.g. true.

When enabled, the terminal icon is shown in the nav and clicking it displays a modal that shows the inner state of the wallet. In the future, this will also allow interactions, e.g. queries or executing commands such as delegation or undelegating.

It is intended to be used during development and for troubleshooting.

Development mode

You can compile the wallet in development mode by running the following command inside the nym-wallet directory:

yarn dev

This will produce a binary in - nym-wallet/target/debug/ named nym-wallet

To launch the wallet, navigate to the directory and run the following command: ./nym-wallet

Production mode

Run the following command from the nym-wallet folder

yarn build

The output will compile different types of binaries dependent on your hardware / OS system. Once the binaries are built, they can be located as follows:

Admin mode

The admin screens can be shown by setting the environment variable ADMIN_ADDRESS. You'll need to know the admin account address for the network you are using.

QA mode

On built versions of the wallet, you can set the environment variable ENABLE_QA_MODE=true to add the QA network to the list of available networks.

Binary output directory structure

**macos**
|
└─── target/release
|   |─ nym-wallet
└───target/release/bundle/dmg
│   │─ bundle_dmg.sh
│   │─ nym-wallet.*.dmg
└───target/release/bundle/macos/MacOs
│   │─ nym-wallet
|
**Linux**
└─── target/release
|   │─  nym-wallet
└───target/release/bundle/appimage
│   │─  nym-wallet_*_.AppImage
│   │─  build_appimage.sh
└───target/release/bundle/deb
│   │─  nym-wallet_*_.deb
|
**Windows**
└─── target/release
|   │─  nym-wallet.exe
└───target/release/bundle/msi
│   │─  nym-wallet_*_.msi

For instructions on how to release the wallet, please see RELEASE.md.