Skip to main content

A pest implementation

Project description

Akris

Description

Akris implements the Pest protocol. It provides a station library that can be used to connect to a pest network. It also provides a client library that can be used to issue commands to a station.

This document is a work in progress.

Getting Akris

Using V

This guide assumes a working pentacle chroot environment

Press Akris

Download Akris patches and seals from v.alethepedia.com/akris.

mkdir -p patches
mkdir -p seals
curl -o patches/akris-genesis-VERSION.vpatch http://v.alethepedia.com/akris/akris-genesis-VERSION.vpatch
curl -o seals/akris-genesis-VERSION.vpatch.thimbronion.sig http://v.alethepedia.com/akris/akris-genesis-VERSION.vpatch.thimbronion.sig

Pentacle v expects gpg public keys to be found in ~/wot.

Using the bash implementation of v provided in pentacle, press Akris with the leaf you wish to target (usually the patch with the lowest version number):

v press akris patches/akris-genesis-99999.vpatch

From signed tarball [WIP]

wget https://v.alethepedia.com/akris/akris-genesis-99999.tar.gz
tar zxvf akris-genesis-99999.tar.gz
cd akris
python -m venv venv
source venv/bin/activate
pip install -e .

Install using a package manager

From PyPI [WIP]

pip install akris

Installation from Source

Setup a virtual environment

In the akris project root directory, run:

cd akris
python -m venv venv
source venv/bin/activate

Install Akris from source

pip install -e .

Running Akris

There are several command line options you'll need to set. You can get a list of them by running akris with the --help option:

bin/main.py

Development

Editable install

This will allow tests to find the akris package, while still allowing you to edit the source code and have the changes be reflected immediately without reinstalling.

pip install -e .

Install development dependencies

pip install .[dev] 

Run tests

make test

Code formatting

black .

Database Management

Create a new migration

caribou create -d akris/migrations <migration name>

Create a static binary build

Pre-requisites

Debian/Ubuntu
sudo apt-get install patchelf

Linux

make dist

Creating distribution build

Build a PyPI package [WIP]

python3 -m build

The output will be in the dist/ directory. Upload to PyPI with twine:

python3 -m twine upload  dist/*

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

akris-1.0.3.tar.gz (86.5 kB view details)

Uploaded Source

File details

Details for the file akris-1.0.3.tar.gz.

File metadata

  • Download URL: akris-1.0.3.tar.gz
  • Upload date:
  • Size: 86.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for akris-1.0.3.tar.gz
Algorithm Hash digest
SHA256 f14102fd69624d1691727171300c69c5beaa2ef51aa374390df80ec71de6bbd0
MD5 7a2d0107cd0b2d7638f74c8e19df8c01
BLAKE2b-256 0ab5150d604ddc87cc2f79aea4ee4a8d1675ec36920dff2aa8071aeab5c806f0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page