Python 3 library and CLI for SporeStack (SporeStack Tor Hidden Service)
Requirements
- Python 3.9-3.12 (and likely newer)
Running without installing
- Make sure pipx is installed.
pipx run 'sporestack[cli]'
Installation with pipx
- Make sure pipx is installed.
pipx install 'sporestack[cli]'
Traditional installation
- Recommended: Create and activate a virtual environment, first.
pip install sporestack(Runpip install 'sporestack[cli]'if you wish to use the command linesporestackfunctionality and not just the Python library.)
Getting started
Recommended: Make sure you're on the latest stable version comparing sporestack version with git tags in this repository, or releases on PyPI.
sporestack aup
First, read the Acceptable Use Policy.
sporestack token create --dollars 250 --currency xmr
Create a new token. Fund it with $250, and pay with Monero.
This command will suggest that you create an SSH key for the token. That command should look something like this...
ssh-keygen -C "" -t ed25519 -f ~/.sporestack/sshkey/primary/id_ed25519'
We recommend creating an SSH key for your token. If you don't want do this, you can pass --ssh-key-file when you launch a server. Otherwise, ~/.ssh/id_rsa.pub will be the default.
This SSH key should be backed up and kept secret, just like your token!
Usage examples
sporestack token list
List the tokens that you have saved locally.
sporestack token info
View information about the token, including how many days left your token can sustain your autorenewal servers for.
sporestack token messages
View messages on the token.
sporestack token invoices
View invoices on the token.
sporestack server operating-systems
View available operating systems.
sporestack server flavors
View available "flavors" (plans, or server sizes.)
sporestack server regions
View available regions. Note that all three of these commands accept a --provider option, in case you're only interested in viewing a particular provider's servers.
sporestack server launch --hostname SomeHostname --operating-system freebsd-14 --autorenew --provider vultr --flavor vc2-1c-1gb --region ord
Launch a FreeBSD 14 server on Vultr, in Chicago, Illinois, USA. This will use your primary token, unless you pass --token for something else. This server will automatically renew from your token's balance.
If you find the server off, check your token's balance with sporestack token info. If servers aren't able to automatically renew, they are powered off as a way to signal that payment is needed, else the server will be deleted. We don't have any way to email you if this is the case, given the nature of our service!
Make sure you match up your chosen provider with the flavor, operating system, and region options!
sporestack server stop --hostname SomeHostname
Shutdown the server by hostname.
sporestack server stop --machine-id ss_m_... # Or use --machine-id to be more pedantic.
Shutdown the server by its machine ID, if it doesn't have a hostname, or if you want to be more pedantic.
sporestack server start --hostname SomeHostname
Turn the server back on.
sporestack server autorenew-enable --hostname SomeHostname
Enable autorenew on the server.
sporestack server autorenew-disable --hostname SomeHostname
Disable autorenew on the server.
sporestack server list
List your servers.
sporestack server info --hostname SomeHostname
Get more detailed information on your server than the list view.
sporestack server delete --hostname SomeHostname
Delete the server.
sporestack server launch --hostname SomeHostname --operating-system debian-12 --days 1 --provider digitalocean --flavor vps-1vcpu-1gb --region auto
Launch a server on DigitalOcean, in a random region. This is for a one day fixed lifetime, after which it will be deleted if not renewed.
sporestack server launch --operating-system openbsd-7.8 --billing-cycle monthly --autorenew --provider slowservers --region spknwalb --flavor slowservers-768mb-v6
Launch a IPv6-only server on Slow Servers, with a monthly billing cycle, renewing automatically.
sporestack server launch --operating-system debian-13 --billing-cycle monthly --autorenew --provider sporestack_eu --region amsterdam --flavor sporestack-eu-768mb
Launch a server on SporeStack EU, with a monthly billing cycle, renewing automatically.
Notes
- If you want to communicate with the SporeStack API using Tor, set this environment variable:
SPORESTACK_USE_TOR_ENDPOINT=1. Verify which endpoint is in use withsporestack api-endpoint.
Developing
pipenv install --deploy --devpipenv run make testpipenv run make formatto format files and apply ruff fixes.
Licence
Metadata
Release files for sporestack 16.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sporestack-16.0.0.tar.gz | 55.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sporestack-16.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 78.6 kB
Release files / sporestack-16.0.0.tar.gz
| Download URL | sporestack-16.0.0.tar.gz |
|---|---|
| Size | 55.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d469632df0959a1758e12b58c83d4cda5c1d9c4d590871b3b4a32014374acccc
|
|
BLAKE2b-256 checksum How to use checksums |
258fcb553465f3fba052a7d1aca81b89319c6c32ab2b19b4651e106a4c4993b5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Release files / sporestack-16.0.0-py3-none-any.whl
| Download URL | sporestack-16.0.0-py3-none-any.whl |
|---|---|
| Size | 23.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2638e6b681d3f21df9a38da6d35b10eccacb44ff8f81c3380cbeaef66b6a8a0e
|
|
BLAKE2b-256 checksum How to use checksums |
0d133526fa5eee0607f483f273424e3d152d7144c25c746714be742966acec46
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|