nixide/rust/nix-c-raw
Robert Hensing 0d7146cb39 feat: nix-c-raw: Generate value api bindings
(cherry picked from commit 3c75dea63233670863f30547f90dd71498d547b0)
2025-09-30 18:58:26 +02:00
..
include feat: nix-c-raw: Generate value api bindings 2025-09-30 18:58:26 +02:00
src feat: Add crate nix-c-raw 2025-09-30 18:19:39 +02:00
build.rs feat: nix-c-raw: Generate value api bindings 2025-09-30 18:58:26 +02:00
Cargo.toml feat: Add crate nix-c-raw 2025-09-30 18:19:39 +02:00
README.md feat: Add crate nix-c-raw 2025-09-30 18:19:39 +02:00

nix-c-raw

This crate contains generated bindings for the Nix C API. You should not have to use this crate directly, and so you should probably not add it to your dependencies. Instead, use the nix-util, nix-store and nix-expr crates, which should be sufficient.

Design

Rust bindgen currently does not allow "layered" libraries to be split into separate crates. For example, the expr crate would have all-new types that are distinct and incompatible with the store crate.

Ideally bindgen will support reusing already generated modules, and we could move the code generation into the appropriate crates, so that the system dependencies of each crate become accurate.