-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore: pull in latest penumbra guide
There were a few recent changes made to the guide in the protocol repo, as of [0], and this commit pulls those changes in. At the very least, I noticed that changes from the following PRs were missing: * penumbra-zone/penumbra#4732 * penumbra-zone/penumbra#4726 Tried to make sure to preserve unique content updates implemented during the mdbook -> nextra conversion. [0] https://github.com/penumbra-zone/penumbra/tree/a2ffd8a79f1b397e81df7b7e31b256d545cdf004/docs/guide
- Loading branch information
Showing
35 changed files
with
339 additions
and
102 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,4 +6,4 @@ | |
"frontend": "Running a frontend", | ||
"dev": "Development", | ||
"resources": "Resources" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,11 @@ | ||
This section is for developers working on Penumbra source code. | ||
This section is for developers, either working on Penumbra source code itself, | ||
or writing services that interact with Penumbra. | ||
|
||
<!-- | ||
Use cases to cover: | ||
* new contributor to protocol repo, wants to write rust code | ||
* external dev wants to make a protobuf change, how do? | ||
* external dev wants to run local services to prototype against | ||
--> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,13 @@ | ||
{ | ||
"build": "Compiling from source", | ||
"devnet-quickstart": "Devnet Quickstart", | ||
"dev-env": "Developer environment", | ||
"devnet-quickstart": "Devnet quickstart", | ||
"sql": "Working with SQLite", | ||
"docs": "Building documentation", | ||
"protobuf": "Building protobuf", | ||
"metrics": "Metrics", | ||
"parameter_setup": "Zero Knowledge Proofs", | ||
"parameter_setup": "Zero-knowledge proofs", | ||
"rpc": "RPC access", | ||
"ibc": "Testing IBC" | ||
"ibc": "Testing IBC", | ||
"build": "Compiling from source", | ||
"privacy": "Privacy" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
To get started working on Penumbra, you'll need a few dependencies on your workstation. | ||
Running tests and local services is more involved. The project uses [Nix] to automate | ||
the creation of developer environments with suitable tooling. If you'd prefer not to use | ||
Nix, and instead configure your environment manually, see the docs on | ||
[compiling from source](./build.md). | ||
|
||
## Installation OS-level packages | ||
You'll need `git` and `git-lfs` to clone the Penumbra protocol repository. | ||
Install these via your package manager of choice: | ||
|
||
```bash | ||
# for macos | ||
brew install git-lfs | ||
# for linux debian/ubuntu | ||
sudo apt install -y git-lfs | ||
# for linux fedora | ||
sudo dnf install -y git-lfs | ||
``` | ||
|
||
Then, for all platforms, make sure to run `git lfs install`. Now you're ready to clone the | ||
Penumbra protocol repo: | ||
|
||
``` | ||
git clone https://github.com/penumbra-zone/penumbra | ||
``` | ||
|
||
## Using `nix develop` for project dependencies | ||
|
||
<!-- | ||
The Informal Systems team has a Nix setup at https://github.com/informalsystems/cosmos.nix, | ||
which recommends using the NixOS installer, which is why we recommend using that installer, too. | ||
--> | ||
|
||
Install [Nix]. After restarting your shell, create a config file to enable | ||
Nix flakes: | ||
|
||
``` | ||
mkdir -p ~/.config/nix | ||
echo 'experimental-features = nix-command flakes' >> ~/.config/nix/nix.conf | ||
``` | ||
|
||
Now hop into the Penumbra directory and activate the env: | ||
|
||
``` | ||
cd penumbra | ||
nix develop | ||
``` | ||
|
||
You'll have to wait a bit for packages to be built and installed. Once it finishes, | ||
your active shell will have access to Penumbra project dependencies, like a compatible | ||
version of `cometbft`, and other dev tooling, like `grpcurl` and `mdbook`. | ||
You can run `exit` to return to your normal shell, without those tools, which have been installed to `/nix/store/`. | ||
|
||
## Using `direnv` | ||
|
||
If you use [direnv], you can copy the example `.envrc` file to automatically activate | ||
the Penumbra nix environment when you cd to the repository: | ||
|
||
``` | ||
cp .envrc.example .envrc | ||
direnv allow | ||
``` | ||
|
||
The `.envrc` path is intentionally git-ignored, so you can customize it as you see fit. | ||
If you don't use `direnv`, you'll need to run `nix develop` in any terminal window | ||
where you want access to the Penumbra dev env. Using `direnv` will make shell startup | ||
a bit slower, so choose what's best for you. | ||
|
||
[Nix]: https://nixos.org/ | ||
[direnv]: https://direnv.net/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# Privacy | ||
|
||
This document describes the privacy features of the Penumbra protocol, as well as conditions that must be true for privacy to be preserved. | ||
|
||
## Transfers | ||
|
||
Transfers do not reveal the asset, amount, sender or recipient identity. Transfers are also unlinkable to each other. | ||
|
||
## Swaps | ||
|
||
Initiating a swap does not reveal the identity of the swapper or the pre-paid claim fee, but it does reveal the assets and amounts in the swap. | ||
|
||
Claiming a swap does not reveal the amounts, asset types or the identity of the claimant. | ||
|
||
An observer of the chain will see that an anonymous account minted shielded outputs of a swap in a trading pair, but those outputs can't be linked to the claimant. | ||
|
||
## Governance Voting | ||
|
||
During a vote, the voting power (amount and asset type of the staked note that's used for voting), | ||
the vote itself, the identity of the validator (equivalent to the asset type), as well as the proposal being voted on are **revealed** during a delegator vote. | ||
However, the address of the voter is hidden, which renders the information revealed anonymous. | ||
|
||
<!-- | ||
## Staking | ||
TODO | ||
## IBC | ||
TODO | ||
--> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
{ | ||
"pd": "Full node: pd", | ||
"pclientd": "Ultralight node: pclientd" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.