1{ lib, stdenv, fetchurl }:
2
3stdenv.mkDerivation rec {
4 pname = "scheme48";
5 version = "1.9.2";
6
7 src = fetchurl {
8 url = "https://s48.org/${version}/scheme48-${version}.tgz";
9 sha256 = "1x4xfm3lyz2piqcw1h01vbs1iq89zq7wrsfjgh3fxnlm1slj2jcw";
10 };
11
12 # Make more reproducible by removing build user and date.
13 postPatch = ''
14 substituteInPlace build/build-usual-image --replace '"(made by $USER on $date)"' '""'
15 '';
16
17 # Silence warnings related to use of implicitly declared library functions and implicit ints.
18 # TODO: Remove and/or fix with patches the next time this package is updated.
19 env = lib.optionalAttrs stdenv.cc.isClang {
20 NIX_CFLAGS_COMPILE = toString [
21 "-Wno-error=implicit-function-declaration"
22 "-Wno-error=implicit-int"
23 ];
24 };
25
26 meta = with lib; {
27 homepage = "https://s48.org/";
28 description = "Scheme 48 interpreter for R5RS";
29 platforms = platforms.unix;
30 license = licenses.bsd3;
31 maintainers = [ maintainers.siraben ];
32 };
33}