Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add target-store and eval-store settings #10145

Open
thufschmitt opened this issue Mar 4, 2024 · 4 comments
Open

Add target-store and eval-store settings #10145

thufschmitt opened this issue Mar 4, 2024 · 4 comments
Labels
feature Feature request or proposal scheduling settings Settings, global flags, nix.conf

Comments

@thufschmitt
Copy link
Member

Is your feature request related to a problem? Please describe.

Confusion around --store like in #10119

Describe the solution you'd like

Cleanly separate the build and evaluation stores in the interface. For that

  • Promote the existing eval-store CLI option to a parameter
  • Add a new target-store parameter for the store used to build things
  • Make store set defaults for both eval- and target-

Describe alternatives you've considered

Additional context

In the longer run, we'll also want to split build-store (or build-stores) out of target-store, which would solve #6893 and give Nix the same model as Hydra.

Priorities

Add 👍 to issues you find important.

@thufschmitt thufschmitt added the feature Feature request or proposal label Mar 4, 2024
@nixos-discourse
Copy link

This issue has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/2024-03-04-nix-team-meeting-minute-130/40830/1

@roberth
Copy link
Member

roberth commented Mar 5, 2024

I think I prefer destination or output instead of target, because build and target sounds like we're doing cross compilation.

What happens to the result symlink?

@thufschmitt
Copy link
Member Author

Yup' destination is better, indeed (and more coherent with the rest of Nix)

What happens to the result symlink?

If the target store isn't a LocalFSStore, it isn't created (already the case on master)

@roberth
Copy link
Member

roberth commented Mar 5, 2024

output would imply that we don't copy the build dependencies there. It'd be equivalent to doing a build anywhere and copying only the outputs to the --output-store store.

For destination it wouldn't be as unexpected for the paths there to be a mix of actual final outputs and outputs of dependencies that were used during the build (which may not be dependencies of the requested outputs).

@roberth roberth added scheduling settings Settings, global flags, nix.conf labels Mar 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature Feature request or proposal scheduling settings Settings, global flags, nix.conf
Projects
None yet
Development

No branches or pull requests

3 participants