[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-users] Nix shell with a non chicken project
From: |
Evan Hanson |
Subject: |
Re: [Chicken-users] Nix shell with a non chicken project |
Date: |
Mon, 14 Jan 2019 11:05:40 +1300 |
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
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Chicken-users] Nix shell with a non chicken project,
Evan Hanson <=