Skip to content

Conversation

Ericson2314
Copy link
Member

@Ericson2314 Ericson2314 commented Sep 3, 2025

Motivation

Context

Depends on #13865
Depends on #13907


Add 👍 to pull requests you find important.

The Nix maintainer team uses a GitHub project board to schedule and track reviews.

@github-actions github-actions bot added the c api Nix as a C library with a stable interface label Sep 3, 2025

StorePath * nix_derivation_calc_path(nix_c_context * context, Store * store, Derivation * derivation);

StorePath * nix_add_derivation(nix_c_context * context, Store * store, Derivation * derivation);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Docs missing.

@Ericson2314 Ericson2314 force-pushed the derivation-builder-ffi branch 3 times, most recently from d31c3bd to 304cc0d Compare September 3, 2025 22:37
@edolstra
Copy link
Member

edolstra commented Sep 4, 2025

Not really in favor of this. Contrary to the store/eval APIs, this is extremely Nix-internal, so we would be committing to having to maintain a stable API for something that has never been stable.

@Ericson2314 Ericson2314 force-pushed the derivation-builder-ffi branch from 304cc0d to 3006124 Compare September 15, 2025 17:14
It really doesn't belong in `DerivationBuilder`, so long as all
derivaiton builders are local. It belongs with the logic that decides
hook vs no hook.

Also, it was the only thing throwing `BuildError` from `startBuilder`,
so we can now remove the `try...catch` around that.
…possible

This is for FFI: we can make a `StoreDirConfig` with FFI, but we can't
realistically make a `Store` that way.
The hope is make `DerivationBuilder` eaiser to use with much less of
libnixstore.
@Ericson2314 Ericson2314 force-pushed the derivation-builder-ffi branch from 3006124 to 74d2354 Compare September 17, 2025 14:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c api Nix as a C library with a stable interface
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants