lol

racket_7_9: init at 7.9

+115
+111
pkgs/development/interpreters/racket/racket_7_9.nix
··· 1 + { lib, stdenv, fetchurl, makeFontsConf 2 + , cacert 3 + , cairo, coreutils, fontconfig, freefont_ttf 4 + , glib, gmp 5 + , gtk3 6 + , libedit, libffi 7 + , libiconv 8 + , libGL 9 + , libGLU 10 + , libjpeg 11 + , libpng, libtool, mpfr, openssl, pango, poppler 12 + , readline, sqlite 13 + , disableDocs ? false 14 + , CoreFoundation 15 + , gsettings-desktop-schemas 16 + , wrapGAppsHook 17 + }: 18 + 19 + let 20 + 21 + fontsConf = makeFontsConf { 22 + fontDirectories = [ freefont_ttf ]; 23 + }; 24 + 25 + libPath = lib.makeLibraryPath [ 26 + cairo 27 + fontconfig 28 + glib 29 + gmp 30 + gtk3 31 + gsettings-desktop-schemas 32 + libedit 33 + libGL 34 + libGLU 35 + libjpeg 36 + libpng 37 + mpfr 38 + openssl 39 + pango 40 + poppler 41 + readline 42 + sqlite 43 + ]; 44 + 45 + in 46 + 47 + stdenv.mkDerivation rec { 48 + pname = "racket"; 49 + version = "7.9"; # always change at once with ./minimal.nix 50 + 51 + src = (lib.makeOverridable ({ name, sha256 }: 52 + fetchurl { 53 + url = "https://mirror.racket-lang.org/installers/${version}/${name}-src.tgz"; 54 + inherit sha256; 55 + } 56 + )) { 57 + name = "${pname}-${version}"; 58 + sha256 = "0gmp2ahmfd97nn9bwpfx9lznjmjkd042slnrrbdmyh59cqh98y2m"; 59 + }; 60 + 61 + FONTCONFIG_FILE = fontsConf; 62 + LD_LIBRARY_PATH = libPath; 63 + NIX_LDFLAGS = lib.concatStringsSep " " [ 64 + (lib.optionalString (stdenv.cc.isGNU && ! stdenv.isDarwin) "-lgcc_s") 65 + (lib.optionalString stdenv.isDarwin "-framework CoreFoundation") 66 + ]; 67 + 68 + nativeBuildInputs = [ cacert wrapGAppsHook ]; 69 + 70 + buildInputs = [ fontconfig libffi libtool sqlite gsettings-desktop-schemas gtk3 ] 71 + ++ lib.optionals stdenv.isDarwin [ libiconv CoreFoundation ]; 72 + 73 + preConfigure = '' 74 + unset AR 75 + for f in src/lt/configure src/cs/c/configure src/bc/src/string.c; do 76 + substituteInPlace "$f" --replace /usr/bin/uname ${coreutils}/bin/uname 77 + done 78 + mkdir src/build 79 + cd src/build 80 + 81 + gappsWrapperArgs+=("--prefix" "LD_LIBRARY_PATH" ":" ${LD_LIBRARY_PATH}) 82 + ''; 83 + 84 + shared = if stdenv.isDarwin then "dylib" else "shared"; 85 + configureFlags = [ "--enable-${shared}" "--enable-lt=${libtool}/bin/libtool" ] 86 + ++ lib.optional disableDocs [ "--disable-docs" ] 87 + ++ lib.optional stdenv.isDarwin [ "--enable-xonx" ]; 88 + 89 + configureScript = "../configure"; 90 + 91 + enableParallelBuilding = false; 92 + 93 + 94 + meta = with lib; { 95 + description = "A programmable programming language"; 96 + longDescription = '' 97 + Racket is a full-spectrum programming language. It goes beyond 98 + Lisp and Scheme with dialects that support objects, types, 99 + laziness, and more. Racket enables programmers to link 100 + components written in different dialects, and it empowers 101 + programmers to create new, project-specific dialects. Racket's 102 + libraries support applications from web servers and databases to 103 + GUIs and charts. 104 + ''; 105 + homepage = "https://racket-lang.org/"; 106 + license = with licenses; [ asl20 /* or */ mit ]; 107 + maintainers = with maintainers; [ kkallio henrytill vrthra ]; 108 + platforms = [ "x86_64-darwin" "x86_64-linux" "aarch64-linux" ]; 109 + broken = stdenv.isDarwin; # No support yet for setting FFI lookup path 110 + }; 111 + }
+4
pkgs/top-level/all-packages.nix
··· 13611 13611 stdenv = if stdenv.isDarwin then stdenv else gcc7Stdenv; 13612 13612 inherit (darwin.apple_sdk.frameworks) CoreFoundation; 13613 13613 }; 13614 + racket_7_9 = callPackage ../development/interpreters/racket/racket_7_9.nix { 13615 + stdenv = if stdenv.isDarwin then stdenv else gcc7Stdenv; 13616 + inherit (darwin.apple_sdk.frameworks) CoreFoundation; 13617 + }; 13614 13618 racket-minimal = callPackage ../development/interpreters/racket/minimal.nix { }; 13615 13619 13616 13620 rakudo = callPackage ../development/interpreters/rakudo {};