
Research
wget to Wipeout: Malicious Go Modules Fetch Destructive Payload
Socket's research uncovers three dangerous Go modules that contain obfuscated disk-wiping malware, threatening complete data loss.
You can use aesir
simply by installing via pip
on your Terminal.
pip install aesir
And then you can begin deploying local cluster as such:
aesir deploy
The initial deployment may take some time at pulling required images from their respective repositories. Results may look as such:
$ pip install aesir
> ...
> Installing collected packages: aesir
> Successfully installed aesir-0.4.3
$ aesir deploy
> Deploy specified local cluster: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:01
> Generate addresses: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00
> Mine initial capital for parties: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00
You will have podman containers running in the backend, ready to be interfaced by your local environment applications you are developing.
In order to properly test many functionalities, you will need to send mining commands to local setup. You can achieve completely local and running environment with the following command:
Currently there are two supported cluster-types in this project. Specified by flags,
--duo
(default), or --cat
, --ohm
, --uno
with the following set-up:
Type | Description |
---|---|
cat | Customized aesir-bitcoind-cat node that has OP_CAT enabled for experiments |
duo | Contains two LND nodes named aesir-ping and aesir-pong unified by one single aesir-bitcoind service. |
ohm | Only has aesir-bitcoind without any Lightning nodes. |
uno | Only has one LND node named aesir-lnd connected to aesir-bitcoind . |
This project also helps you setup peripheral services to make development process easier, too. For example, if you want to deploy a duo-cluster with attached postgres database, run the following:
$ aesir deploy --with-postgres
> ...
$ aesir mine
> ╭───── containers ─────╮┏━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━┳━━━━━━━━━┓
> │ aesir-postgres │┃ Name ┃ Nodekey ┃ Channels ┃ Peers ┃ Height ┃ Synced? ┃
> │ aesir-pong │┡━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━╇━━━━━━━━━┩
> │ aesir-ping ││ aesir-pong │ 3da33d3eb12 │ 2 │ 1 │ 216 │ true │
> │ aesir-bitcoind ││ │ deacf4e1a64 │ │ │ │ │
> │ ... ││ ... │ ... │ ... │ ... │ ... │ ... │
Or run an uno-cluster with both attached postgres database and redis solid store cache like this:
$ aesir deploy --uno --with-postgres --with-redis
> ...
$ aesir mine
> ╭───── containers ─────╮┏━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━┳━━━━━━━━━┓
> │ aesir-postgres │┃ Name ┃ Nodekey ┃ Channels ┃ Peers ┃ Height ┃ Synced? ┃
> │ aesir-redis │┡━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━╇━━━━━━━━━┩
> │ aesir-lnd ││ aesir-lnd │ c0ae6b158d0 │ 0 │ 0 │ 202 │ true │
> │ aesir-bitcoind ││ │ 4194459b8f3 │ │ │ │ │
> │ ... ││ ... │ ... │ ... │ ... │ ... │ ... │
Use the following command to clean up active aesir-*
containers:
aesir clean
🚧 This will resets the current test state, so use with care. Example below:
$ aesir clean
> Remove active containers: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:01
aesir-cashu-mint
& aesir-lnd-krub
image setups and deployments w/ shared volumespyproject.toml
for PyPI metadatablack
and use ruff formatter and lintersrc
folder will not be createdcat
cluster in deployment and --bitcoind-cat
flag for customized buildbitcoind-cat
; Fix progress bar overlap.invoice
commandschemas.yml
and embed commands to service definitionsdocker-py
and replace with podman-py
polarlightning
images and build from aesir definitionsaesir-tesla-ball
peripheral service using tesla-ballordapi
peripheral service.The following guide walks through setting up your local working environment using pyenv
as Python version manager and uv
as Python package manager. If you do not have pyenv
installed, run the following command.
brew install pyenv --head
curl https://pyenv.run | bash
If you do not have uv
installed, run the following command.
brew install uv
curl -LsSf https://astral.sh/uv/install.sh | sh
Once you have pyenv
Python version manager installed, you can
install any version of Python above version 3.9 for this project.
The following commands help you set up and activate a Python virtual
environment where uv
can download project dependencies from the PyPI
open-sourced registry defined under pyproject.toml
file.
pyenv shell 3.11.9
uv venv --python-preference system
source .venv/bin/activate
uv sync --dev
This project is licensed under the terms of the MIT license.
FAQs
Command line interface used for generating local Lightning test environment
We found that aesir demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Socket's research uncovers three dangerous Go modules that contain obfuscated disk-wiping malware, threatening complete data loss.
Research
Socket uncovers malicious packages on PyPI using Gmail's SMTP protocol for command and control (C2) to exfiltrate data and execute commands.
Product
We redesigned Socket's first logged-in page to display rich and insightful visualizations about your repositories protected against supply chain threats.