Loading pkgs/development/interpreters/racket/default.nix +140 −90 Original line number Diff line number Diff line { lib, stdenv, fetchurl, makeFontsConf , cacert , cairo, coreutils, fontconfig, freefont_ttf , glib, gmp , gtk3 , glibcLocales , libedit, libffi , libiconv , libGL , libGLU , libjpeg , ncurses , libpng, libtool, mpfr, openssl, pango, poppler , readline, sqlite , disableDocs ? false , CoreFoundation , gsettings-desktop-schemas , wrapGAppsHook3 { lib, stdenv, fetchurl, makeFontsConf, cacert, cairo, coreutils, fontconfig, freefont_ttf, glib, gmp, gtk3, glibcLocales, libedit, libffi, libiconv, libGL, libGLU, libjpeg, ncurses, libpng, libtool, mpfr, openssl, pango, poppler, readline, sqlite, disableDocs ? false, CoreFoundation, gsettings-desktop-schemas, wrapGAppsHook3, }: let fontsConf = makeFontsConf { fontDirectories = [ freefont_ttf ]; }; fontsConf = makeFontsConf { fontDirectories = [ freefont_ttf ]; }; libPath = lib.makeLibraryPath ([ libPath = lib.makeLibraryPath ( [ cairo fontconfig glib Loading @@ -41,25 +55,29 @@ let poppler readline sqlite ] ++ lib.optionals (!stdenv.isDarwin) [ ] ++ lib.optionals (!stdenv.isDarwin) [ libGL libGLU ]); ] ); in stdenv.mkDerivation rec { pname = "racket"; version = "8.12"; # always change at once with ./minimal.nix version = "8.13"; # always change at once with ./minimal.nix src = (lib.makeOverridable ({ name, hash }: src = (lib.makeOverridable ( { name, hash }: fetchurl { url = "https://mirror.racket-lang.org/installers/${version}/${name}-src.tgz"; inherit hash; } )) { )) { name = "${pname}-${version}"; hash = "sha256-or26nirm5dGhg2S8to99BFOOSS2Oksn7Yb0y2L5b69c="; hash = "sha256-AB4EkgRAtlic9i1Wd9GMwv9q6Puvd+Y7iozyCJBoX7w="; }; FONTCONFIG_FILE = fontsConf; Loading @@ -68,10 +86,25 @@ stdenv.mkDerivation rec { (lib.optionalString (stdenv.cc.isGNU && !stdenv.isDarwin) "-lgcc_s") ]; nativeBuildInputs = [ cacert wrapGAppsHook3 ]; nativeBuildInputs = [ cacert wrapGAppsHook3 ]; buildInputs = [ fontconfig libffi libtool sqlite gsettings-desktop-schemas gtk3 ncurses ] ++ lib.optionals stdenv.isDarwin [ libiconv CoreFoundation ]; buildInputs = [ fontconfig libffi libtool sqlite gsettings-desktop-schemas gtk3 ncurses ] ++ lib.optionals stdenv.isDarwin [ libiconv CoreFoundation ]; patches = [ # Hardcode variant detection because we wrap the Racket binary making it Loading @@ -87,7 +120,8 @@ stdenv.mkDerivation rec { ./force-remove-codesign-then-add.patch ]; preConfigure = '' preConfigure = '' unset AR for f in src/lt/configure src/cs/c/configure src/bc/src/string.c; do substituteInPlace "$f" \ Loading @@ -106,13 +140,14 @@ stdenv.mkDerivation rec { mkdir src/build cd src/build '' + lib.optionalString stdenv.isLinux '' '' + lib.optionalString stdenv.isLinux '' gappsWrapperArgs+=("--prefix" "LD_LIBRARY_PATH" ":" ${libPath}) gappsWrapperArgs+=("--set" "LOCALE_ARCHIVE" "${glibcLocales}/lib/locale/locale-archive") '' + lib.optionalString stdenv.isDarwin '' gappsWrapperArgs+=("--prefix" "DYLD_LIBRARY_PATH" ":" ${libPath}) '' ; + lib.optionalString stdenv.isDarwin '' gappsWrapperArgs+=("--prefix" "DYLD_LIBRARY_PATH" ":" ${libPath}) ''; preBuild = lib.optionalString stdenv.isDarwin '' # Cannot set DYLD_LIBRARY_PATH as an attr of this drv, becasue dynamic Loading @@ -129,9 +164,16 @@ stdenv.mkDerivation rec { ''; shared = if stdenv.isDarwin then "dylib" else "shared"; configureFlags = [ "--enable-${shared}" "--enable-lt=${libtool}/bin/libtool" ] configureFlags = [ "--enable-${shared}" "--enable-lt=${libtool}/bin/libtool" ] ++ lib.optionals disableDocs [ "--disable-docs" ] ++ lib.optionals stdenv.isDarwin [ "--disable-strip" "--enable-xonx" ]; ++ lib.optionals stdenv.isDarwin [ "--disable-strip" "--enable-xonx" ]; configureScript = "../configure"; Loading @@ -152,8 +194,16 @@ stdenv.mkDerivation rec { ''; homepage = "https://racket-lang.org/"; changelog = "https://github.com/racket/racket/releases/tag/v${version}"; license = with licenses; [ asl20 /* or */ mit ]; license = with licenses; [ asl20 # or mit ]; maintainers = with maintainers; [ vrthra ]; platforms = [ "x86_64-darwin" "x86_64-linux" "aarch64-linux" "aarch64-darwin" ]; platforms = [ "x86_64-darwin" "x86_64-linux" "aarch64-linux" "aarch64-darwin" ]; }; } pkgs/development/interpreters/racket/minimal.nix +12 −7 Original line number Diff line number Diff line { racket }: { racket }: racket.overrideAttrs (oldAttrs: rec { pname = "racket-minimal"; version = oldAttrs.version; src = oldAttrs.src.override { name = "${pname}-${version}"; hash = "sha256-ZbE5I2dnPY0GamerTFPFWz53+V1Xxhtx3AVp2KpF7vw="; hash = "sha256-9fotAmBj72eRl+n4Paigs+PQs8BezUqWLEzjI6RBYzc="; }; meta = oldAttrs.meta // { description = "Racket without bundled packages, such as Dr. Racket"; longDescription = ''The essential package racket-libs is included, longDescription = '' The essential package racket-libs is included, as well as libraries that live in collections. In particular, raco and the pkg library are still bundled. ''; platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; }; }) pkgs/development/interpreters/racket/racket_7_9.nix +78 −39 Original line number Diff line number Diff line { lib, stdenv, fetchurl, makeFontsConf , cacert , cairo, coreutils, fontconfig, freefont_ttf , glib, gmp , gtk3 , libedit, libffi , libiconv , libGL , libGLU , libjpeg , libpng, libtool, mpfr, openssl, pango, poppler , readline, sqlite , disableDocs ? false , CoreFoundation , gsettings-desktop-schemas , wrapGAppsHook3 { lib, stdenv, fetchurl, makeFontsConf, cacert, cairo, coreutils, fontconfig, freefont_ttf, glib, gmp, gtk3, libedit, libffi, libiconv, libGL, libGLU, libjpeg, libpng, libtool, mpfr, openssl, pango, poppler, readline, sqlite, disableDocs ? false, CoreFoundation, gsettings-desktop-schemas, wrapGAppsHook3, }: let fontsConf = makeFontsConf { fontDirectories = [ freefont_ttf ]; }; fontsConf = makeFontsConf { fontDirectories = [ freefont_ttf ]; }; libPath = lib.makeLibraryPath [ cairo Loading @@ -41,19 +54,21 @@ let readline sqlite ]; in stdenv.mkDerivation rec { pname = "racket"; version = "7.9"; # always change at once with ./minimal.nix src = (lib.makeOverridable ({ name, sha256 }: src = (lib.makeOverridable ( { name, sha256 }: fetchurl { url = "https://mirror.racket-lang.org/installers/${version}/${name}-src.tgz"; inherit sha256; } )) { )) { name = "${pname}-${version}"; sha256 = "0gmp2ahmfd97nn9bwpfx9lznjmjkd042slnrrbdmyh59cqh98y2m"; }; Loading @@ -65,10 +80,24 @@ stdenv.mkDerivation rec { (lib.optionalString stdenv.isDarwin "-framework CoreFoundation") ]; nativeBuildInputs = [ cacert wrapGAppsHook3 ]; nativeBuildInputs = [ cacert wrapGAppsHook3 ]; buildInputs = [ fontconfig libffi libtool sqlite gsettings-desktop-schemas gtk3 ] ++ lib.optionals stdenv.isDarwin [ libiconv CoreFoundation ]; buildInputs = [ fontconfig libffi libtool sqlite gsettings-desktop-schemas gtk3 ] ++ lib.optionals stdenv.isDarwin [ libiconv CoreFoundation ]; preConfigure = '' unset AR Loading @@ -82,7 +111,11 @@ stdenv.mkDerivation rec { ''; shared = if stdenv.isDarwin then "dylib" else "shared"; configureFlags = [ "--enable-${shared}" "--enable-lt=${libtool}/bin/libtool" ] configureFlags = [ "--enable-${shared}" "--enable-lt=${libtool}/bin/libtool" ] ++ lib.optionals disableDocs [ "--disable-docs" ] ++ lib.optionals stdenv.isDarwin [ "--enable-xonx" ]; Loading @@ -90,7 +123,6 @@ stdenv.mkDerivation rec { enableParallelBuilding = false; meta = with lib; { description = "A programmable programming language"; longDescription = '' Loading @@ -103,9 +135,16 @@ stdenv.mkDerivation rec { GUIs and charts. ''; homepage = "https://racket-lang.org/"; license = with licenses; [ asl20 /* or */ mit ]; license = with licenses; [ asl20 # or mit ]; maintainers = with maintainers; [ vrthra ]; platforms = [ "x86_64-darwin" "x86_64-linux" "aarch64-linux" ]; platforms = [ "x86_64-darwin" "x86_64-linux" "aarch64-linux" ]; broken = stdenv.isDarwin; # No support yet for setting FFI lookup path }; } Loading
pkgs/development/interpreters/racket/default.nix +140 −90 Original line number Diff line number Diff line { lib, stdenv, fetchurl, makeFontsConf , cacert , cairo, coreutils, fontconfig, freefont_ttf , glib, gmp , gtk3 , glibcLocales , libedit, libffi , libiconv , libGL , libGLU , libjpeg , ncurses , libpng, libtool, mpfr, openssl, pango, poppler , readline, sqlite , disableDocs ? false , CoreFoundation , gsettings-desktop-schemas , wrapGAppsHook3 { lib, stdenv, fetchurl, makeFontsConf, cacert, cairo, coreutils, fontconfig, freefont_ttf, glib, gmp, gtk3, glibcLocales, libedit, libffi, libiconv, libGL, libGLU, libjpeg, ncurses, libpng, libtool, mpfr, openssl, pango, poppler, readline, sqlite, disableDocs ? false, CoreFoundation, gsettings-desktop-schemas, wrapGAppsHook3, }: let fontsConf = makeFontsConf { fontDirectories = [ freefont_ttf ]; }; fontsConf = makeFontsConf { fontDirectories = [ freefont_ttf ]; }; libPath = lib.makeLibraryPath ([ libPath = lib.makeLibraryPath ( [ cairo fontconfig glib Loading @@ -41,25 +55,29 @@ let poppler readline sqlite ] ++ lib.optionals (!stdenv.isDarwin) [ ] ++ lib.optionals (!stdenv.isDarwin) [ libGL libGLU ]); ] ); in stdenv.mkDerivation rec { pname = "racket"; version = "8.12"; # always change at once with ./minimal.nix version = "8.13"; # always change at once with ./minimal.nix src = (lib.makeOverridable ({ name, hash }: src = (lib.makeOverridable ( { name, hash }: fetchurl { url = "https://mirror.racket-lang.org/installers/${version}/${name}-src.tgz"; inherit hash; } )) { )) { name = "${pname}-${version}"; hash = "sha256-or26nirm5dGhg2S8to99BFOOSS2Oksn7Yb0y2L5b69c="; hash = "sha256-AB4EkgRAtlic9i1Wd9GMwv9q6Puvd+Y7iozyCJBoX7w="; }; FONTCONFIG_FILE = fontsConf; Loading @@ -68,10 +86,25 @@ stdenv.mkDerivation rec { (lib.optionalString (stdenv.cc.isGNU && !stdenv.isDarwin) "-lgcc_s") ]; nativeBuildInputs = [ cacert wrapGAppsHook3 ]; nativeBuildInputs = [ cacert wrapGAppsHook3 ]; buildInputs = [ fontconfig libffi libtool sqlite gsettings-desktop-schemas gtk3 ncurses ] ++ lib.optionals stdenv.isDarwin [ libiconv CoreFoundation ]; buildInputs = [ fontconfig libffi libtool sqlite gsettings-desktop-schemas gtk3 ncurses ] ++ lib.optionals stdenv.isDarwin [ libiconv CoreFoundation ]; patches = [ # Hardcode variant detection because we wrap the Racket binary making it Loading @@ -87,7 +120,8 @@ stdenv.mkDerivation rec { ./force-remove-codesign-then-add.patch ]; preConfigure = '' preConfigure = '' unset AR for f in src/lt/configure src/cs/c/configure src/bc/src/string.c; do substituteInPlace "$f" \ Loading @@ -106,13 +140,14 @@ stdenv.mkDerivation rec { mkdir src/build cd src/build '' + lib.optionalString stdenv.isLinux '' '' + lib.optionalString stdenv.isLinux '' gappsWrapperArgs+=("--prefix" "LD_LIBRARY_PATH" ":" ${libPath}) gappsWrapperArgs+=("--set" "LOCALE_ARCHIVE" "${glibcLocales}/lib/locale/locale-archive") '' + lib.optionalString stdenv.isDarwin '' gappsWrapperArgs+=("--prefix" "DYLD_LIBRARY_PATH" ":" ${libPath}) '' ; + lib.optionalString stdenv.isDarwin '' gappsWrapperArgs+=("--prefix" "DYLD_LIBRARY_PATH" ":" ${libPath}) ''; preBuild = lib.optionalString stdenv.isDarwin '' # Cannot set DYLD_LIBRARY_PATH as an attr of this drv, becasue dynamic Loading @@ -129,9 +164,16 @@ stdenv.mkDerivation rec { ''; shared = if stdenv.isDarwin then "dylib" else "shared"; configureFlags = [ "--enable-${shared}" "--enable-lt=${libtool}/bin/libtool" ] configureFlags = [ "--enable-${shared}" "--enable-lt=${libtool}/bin/libtool" ] ++ lib.optionals disableDocs [ "--disable-docs" ] ++ lib.optionals stdenv.isDarwin [ "--disable-strip" "--enable-xonx" ]; ++ lib.optionals stdenv.isDarwin [ "--disable-strip" "--enable-xonx" ]; configureScript = "../configure"; Loading @@ -152,8 +194,16 @@ stdenv.mkDerivation rec { ''; homepage = "https://racket-lang.org/"; changelog = "https://github.com/racket/racket/releases/tag/v${version}"; license = with licenses; [ asl20 /* or */ mit ]; license = with licenses; [ asl20 # or mit ]; maintainers = with maintainers; [ vrthra ]; platforms = [ "x86_64-darwin" "x86_64-linux" "aarch64-linux" "aarch64-darwin" ]; platforms = [ "x86_64-darwin" "x86_64-linux" "aarch64-linux" "aarch64-darwin" ]; }; }
pkgs/development/interpreters/racket/minimal.nix +12 −7 Original line number Diff line number Diff line { racket }: { racket }: racket.overrideAttrs (oldAttrs: rec { pname = "racket-minimal"; version = oldAttrs.version; src = oldAttrs.src.override { name = "${pname}-${version}"; hash = "sha256-ZbE5I2dnPY0GamerTFPFWz53+V1Xxhtx3AVp2KpF7vw="; hash = "sha256-9fotAmBj72eRl+n4Paigs+PQs8BezUqWLEzjI6RBYzc="; }; meta = oldAttrs.meta // { description = "Racket without bundled packages, such as Dr. Racket"; longDescription = ''The essential package racket-libs is included, longDescription = '' The essential package racket-libs is included, as well as libraries that live in collections. In particular, raco and the pkg library are still bundled. ''; platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; }; })
pkgs/development/interpreters/racket/racket_7_9.nix +78 −39 Original line number Diff line number Diff line { lib, stdenv, fetchurl, makeFontsConf , cacert , cairo, coreutils, fontconfig, freefont_ttf , glib, gmp , gtk3 , libedit, libffi , libiconv , libGL , libGLU , libjpeg , libpng, libtool, mpfr, openssl, pango, poppler , readline, sqlite , disableDocs ? false , CoreFoundation , gsettings-desktop-schemas , wrapGAppsHook3 { lib, stdenv, fetchurl, makeFontsConf, cacert, cairo, coreutils, fontconfig, freefont_ttf, glib, gmp, gtk3, libedit, libffi, libiconv, libGL, libGLU, libjpeg, libpng, libtool, mpfr, openssl, pango, poppler, readline, sqlite, disableDocs ? false, CoreFoundation, gsettings-desktop-schemas, wrapGAppsHook3, }: let fontsConf = makeFontsConf { fontDirectories = [ freefont_ttf ]; }; fontsConf = makeFontsConf { fontDirectories = [ freefont_ttf ]; }; libPath = lib.makeLibraryPath [ cairo Loading @@ -41,19 +54,21 @@ let readline sqlite ]; in stdenv.mkDerivation rec { pname = "racket"; version = "7.9"; # always change at once with ./minimal.nix src = (lib.makeOverridable ({ name, sha256 }: src = (lib.makeOverridable ( { name, sha256 }: fetchurl { url = "https://mirror.racket-lang.org/installers/${version}/${name}-src.tgz"; inherit sha256; } )) { )) { name = "${pname}-${version}"; sha256 = "0gmp2ahmfd97nn9bwpfx9lznjmjkd042slnrrbdmyh59cqh98y2m"; }; Loading @@ -65,10 +80,24 @@ stdenv.mkDerivation rec { (lib.optionalString stdenv.isDarwin "-framework CoreFoundation") ]; nativeBuildInputs = [ cacert wrapGAppsHook3 ]; nativeBuildInputs = [ cacert wrapGAppsHook3 ]; buildInputs = [ fontconfig libffi libtool sqlite gsettings-desktop-schemas gtk3 ] ++ lib.optionals stdenv.isDarwin [ libiconv CoreFoundation ]; buildInputs = [ fontconfig libffi libtool sqlite gsettings-desktop-schemas gtk3 ] ++ lib.optionals stdenv.isDarwin [ libiconv CoreFoundation ]; preConfigure = '' unset AR Loading @@ -82,7 +111,11 @@ stdenv.mkDerivation rec { ''; shared = if stdenv.isDarwin then "dylib" else "shared"; configureFlags = [ "--enable-${shared}" "--enable-lt=${libtool}/bin/libtool" ] configureFlags = [ "--enable-${shared}" "--enable-lt=${libtool}/bin/libtool" ] ++ lib.optionals disableDocs [ "--disable-docs" ] ++ lib.optionals stdenv.isDarwin [ "--enable-xonx" ]; Loading @@ -90,7 +123,6 @@ stdenv.mkDerivation rec { enableParallelBuilding = false; meta = with lib; { description = "A programmable programming language"; longDescription = '' Loading @@ -103,9 +135,16 @@ stdenv.mkDerivation rec { GUIs and charts. ''; homepage = "https://racket-lang.org/"; license = with licenses; [ asl20 /* or */ mit ]; license = with licenses; [ asl20 # or mit ]; maintainers = with maintainers; [ vrthra ]; platforms = [ "x86_64-darwin" "x86_64-linux" "aarch64-linux" ]; platforms = [ "x86_64-darwin" "x86_64-linux" "aarch64-linux" ]; broken = stdenv.isDarwin; # No support yet for setting FFI lookup path }; }