From 9e5f2456cf16cf23f0e802a3799fca1dcb4a7fbc Mon Sep 17 00:00:00 2001 From: Iuri Matias Date: Fri, 15 May 2020 18:46:12 -0400 Subject: [PATCH] update readme --- README.md | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 52 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index d097c053b3..9cecc06733 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,41 @@ Experiments calling status-go from nim, inspired in [nim-stratus](https://github.com/status-im/nim-stratus) by [@arnetheduck](https://github.com/arnetheduck) +## Building + +### 0. Prerequesites + +* nim + +``` +# linux +apt-get install nim + +# macos +brew install nim +``` + +* QT + +install QT https://www.qt.io/download-qt-installer +and add it to the PATH +``` +# Linux +export PATH=$PATH:/path/to/Qt/5.14.2/gcc_64/bin + +# macos +export PATH=$PATH:/path/to/Qt/5.14.2/clang_64/bin +``` + +* go - (used to build status-go) + +``` +# linux + + +# macos +brew install go +``` ### 1. Install QT, and add it to the PATH @@ -15,10 +50,19 @@ export PATH=$PATH:/path/to/Qt/5.14.2/clang_64/bin ### 2. Clone the repo and build `nim-status-client` ``` -git clone https://github.com/status-im/nim-status-client/ +git clone https://github.com/status-im/nim-status-client/ --recurse-submodules make ``` +if you previously cloned the repo without the `--recurse-submodule` options, then do + +``` +git submodule update --init --recursive +make +``` + +for more output use `make V=1` + ### 3. Setup Library Path ``` export LD_LIBRARY_PATH=vendor/DOtherSide/build/lib/ @@ -30,6 +74,13 @@ export LD_LIBRARY_PATH=vendor/DOtherSide/build/lib/ ./bin/nim_status_client ``` +## Development + +If only making changes in QML `ui/` re-rerunning the app is enough +If making changes in the nim code `src/` then doing `make` again is needed (it's very fast after the first run) + +## Cold Reload + ### 5. "Cold" reload using VSCode We can setup a "cold" reload, whereby the app will be rebuilt and restarted when changes in the source are saved. This will not save state, as the app will be restarted, but it will save us some time from manually restarting the app. We can handily force an app rebuild/relaunch with the shortcut `Cmd+Shift+b` (execute the default build task, which we'll setup below).