nixide/rust/nix-c-raw
Robert Hensing 9213c9a5a0 feat: Make Cargo.toml source locations explicit
This allows cargo metadata to operate on it without adding the
source files to the build. (A choice which will save a few rebuilds
of the manual)

(cherry picked from commit 1779295f3e13cc15f8422d52a3753bb927ac8fa7)
2025-10-04 02:31:16 +02:00
..
include feat: Add nix-expr library, update nix 2025-09-30 19:06:17 +02:00
src feat: Add crate nix-c-raw 2025-09-30 18:19:39 +02:00
build.rs bindgen strip nix_ prefix 2025-10-04 02:30:46 +02:00
Cargo.toml feat: Make Cargo.toml source locations explicit 2025-10-04 02:31:16 +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.