Go to file
Michael Bradley, Jr cff5407764 refactor: nim_status_go Makefile target doesn't depend on migrations
The nim_status_go target builds a pure shim (as a C archive) so it doesn't
depend on migrations, which are only used in the pure/hybrid Nim
implementations.
2021-02-05 12:08:09 -06:00
.github/workflows ci: on macOS, make `ar` on the PATH an alias for `llvm-ar` 2021-01-07 14:29:46 -06:00
nim_status feat: introduce a module for nim-status/status-go hybrid procs 2021-02-05 12:08:09 -06:00
test feat: introduce a module for nim-status/status-go hybrid procs 2021-02-05 12:08:09 -06:00
vendor build: bump vendor/nim-waku 2021-02-05 12:08:09 -06:00
.gitattributes ci: run tests via GitHub Actions 2020-09-02 15:58:35 -05:00
.gitignore test: refactor tests so they can all be compiled and run in one pass 2021-02-05 12:08:09 -06:00
.gitmodules Remove duplicate module 2021-01-07 20:32:32 -06:00
LICENSE feat: integrate nim-sqlcipher 2020-11-18 13:34:24 -06:00
Makefile refactor: nim_status_go Makefile target doesn't depend on migrations 2021-02-05 12:08:09 -06:00
README.md feat: integrate nim-sqlcipher 2020-11-18 13:34:24 -06:00
env.sh feat: integrate nim-sqlcipher 2020-11-18 13:34:24 -06:00
nim_status.nim feat: reorganize for clearer non-shim vs. shim entrypoints 2021-02-05 12:08:09 -06:00
nim_status.nimble test: refactor tests so they can all be compiled and run in one pass 2021-02-05 12:08:09 -06:00

README.md

nim-status

License: MIT Stability: experimental Tests (GitHub Actions)

Nim implementation of the Status protocol: https://github.com/status-im/specs

Corresponds roughly to status-go: https://github.com/status-im/status-go which is consumed by status-react: https://github.com/status-im/status-react/

Requirements

  • Go - (used to build status-go)
# Linux
<TODO>

# macOS
brew install go

Installation

git clone https://github.com/status-im/nim-status
cd nim-status
make update
make

For more output use make V=1 ....

Use 4 CPU cores with make -j4 ....

Usage

  • Include build/nim_status.a, build/nim_status.h in your project
  • Before any of the API calls are done, NimMain() needs to be run.

Troubleshooting

If the make command fails due to already installed Homebrew packages, such as:

Error: protobuf 3.11.4 is already installed
To upgrade to 3.11.4_1, run `brew upgrade protobuf`.
make[1]: *** [install-os-dependencies] Error 1
make: *** [vendor/status-go/build/bin/libstatus.a] Error 2

This can be fixed by uninstalling the package e.g. brew uninstall protobuf followed by rerunning make.