Volver al ranking

TraceMachina/nativelink

Rustnativelink.com

NativeLink is a Nix-powered, open source, high-performance build cache and remote execution server, compatible with Bazel, Soong, Pants, Buck2, Reclient, and other RE-compatible build systems. It offers drastically faster builds, reduced test flakiness, and support for specialized hardware.

apache2bazelbuild-automationbuild-systemchromiumcontent-addressable-storageremote-executionrustre-clientnixbuck2free
Crecimiento de estrellas
Estrellas
1.6k
Forks
223
Crecimiento semanal
Issues
99
5001k1.5k
dic 2023oct 2024sept 2025jul 2026
Artefactoscrates.iocargo add nativelink
README
enter the shipstorm

Homepage GitHub stars OpenSSF Scorecard OpenSSF Best Practices Slack License

TraceMachina%2Fnativelink | Trendshift

NativeLink is an efficient, high-performance build cache and remote execution system that accelerates software compilation and testing while reducing infrastructure costs. It optimizes build processes for projects of all sizes by intelligently caching build artifacts and distributing tasks across multiple machines.

NativeLink is trusted in production environments to reduce costs and developer iteration times--handling over billions of requests per month for its customers, including large corporations such as Samsung.

NativeLink Explained in 90 seconds

🔑 Key Features

  1. Advanced Build Cache:

    • Stores and reuses results of previous build steps for unchanged components
    • Significantly reduces build times, especially for incremental changes
  2. Efficient Remote Execution:

    • Distributes build and test tasks across a network of machines
    • Parallelizes workloads for faster completion
    • Utilizes remote resources to offload computational burden from local machines
    • Ensures consistency with a uniform, controlled build environment

NativeLink seamlessly integrates with build tools that use the Remote Execution protocol, such as Bazel, Buck2, Goma, and Siso. CMake projects work too via recc. See Build CMake projects with NativeLink. It supports Unix-based operating systems and Windows, ensuring broad compatibility across different development environments.

🚀 Quickstart

To start, you can deploy NativeLink as a Docker image (as shown below). The setups below are production-grade installations. See the contribution docs for instructions on how to build from source with Bazel, Cargo, and Nix.

You can find a few example deployments in the Docs.

📦 Prebuilt images

Fast to spin up, but currently limited to x86_64 systems. See the container registry for all image tags and the contribution docs for how to build the images yourself.

Linux x86_64

curl -O \
    https://raw.githubusercontent.com/TraceMachina/nativelink/v1.4.0/nativelink-config/examples/basic_cas.json5

# See https://github.com/TraceMachina/nativelink/pkgs/container/nativelink
# to find the latest tag
docker run \
    -v $(pwd)/basic_cas.json5:/config \
    -p 50051:50051 \
    ghcr.io/tracemachina/nativelink:v1.4.0 \
    config

Windows x86_64

# Download the configuration file
Invoke-WebRequest `
    -Uri "https://raw.githubusercontent.com/TraceMachina/nativelink/v1.4.0/nativelink-config/examples/basic_cas.json5" `
    -OutFile "basic_cas.json5"

# Run the Docker container
# Note: Adjust the path if the script is not run from the directory containing basic_cas.json
docker run `
    -v ${PWD}/basic_cas.json5:/config `
    -p 50051:50051 `
    ghcr.io/tracemachina/nativelink:v1.4.0 `
    config

❄️ Raw executable with Nix

Slower, since it's built from source, but more flexible and supports MacOS. Doesn't support native Windows, but works in WSL2.

Make sure your Nix version is recent and supports flakes. For instance, install it via the next-gen nix installer.

[!CAUTION] Executables built for MacOS are dynamically linked against libraries from Nix and won't work on systems that don't have these libraries present.

