nixbuild.net logo nixbuild.net

Quick, cost-efficient and safe Nix builds.

nixbuild.net is a build cluster solution that adds scalability and intelligent scheduling to any Nix workflow. Use it as a cloud service or in private enterprise deployments.

Build quickly!

Unparalleled parallelism

nixbuild.net is a build cluster that automatically scales up to run as many Nix builds as possible in parallel, with carefully isolated compute resources assigned to each build.

Smart caching

The fastest build is the one that you don't have to run. We try hard to avoid building by re-using results, fetching from Nix caches and de-duplicating identical active builds.

Offload heavy builds

Mix and match local and remote building as you like. Run small builds on your local machine for best possible latency, but send resource-intensive to nixbuild.net.

Build in collaboration

Teams optimize for speed by running all developer and CI builds through the same nixbuild.net account. That way, they benefit from automatically shared and re-used build artifacts.


Build cost-efficiently!

Pay per use

Get rid of your expensive always-on build servers and pay only for the build time you use. nixbuild.net scales to zero when not utilized.

Smart scheduling

By looking at historic usage, each build is automatically assigned the CPUs and memory it actually needs. Stop second-guessing the resource usage of your builds and start maximizing cluster utilization.


Build safely!

Isolated builds

Each build runs inside an isolated, virtualized sandbox without network access. The filesystem of the sandbox contains nothing but the input to the build. Build results are only shared and re-used when it is safe to do so.

Proven technology

nixbuild.net has been hardened through years of development and usage by demanding customers from the Nix community. You can count on it to handle build tasks gracefully.


Build anywhere!

In any Nix environment

nixbuild.net works just like any other remote Nix builder, and you set it up in exactly the same way. As a result, it can be used anywhere you use Nix: on single machines, on CI servers, no matter how you use Nix.

With any Nix

nixbuild.net is carefully designed to embody the Nix spirit. Our ambition is to stay compatible with future denominations such as Nix, Tvix, and Lix.

In the cloud

We host nixbuild.net as a public cloud service, ideal for open source hackers and small enterprises. It also offers an easy way to evaluate our product.

On your premises

We offer ready-made solutions for enterprises who prefer to deploy nixbuild.net internally inside their organizations.


Build with nixbuild.net!

Register for the public version of nixbuild.net now and start building today! Each new account includes 25 CPU hours of build time for free so you can try out the service on your own terms, without committing to anything. No credit card is needed for registration.

By clicking 'Continue' you agree to the nixbuild.net TERMS OF USE

Pricing

The public version of nixbuild.net, hosted by us, costs 0.12 EUR (excl. VAT) per CPU hour. You're billed monthly for the CPU hours your builds have consumed. If you don't use the service, no further costs will be incurred. The exact details around how the CPU time of a build is calculated and how billing is handled is defined here.


Get in touch!

Interested in our private deployment options, or anything else we could help you with? Just drop us a message below!


FAQ

What happens after I've filled out the registration form?

Shortly after you've submitted the form you'll receive an email with an activation link. As soon as you've activated your account, you can start running Nix builds. Since every account includes 25 free CPU hours, no cost is incurred until the free build time has been consumed. When that happens, you'll get a second mail asking you for billing details. This means that there will be no surprise expenses by signing up for nixbuild.net and trying it out.

Once your account is activated, you should read through the Getting Started guide to setup your system for using nixbuild.net.

How do I administer my nixbuild.net account?

You administer your account through the nixbuild.net shell. This is a simple text-based shell accessible directly over ssh, no installation needed. Through the shell you can add/remove ssh keys, list details about your builds, see how many build hours you have consumed and manage billing.

How are payments handled?

After your account has been activated you can enable billing at any time you like. Once you have enabled billing, and only then, will you be able to use the service beyond the initial free build hours.

You enable billing through the nixbuild.net shell. When doing this, you will be directed to a web page hosted by Stripe, where you'll enter your billing address and credit card details.

