We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Packaging Bazel and Bazel-based packages

Formal Metadata

Title
Packaging Bazel and Bazel-based packages
Title of Series
Number of Parts
779
Author
Contributors
License
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Bazel is a build system to rule them all. It tries to enforce purity on it's own, and has not been built around the idea that it could be used inside another build system, like... Nix! This makes it really difficult to package, and even more difficult to make it cooperate with Nix to build other packages. This talk will build upon on my experience packaging and testing Bazel 7.0.0 for nixpkgs. Going through the most interesting fixes required to make it work, we will also discuss hermeticity in both build systems, dependencies pinning with lockfiles, sandboxing, caching, remote execution and then some more. Packaging Bazel for Nix has been an intense experience, and you will get all the nice bits without the hard work!