Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Erb3/TenebraStake
A stake node for the "cryptocurrency" tenebra, written in Rust!
https://github.com/Erb3/TenebraStake
tenebra
Last synced: about 2 months ago
JSON representation
A stake node for the "cryptocurrency" tenebra, written in Rust!
- Host: GitHub
- URL: https://github.com/Erb3/TenebraStake
- Owner: Erb3
- License: mpl-2.0
- Archived: true
- Created: 2023-09-03T15:00:07.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-08-20T12:49:12.000Z (5 months ago)
- Last Synced: 2024-08-20T14:51:48.784Z (5 months ago)
- Topics: tenebra
- Language: Rust
- Homepage:
- Size: 135 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-switchcraft - Tenebra Stake (Erb3) - Tenebra staking node written in Rust (Programs / External Software)
README
# TenebraStake
> [!IMPORTANT]
> TenebraStake is archived as of August 20th, and will not receive any updates.[![github](https://cdn.jsdelivr.net/npm/@intergrav/devins-badges@3/assets/cozy/available/github_vector.svg)](https://github.com/Erb3/tenebrastake)
![risugamis-modloader](https://cdn.jsdelivr.net/npm/@intergrav/devins-badges@3/assets/cozy/unsupported/risugamis-modloader_vector.svg)A stake node for the "cryptocurrency" [tenebra](https://tenebra.lil.gay).
## Options
| Option | Description | Flag | Environment variable | Default |
| ----------- | ------------------------------------------------------------------------------- | ---- | -------------------- | ------------------------- |
| Private key | The private-key to connect to tenebra with | `-p` | `PRIVATE_KEY` | None |
| Sync node | The tenebra node to connect to. You will in most cases not need to change this. | `-s` | `SYNC_NODE` | `https://tenebra.lil.gay` |## How to use
Download the binary, and run it with `TenebraStake -p [myPrivateKey]`.
### Docker run
Run the following command to start the stake node with `docker run`. Replace `abc123` with your private key:
```shell
docker run -d -e PRIVATE_KEY=abc123 ghcr.io/erb3/tenebrastake:latest
```### Docker compose
To run with Docker compose, add this to your `docker-compose.yml`. Replace `abc123` with your private key:
```yml
tenebrastake:
image: ghcr.io/erb3/tenebrastake:latest
container_name: tenebrastake
restart: unless-stopped
environment:
- PRIVATE_KEY=abc123
```## Requirements
The websocket and HTTPS parts of TenebraStake use native TLS. If you are doing something else than running the binary on Linux, you don't need anything!
### Linux
OpenSSL 1.0.1, 1.0.2, 1.1.0, or 1.1.1 with headers (see [rust-openssl](https://github.com/sfackler/rust-openssl)).
## Versioning
TenebraStake is versioned with my own proprietary versioning scheme known as `rewrite.major.minor`.
In major updates, it may be breaking. It rewrites, it will be breaking. Patch releases will not be intentionally breaking!## FAQ
**Can I run multiple stake nodes with the same wallet?**
Answer: Yes, you can run multiple stake nodes.
However, the only benefit to this is that one will take over if one crashes (which should not happen).
You do not get any financial gain.**Does it automatically reconnect?**
TenebraStake may in some cases reconnect, such as if you lost internet connectivity for a small amount of time.
However, TenebraStake is meant to be run on servers, so it is meant to crash when weird things happen.
If you want it to restart once it crashed, consider using docker with restarting enabled.## Todo
- [ ] Wait for keep-alive packets
- [ ] Prometheus export
- [ ] Remove all stakes on exit (and add all stakes on start)
- [ ] Remove all stakes if the total network stake is above a set threshold
- [ ] Detect stake getting disabled## Alternatives
Don't like TenebraStake? 😥. If it was our fault, please make a GitHub issue! Alternatives we like:
1. [TenebraStakeNode](https://github.com/PatriikPlays/tenebrastakenode/) by PatriikPlays
2. [TenebraValidator](https://github.com/xAnavrins/TenebraValidator) by Anavrins
3. [tenebra.lua](https://gist.github.com/Ale32bit/2978fd3962506a8a943fbcf115084b6b) by AlexDevs
4. [TenebraStakingNode](https://github.com/Allymonies/TenebraStakingNode) by Allymonies