1. 21
  1. 4

    I already left a comment on the post when this was first posted. You should read the comments, there’s a lot of them, and they’re good.

    1. 1

      I saw quite a few “just use Nix” comments. Nix seems very interesting, if a little unapproachable.

      Has any language decided to use Nix as part of its native build pipeline/recommended package manager?

      Anyone using Nix to build Go1 code?

      1. Go is hard enough to search for (kludge by searching for “golang”), but Nix is almost worse, because of all the usages of *nix on the internets.
      1. 5

        I came across this post earlier today about using Nix in place of virtualenv for setting up isolated Python environments. It’s also worth noting that there’s a project called Guix which swaps out the nix expression language for Guile scheme. There seems to be a fair amount of cross-pollination happening between Nix and Haskell’s Cabal, too, but a Haskeller would be able to speak to that better.

        1. 3

          I use Nix to build my pet Go projects. Go packaging in Nix is under work currently. You can already use it if you are confident with Nix. Example here: https://github.com/CiotoFlow/goagainst/blob/master/default.nix

          1. 2

            I’ve been considering using Nix in Dylan. One issue that we see is the lack of Windows support. There are a few other things that might be difficult as well, like establishing a good out-of-the-box experience for someone who doesn’t already have Nix installed.

            We’re in the early stages of thinking about this though and haven’t done any prototyping yet.

            Edit: I’d love to work with someone on this if anyone is interested in even talking about some of what is involved. I only know Nix from a high level. Chris Double packaged Dylan for Nix, so that part is already there.

            1. 3

              Lack of Windows was a killer for us in Rust as well, as it’s a hard requirement.

            2. 2

              I attempted this for Erlang, found it required to be way to hacky to pull it off and ditched it.