[!TIP] Common setup gotchas for Nix on macOS / Linux:

  • Active shell environment: If the installer finishes but your shell doesn't recognize nix commands, you need to either restart your terminal session or source the daemon profile manually:
    . /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh
    
  • Enabling experimental features: If you used the standard Nix installer and get an error saying experimental Nix feature 'nix-command' is disabled, enable them by creating or editing ~/.config/nix/nix.conf:
    experimental-features = nix-command flakes
    
  • Disk Space: Unpacking and building compilers and dependencies requires significant storage. Make sure you have at least 15–20 GB of free space on your system volume before running setup commands.

Linux, MacOS, WSL2

curl -O \
    https://raw.githubusercontent.com/TraceMachina/nativelink/main/nativelink-config/examples/basic_cas.json5

nix run github:TraceMachina/nativelink ./basic_cas.json5

See the contribution docs for further information.

🤝 Contributing

Visit our Contributing guide to learn how to contribute to NativeLink. We welcome contributions from developers of all skill levels and backgrounds!

📊 Stats

Alt

📜 License

Copyright 2020–2025 Trace Machina, Inc.

Licensed under the Functional Source License, Version 1.1, Apache 2.0 Future License. SPDX identifier: FSL-1.1-Apache-2.0.

After the second anniversary of the date this version was made available, you may use this software under the Apache License, Version 2.0.

Repositorios relacionados
opensearch-project/OpenSearch

🔎 Open source distributed and RESTful search engine.

JavaMavenApache License 2.0searchsearch-engine
opensearch.org/docs/latest/opensearch/index/
13.3k2.8k
owasp-modsecurity/ModSecurity

ModSecurity is an open source, cross platform web application firewall (WAF) engine for Apache, IIS and Nginx. It has a robust event-based programming language which provides protection from a range of attacks against web applications and allows for HTTP traffic monitoring, logging and real-time analysis.

C++Apache License 2.0modsecuritynginx
modsecurity.org
9.7k1.7k
lrsjng/h5ai

HTTP web server index for Apache httpd, lighttpd and nginx.

JavaScriptnpmh5ainginx
6.1k632
hestiacp/hestiacp

Hestia Control Panel | A lightweight and powerful control panel for the modern web.

ShellGNU General Public License v3.0linux-servercontrol-panel
hestiacp.com
4.4k908
shopizer-ecommerce/shopizer

Shopizer java e-commerce software

JavaMavenApache License 2.0e-commercespringframework
shopizer.com
3.9k3.3k
dongrixinyu/JioNLP

中文 NLP 预处理、解析工具包,准确、高效、易用 A Chinese NLP Preprocessing & Parsing Package www.jionlp.com

PythonPyPIApache License 2.0nlpnatural-language-processing
jionlp.com
3.9k443
multiprocessio/datastation

App to easily query, script, and visualize data from every database, file, and API.

TypeScriptnpmOthersqlmysql
datastation.multiprocess.io
3k112
sprintcube/docker-compose-lamp

A basic LAMP stack environment built using Docker Compose.

DockerfileMIT Licenselamp-stackdocker
2.8k1.5k
sabri-zaki/EasY_HaCk

Hack the World using Termux

PythonPyPIApache License 2.0termuxhackers
2.4k256
opensearch-project/OpenSearch-Dashboards

📊 Open source visualization dashboards for OpenSearch.

TypeScriptnpmApache License 2.0searchopensearch
opensearch.org/docs/latest/dashboards/index/
2.1k1.3k
openscrm/api-server

OpenSCRM是一套基于Go和React的高质量企业微信私域流量管理系统 。遵守Apache2.0协议,全网唯一免费商用。企业微信、私域流量、SCRM。

GoGo ModulesApache License 2.0scrmwework
1.6k327
pingooio/pingoo

The fast and secure Load Balancer / API Gateway / Reverse Proxy with built-in service discovery, GeoIP, WAF, bot protection and much more - https://pingoo.io

Rustcrates.ioMIT Licenseanti-botapi
pingoo.io
1k41