Is Nickel intended to eventually be a Nix (lang) alternative/replacement?

As the descriptions say, Nickel is still very “experimental”, however its genetic “close-ness” to Nix is clear. Part of me wonders, that if all goes perfectly well, if Nickel will only live in the realm of responsibility of config super-langages like Dhall, or if there is possibly a desire of Tweag-and-company to have it interop with or succeed Nix-the-languge in some way?

15 Likes

Gleaning from Figure out an adoption plan · Issue #93 · tweag/nickel · GitHub

It seems the plan very well may be to succeed Nix at some point.

4 Likes

I’m curious if it’s ready to use in our nix configs, if there’s already examples and how nice it looks.

2 Likes

Due to lack of documentation in the current nix ecosystem, a strongly typed language would save my ass

10 Likes

I think Nickel is intended to be an attractive choice for the Nix community to use in conjunction with the rest of the Nix ecosystem, including potentially to generate or replace code written in the Nix language.

It’s probably not worth playing with for use in NixOS-like module systems until the override semantics are settled.

Once it does have merge support, it might be fun to see what it feels like to write code that produces Nix derivations using NixOS-like merges instead of packages-as-functions like in Nixpkgs, or to see if it can be used to create a drop-in replacement for NixOS modules.

If Nickel can produce better error messages than Nix does and provide additional provenance information for the output of NixOS-like merges, it really would be an attractive option among languages to use with the Nix ecosystem.

12 Likes

I’m late to the party, but I couldn’t have said it better than @pxc did!

3 Likes

For anyone who was watching this thread for any updates- Overriding has been settled, though provenance is still an open question from what I understand.

However, the part that justified necroing this thread is that Nickel recently announced its release and has a prototype (alpha-quality) Nix integration being actively developed.

Edit: It appears that the Nickel-Nix project has been renamed to Organist and is scoped much more narrowly than general Nix / Nickel integration.

7 Likes