So it seems noone is really trying to offer a defense of the current BEAM packages set. I will open an issue on nixos to get rid of it and update documentation.
@hkochev and @manveru thank you so much, lot of interesting stuff in these tools. It seems to me that the best direction for the “2nix” tools needs more debate and work. I will ping @Ankhers again for his work and i would encourage everyone to offer options.
The options I see so far are
- Use an escript that take the
.lock
and output adeps.nix
to import by the user - Generate a temporary JSON from mix.lock through a small escript and then use it to generate fetchURL and fetchGit calls on the fly.
1 may be the easier to produce right now, as it can be build easily, but it asks the user to rerun the script everytime they change the mix.lock.
2 integrate really nicely into the normal nix packaging, but it needs bootstrapping and may be a bit more opaque.
In the meantime, we could offer something like Go, and use the non sandbox classic “getting deps” of the tooling in the build
tools. I am not sure it would provide a lot of advantage, as the users are already used to doing it by themselves right now.
Does anyone have ideas ?