shell.nix for CHICKEN 5 added by sjamaan on Sun Sep 15 09:52:10 2024

{ pkgs ? import (builtins.fetchTarball {
  url = "https://github.com/NixOS/nixpkgs/archive/3c8a5fa9a699d6910bbe70490918f1a4adc1e462.tar.gz";
  sha256 = "0rfvz9nnsb10vv70k71di3asbap056pz1sg0si72xkmg5a66j2lc";
}) {} }:

# Use tarball, instead of git, to speed up the store index!
let
  shellDotNixDir = builtins.toString ./.;

  shell = pkgs.mkShell {
    buildInputs = [
      # Needed to build CHICKEN:
      pkgs.gnumake
      pkgs.gcc
      pkgs.gdb
      pkgs.tinycc
      pkgs.clang
      # for static linking (but this breaks compiling CHICKEN somehow):
      #pkgs.glibc.static
  
      # Extra packages for eggs I'm going to build:
      pkgs.openssl
      pkgs.postgresql_13
      pkgs.expat
      pkgs.pkg-config
      pkgs.libyaml
      pkgs.cairo
      pkgs.SDL
      pkgs.valgrind
    ];

    shellHook = ''
      export PATH="${shellDotNixDir}/bin:$PATH"
    '';
  };
in {
  inherit shell pkgs;
}