Setup Env

Set up development environment by loading direnv. Must be run before any make targets (tests, builds, linting).

akash-network 7d0891c 1.2 KB Updated

File contents

Instructions

Before running any make target (make test, make bins, make lint-go, etc.), the direnv environment must be loaded. Without it, make will fail with errors about AKASH_DIRENV_SET or AKASH_ROOT not being set.

Steps

  1. Allow and load direnv for the project root. This sets all required variables (AKASH_ROOT, AKASH_DIRENV_SET, GOTOOLCHAIN, GOPATH, GOWORK, cache paths) adds tool directories to PATH, and runs make cache to download build tools and wasmvm libraries:

    direnv allow
    
  2. Load environment into current shell:

    eval "$(direnv export bash 2>&1 | grep -v '^direnv:')"
    
  3. Validate:

    [[ "$AKASH_DIRENV_SET" == "1" ]] && echo "direnv loaded" || echo "ERROR: direnv not loaded"
    

Notes

  • If direnv fails, check that required system tools are installed: make, unzip, wget, curl, npm, jq, readlink, pv, lz4.
  • On macOS, Homebrew make (v4+) must be on PATH: export PATH="$(brew --prefix)/opt/make/libexec/gnubin:$PATH".

akash-network/node/tree/main/.agents/skills/setup-env commit 7d0891c01c

Frequently asked questions

npx skillmds@latest add akash-network/setup-env