After this, Stripe will charge your credit card monthly for any (non-free) build hours consumed.

The exact details around cost calculation and billing are defined here.

What does a typical build cost?

Since builds and their resource requirements vary wildly, it is difficult to give a general answer. However, if you make a low-level change in nixpkgs (changing the stdenv) and then build the Linux kernel, you will trigger the build of about 130 packages (the kernel plus all of its dependencies). Building those 130 packages on nixbuild.net consumes around 30 CPU hours, yielding a total cost of around €3.60, or an average cost of €0.028 per build.

Can multiple users share the same nixbuild.net account?

Yes. You're free to add as many public ssh keys as you like to your account. This means multiple users (including "virtual" users like CI runners etc) can use the service. Furthermore, if a user tries to build a Nix derivation that already has been built by any user of the same nixbuild.net account, the build result will simply reuse that build result. This is ideal for development teams.

Where is nixbuild.net hosted?

nixbuild.net is served from Germany. As the userbase grows, there will be more endpoints in other regions, to optimise latencies and bandwidth for everyone.

For how long are build results kept in nixbuild.net?

If you build something that you or some other user built recently, you can expect the build result to be reused without having to rebuild. This is also true for build dependencies that have been uploaded or fetched. Today, there is no publicly communicated limit for how long build results are kept. Instead, nixbuild.net tries to optimise the overall build performance for its users.

How are builds secured?

nixbuild.net uses KVM-based virtualization to isolate builds from each other. A build sandbox has been developed specifically for nixbuild.net. This sandbox makes sure that a build has no network access and no physical disk access. A virtualized file system makes sure that the build only has access to its specific dependencies.

The sandbox also guarantees that each build is pure and repeatable. This means that a build that runs on nixbuild.net cannot produce output influenced by sources not explicitly defined in its dependencies (inputs).

Build dependencies and results are only shared with other users of the same account, or with accounts that explicitly have been marked as trusted. No other accounts can access the dependencies or results of a build.

Read more about privacy here.

What CPU limits are imposed on my builds?

In general, a build submitted to nixbuild.net cannot control its CPU allocation. Instead, nixbuild.net will automatically allocate 1–16 virtualized CPUs for it. The upper CPU limit might change in the future. Each vCPU is mapped to a dedicated hyperthread, no CPU threads are shared between builds.

How much memory can a build use?

There is no formally defined memory limit for builds. If a build should run out of memory it will be restarted with more memory, without any interaction needed from the end user. The reasoning behind this behavior is that builds are usually compute-bound, not memory-bound. However, the memory usage of each build is monitored, and if repeated excessive memory usage is noticed, the responsible account owner will be contacted.

Also note that all intermediate artifacts produced by a build, along with the final build result, count towards the build's total memory usage. This is because each build on nixbuild.net runs in-memory only, with nothing written to disk. This gives your builds both increased performance and security.

Can I use nixbuild.net together with my own private binary cache?

Yes. A build performed on nixbuild.net behaves just like any other Nix build. This means that you can upload the resulting artifacts to your own cache or to any third-party cache service just as usual.

nixbuild.net alsosupportsuploading build artifacts directly to external caches, which lets you avoid having to perform the cache upload as an extra step after the build is done.

What platforms are supported by nixbuild.net?

nixbuild.net can run x86_64-linux, i686-linux, aarch64-linux and armv7l-linux builds.

Can I run builds using KVM virtualization on nixbuild.net?

Does nixbuild.net work together with Hydra?

Yes. Since nixbuild.net behaves exactly as an ordinary remote Nix builder, it works with any setup using Nix. You can add nixbuild.net as a worker to Hydra and configure it to accept a large number of concurrent jobs, since nixbuild.net automatically scales up.

Yes. There is the officially supported nixbuild-action, making your Nix builds in GitHub Actions super-powered by nixbuild.net, with minimal configuration needed.

Does nixbuild.net provide an API?

Yes, check out the documentation here.