Skip to content
New issue

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

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

Already on GitHub? # to your account

intial draft NixOS depext support #5942

Closed
wants to merge 1 commit into from

Conversation

RyanGibb
Copy link
Contributor

@RyanGibb RyanGibb commented May 1, 2024

This addresses #5124 and stems from conversations in #5332.

This is an initial draft to get a conversation started.

Nix's declarative deployment model doesn't match the semantics of the other package managers opam invokes, so it requires some special treatment to be supported.

From conversations on #5332 the most flexible approach is to create a shell.nix and allow the user to decide how to provide the dependencies, such as invoking nix-shell.

This has some limitations, like if the shell is destroyed, and the packages are garbage collected, things will break. For more permanent deployment https://github.com/tweag/opam-nix (or others) can be used to create Nix derivations for opam projects. But this should be sufficient to get depexts on NixOS working for a development environment using an opam switch.

This could possibly also be adapted for Guix.

@kit-ty-kate kit-ty-kate added the PR: WIP Not for merge at this stage label May 2, 2024
@RyanGibb
Copy link
Contributor Author

I'm going to close this in favour of creating a Nix shell like environment which Opam can set the environment variables for: https://github.com/RyanGibb/nix.opam

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
AREA: DEPEXTS PR: WIP Not for merge at this stage
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants