NativeLink
Getting StartedOther build systems

Siso

Point Siso at NativeLink for Chromium-style remote caching and execution.

Siso is Chromium's Ninja replacement. It runs build actions on RBE natively, and NativeLink can be the RE API backend for Chromium and other Siso-driven builds.

For a production Chromium walkthrough, see Deployment → Chromium.

Local endpoint setup

Start NativeLink on localhost:50051 with instance name main, then export the environment variables Siso reads:

export SISO_REAPI_ADDRESS=localhost:50051
export SISO_REAPI_INSTANCE=main
export RBE_service_no_security=true

For CMake projects, recc is often the smaller setup. It uses the same Remote Execution API but fits CMake compiler-launcher workflows directly.

Chromium-style setup

Chromium checks in Siso configs. Point them at NativeLink by enabling remote execution in GN:

gn gen out/Default --args='
  use_remoteexec=true
  use_goma=false
  use_siso=true
'

Build normally with autoninja; it detects use_siso=true and invokes siso ninja:

autoninja -C out/Default chrome

Production TLS settings

For a secured NativeLink endpoint, set the Siso TLS variables instead of RBE_service_no_security=true:

export SISO_REAPI_ADDRESS=cas.nativelink.internal:50051
export SISO_REAPI_INSTANCE=main
export RBE_service_no_security=false
export RBE_tls_client_auth_cert=/etc/nativelink/tls/client.crt
export RBE_tls_client_auth_key=/etc/nativelink/tls/client.key
export RBE_tls_ca_cert=/etc/nativelink/tls/ca.crt

Confirm it is working

On a warm cache, cache hits should climb and network errors should stay at zero. If actions fall back to local execution, compare the platform properties Siso requests with the properties your NativeLink workers advertise.

On this page