Haskell-Things / ImplicitCAD

A math-inspired CAD program in haskell. CSG, bevels, and shells; 2D & 3D geometry; 2D gcode generation...
https://implicitcad.org/
GNU Affero General Public License v3.0
1.33k stars 141 forks source link

nix-shell is broken on newest stable NixOS with freshly cloned repo #402

Closed jaredpmclaughlin closed 2 years ago

jaredpmclaughlin commented 2 years ago

I am a first time NixOS user (day 2) attempting to build ImplicitCAD from the repo. I installed git, cloned ImplicitCAD and attempted to use the nix-shell. Here is the error I got:

image

thiskappaisgrey commented 2 years ago

Usually with nix, Haskell packages gets broken from time to time, due to infrastructure issues. Anyways, you can try to play around with https://github.com/nmattia/niv and switch your nixpkgs version to where a package is NOT broken. (if you look in the docs for niv, you'll see that you need to change pkgs ? import <nixpkgs> {}, to pkgs ? (import nix/sources.nix).nixpkgs {} in default.nix and shell.nix ). Then you can do niv init -b=release-21.05 in the root repo, and see if the haskell packages required for building implicitcad is broken there(I haven't built implicitcad in a while and struggled with the haskell nix infrastructure when I was starting out too.. still do actually). Hope that helps. If not you can try using a default.nix and shell.nix from https://input-output-hk.github.io/haskell.nix/ but that's a bit more complicated.

sorki commented 2 years ago

So the underlying issue was fixed and I plan to revisit this and pin nixpkgs to a working revision of unstable so it doesn't break.

haskell.nix would work for us as well and we might want to switch if we decide to e.g. do cross builds for other platforms.