Hi David, On 2018-12-08 14:45, David Smith wrote: > I'm trying to get a nix shell environment working which has chicken with > stone packages available. However the project is not a chicken project, it > just needs the compiler to be available with the packages. I tried to use > an eggDerivation as described in > https://nixos.org/nix-dev/2015-April/016869.html however it requires a src > attribute. Since this is not a chicken project the are no chicken source > files (they are generated by something else). How can I build a chicken > environment with the packages I need available with nix shell?
I'm not totally sure what you mean so apologies in advance if I misunderstand, but the "src" attribute doesn't need to specify local files but typically uses a helper like `fetchurl` instead. For egg dependencies, you can use `fetchegg`. So, for example, to set up a shell that has CHICKEN and the matchable extension available, you could put the following in ./shell.nix: with import <nixpkgs> {}; let matchable = eggDerivation { name = "matchable-1.0"; src = fetchegg { name = "matchable"; version = "1.0"; sha256 = "01vy2ppq3sq0wirvsvl3dh0bwa5jqs1i6rdjdd7pnwj4nncxd1ga"; }; }; in stdenv.mkDerivation { name = "chicken-shell"; buildInputs = [ chicken matchable ]; } With that in place, running `nix-shell` will give you a shell with csc, csi, etc. available and the matchable extension installed. Is that what you're after? Evan _______________________________________________ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users