* feat(nix): add logosdeliverynode build target
Generalize the wakucanary-only binary path in nix/default.nix into an
app-target map so any app binary shares one build/install/rln-bundle
path, and expose a `logosdeliverynode` flake package (with gitVersion
for --version reporting).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* ci(github): build logosdeliverynode in release/pre-release/windows workflows
- release-assets.yml: build logosdeliverynode (POSTGRES=1) so it ships in
the waku-<arch>-<os>.tar.gz release asset.
- pre-release.yml: add logosdeliverynode to the make targets and to the
nwaku nightly/RC tarball.
- windows-build.yml: build logosdeliverynode.exe and assert it exists.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* ci(jenkins): build & push logosdeliverynode docker image to harbor
Jenkinsfile.release now builds a second image from the dedicated
logosdeliverynode Dockerfile stage and pushes it to
harbor.status.im/wakuorg/logosdelivery:<IMAGE_TAG> alongside the primary
image. Add a logosdeliverynode stage to the root Dockerfile so the image
entrypoint is /usr/bin/logosdeliverynode rather than the generic
/usr/bin/wakunode symlink. Bump the pipeline timeout to 40m to cover the
extra compile.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* Apply suggestions from code review
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
* add libbsd-dev into Dockerfile
* add libstdc++ in Dockerfile
to avoid runtime error loading shared library libstdc++.so.6:
No such file or directory (needed by /usr/bin/wakunode)
* fix libpcre installation in Dockerfile for debian:stable-slim
Seems with debian:stable-slim now points to Debian Bookworm and that made libpcre3 deprecated we have a failing docker build.
* remove libpcre3 dependency completely as we dont use Nims std/re regex lib.
* Remove all remaining reference to pcre library in our image builds
* fix heaptrack build for Nim v2.0.12 builds, fixed docker image creation and local image with copying
* fix Dockerfile.bn.amd64 to support nwaku-compose
* Fix heaptrack image build with jenkins.release
* Fix NIM_COMMIT for heaptrack support in jenkins.release
* Remove leftover echo
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Fix dockerfile naming
* Fix assignment of NIM_COMMIT in Makefile
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Switch libnegentropy library build from shared to static linkage
* Update negentropy with -fPIC compile option that is necessary for libwaku build
* Bump waku-org/negentropy to the latest on master to incorporate merged static build of libnegentropy
To resolve RLN build issues like this:
```
Building: librln_v0.3.4.a
./scripts/build_rln.sh: line 29: rustup: command not found
Warning: to ensure you are building in a supported repo state, please always run "make update" after "git pull"
(it looks like you've forgotten to do this).
This also applies whenever you switch to a new branch or commit, e.g.: whenever you run "git checkout ...".
Failed to download -rln.tar.gz
./scripts/build_rln.sh: line 42: jq: command not found
error: could not find `Cargo.toml` in `/app` or any parent directory
make: *** [Makefile:131: librln_v0.3.4.a] Error 127
```
Signed-off-by: Jakub Sokołowski <jakub@status.im>
* Adding Dockerfile_with_heaptrack
* build: merge heaptrack dockerfile with production dockerfile (#1682)
* Avoid blindly copy /usr/lib/ and install only the needed libraries
* Adding heaptracker options in the Makefile
* Dockerfile simplification. (apk add libunwind)
* Dockerfile, Makefile: ++heaptrack params to nim build & 'heaptrack_support' in Nim compiler
* Dockerfile, Makefile: more convenient name for 'NIM_COMMIT' Docker arg
* Making 'NIM_COMMIT' more explicit
---------
Co-authored-by: Lorenzo Delgado <lorenzo@status.im>
Necessary to fix errors like:
```
error: package `ethers-core v0.17.0 (https://github.com/gakonst/ethers-rs#454449b0)` cannot be built
because it requires rustc 1.62 or newer, while the currently active rustc version is 1.60.0
```
Also upgraded Alpine from `3.15` to `3.16`.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
NIM_PARAMS is and internal variable.
NIMFLAGS should be used outside of nimbus build system.
includes:
* fix(docker): copy RLN parameters.key into the container
* chore(makefile): NIMFLAGS in docker img rule