1.1 Windows users only - WSL
Install Ubuntu 20.04.4 LTS through the Windows Store:
After the installation completes, launch Ubuntu and execute the following:
sudo apt update
sudo apt upgrade
sudo apt-get install libffi-dev python3-dev python3-pip python3-virtualenv build-essential libssl-dev
Read prompts and respond appropiately. This will take a few minutes.
1.2 MacOS users only
Install Python and pip on your local machine, if you don't have it already:
Visit the Python.org Website
Visit the pypa.io Website and follow the steps provided to make sure that you have a working Python with pip installed.
1.3 SSH key
Generate an SSH key pair. We will need the public key. If you do not know what an SSH key is, review these sources before continuing:
Visit the OpenSSH website to learn about OpenSSH.
When you are ready to continue:
ssh-keygen -t rsa
Copy the highlighted part
In your Digital Ocean dashboard:
Go to Settings > Security and click the Add SSH Key button.
Paste the key into the box, give your key a name, and click the Add SSH Key button.
Open a Text Document to make notes. Copy the SSH Fingerprint into this Notepad file.
While we're here, let's create an API key as well. Go to API > Tokens/Keys and click the Generate New Token button.
Name your token and click the Generate Token button.
Copy the API Key into your Notepad file.
Once you have made your decision(s) and signed up for an account, login to your account and setup an endpoint for Ethereum.
The setup steps are very straight forward for each provider.
Make sure you select Mainnet for each endpoint. You will receive what looks like a webaddress, Infura calls it an Endpoint, Quicknode refers to it as a Web3 endpoint.
It will look like this:
Copy the endpoint URL into your Notepad file.
Do NOT share your provider addresses with anyone.
Repeat for Polygon endpoint and take note of your provider address (endpoint) by copying it into your Notepad file.
3.1 Create Account
If you do not already have an account with DigitalOcean, sign up for one.
Referral Link Disclosure
These DigitalOcean links contain my referral ID. You will receive a FREE $100
credit good for 60 days. If you spend $25 after your credit is
exhausted, I will receive a small credit. You can read the full details here .
If you choose to use my link - thank you, I appreciate it!
Python and pip are setup and working on your local machine
You have your SSH key pair
Endpoint URL for Ethereum
Endpoint URL for Polygon
You have a Digital Ocean account setup
These items should be kept readily available.
5.1 Installing nucypher-ops
Begin by typing exit and hitting ENTER to close your terminal. Then re-open your Ubuntu instance if you're on Windows, or reopen your terminal if you're on a Mac. Then execute the following:
pip install nucypher-ops
This will download the utility, and install dependencies. This process will take several minutes.
5.2 Creating Your Node
Execute the following and be ready to answer questions from the utility:
nucypher-ops nodes create
This will connect to your Digital Ocean account, spin up a VPS, configure and secure it, and install all necessary software for you.
The utility will ask which provider you are using. Answer accordingly and press ENTER.
Provide your API Key and press ENTER.
Provide your SSH Fingerprint and press ENTER.
Then be patient.
5.3 Deploying Ursula
In a few minutes, you'll be ready to bond your stake.
nucypher-ops ursula deploy
Provide your ETH endpoint when requested and press ENTER.
Provide your Polygon endpoint when requested and press ENTER.
Wait for it...
The items at the bottom are your node's IP address and Operator address, to which you can bond your stake.
5.4 Post Install
to find out about other features try
if you need to update your node to a new version of NuCypher just execute
nucypher-ops ursula update
Keep in mind staking is an active process, and that you are responsible for OPSEC, as well as backing up any relevant data.