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

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in 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