2025-12-19 14:43:52 +05:30
2025-05-14 18:53:27 +03:00
2025-12-19 14:43:52 +05:30
2025-12-16 03:06:15 +05:30
2025-12-16 18:28:51 +05:30
2025-12-16 18:28:51 +05:30
2025-12-19 14:43:52 +05:30

Waku Go Bindings

Go bindings for the Waku library.

Install

go get -u github.com/logos-messaging/logos-messaging-go-bindings

Building & Dependencies

libwaku (from logos-messaging-nim) is required at compile-time. The Makefile gives you two ways to satisfy this:

  1. Automatic clone (default) if LMN_DIR is unset, running

    make -C waku build
    

    will clone a shallow copy of logos-messaging-nim into third_party/nwaku, build libwaku, and compile the Go bindings. This is what CI uses.

  2. Reuse an existing clone if you already have logos-messaging-nim checked out, point the build to it:

    export LMN_DIR=/path/to/your/logos-messaging-nim
    make -C waku build
    

    Existing libwaku artifacts under that path are reused, so this is fast for local development.

The Makefile sets CGO_CFLAGS and CGO_LDFLAGS automatically; no extra environment is required.

Downstream projects: When importing logos-messaging-go-bindings in another Go module you must ensure LMN_DIR is exported (or vendor libwaku) before running go build. Otherwise the CGO step will fail.


Development

When working on this repository itself, logos-messaging-nim is included as a git submodule for convenience.

  • Initialize and update the submodule, then build libwaku
    git submodule update --init --recursive
    make -C waku build-libwaku
    
  • Build the project. Submodule paths are used by default to find libwaku.
    make -C waku build
    
Description
No description provided
Readme
Languages
Go 99.2%
Makefile 0.8%