Merge branch 'master' into staging
Conflicts (simple): pkgs/development/lisp-modules/clwrapper/setup-hook.sh
This commit is contained in:
@@ -1,12 +1,12 @@
|
||||
{ stdenv, fetchurl, pkgconfig, nix, git }: let
|
||||
version = "2.0.1";
|
||||
version = "2.0.2";
|
||||
in stdenv.mkDerivation {
|
||||
name = "nix-exec-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/shlevy/nix-exec/releases/download/v${version}/nix-exec-${version}.tar.xz";
|
||||
|
||||
sha256 = "1iyz19c15yw0p5lgfbfh8arja2cy3apx5697cm671j4qzjkws32p";
|
||||
sha256 = "0vgvvj0qywx9a1ihc8nddc3fcw69dinf136spw4i7qz4bszbs9j5";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig nix git ];
|
||||
|
||||
@@ -95,11 +95,12 @@ let
|
||||
--set LIBRARY_PATH "${LIBRARY_PATH}"
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
passthru = rec {
|
||||
inherit zlibSupport libPrefix;
|
||||
executable = "pypy";
|
||||
isPypy = true;
|
||||
buildEnv = callPackage ../../python/wrapper.nix { python = self; };
|
||||
interpreter = "${self}/bin/${executable}";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
@@ -93,6 +93,7 @@ let
|
||||
libPrefix = "python${majorVersion}";
|
||||
executable = libPrefix;
|
||||
sitePackages = "lib/${libPrefix}/site-packages";
|
||||
interpreter = "${self}/bin/${executable}";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
@@ -101,6 +101,7 @@ let
|
||||
libPrefix = "python${majorVersion}";
|
||||
executable = libPrefix;
|
||||
sitePackages = "lib/${libPrefix}/site-packages";
|
||||
interpreter = "${self}/bin/${executable}";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
@@ -80,6 +80,7 @@ stdenv.mkDerivation {
|
||||
isPy32 = true;
|
||||
is_py3k = true; # deprecated
|
||||
sitePackages = "lib/${libPrefix}/site-packages";
|
||||
interpreter = "${self}/bin/${executable}";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
@@ -81,6 +81,7 @@ stdenv.mkDerivation {
|
||||
isPy33 = true;
|
||||
is_py3k = true; # deprecated
|
||||
sitePackages = "lib/${libPrefix}/site-packages";
|
||||
interpreter = "${self}/bin/${executable}";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
@@ -83,6 +83,7 @@ stdenv.mkDerivation {
|
||||
isPy34 = true;
|
||||
is_py3k = true; # deprecated
|
||||
sitePackages = "lib/${libPrefix}/site-packages";
|
||||
interpreter = "${self}/bin/${executable}";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
@@ -1,38 +1,47 @@
|
||||
{ stdenv, fetchurl, cairo, file, pango, glib, gtk
|
||||
, which, libtool, makeWrapper, libjpeg, libpng
|
||||
, fontconfig, liberation_ttf, sqlite, openssl } :
|
||||
{ stdenv, fetchurl, cairo, file, fontconfig, glib, gtk, freefont_ttf
|
||||
, libjpeg, libpng, libtool, makeWrapper, openssl, pango, sqlite, which } :
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "racket";
|
||||
version = "6.1";
|
||||
version = "6.1.1";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://mirror.racket-lang.org/installers/${version}/${name}-src.tgz";
|
||||
sha256 = "fde283bf5899bb9266ce721db44631c9bac4a4864a7c3211de413fd9503178c6";
|
||||
sha256 = "090269522d20e7a5ce85d2251a126745746ebf5e87554c05efe03f3b7173da75";
|
||||
};
|
||||
|
||||
# Various racket executables do run-time searches for these.
|
||||
ffiSharedLibs = "${glib}/lib:${cairo}/lib:${pango}/lib:${gtk}/lib:${libjpeg}/lib:${libpng}/lib:${sqlite}/lib:${openssl}/lib";
|
||||
# Various Racket executables do runtime searches for these.
|
||||
ffiSharedLibs = "${cairo}/lib:${fontconfig}/lib:${glib}/lib:${gtk}/lib:${libjpeg}/lib:"
|
||||
+ "${libpng}/lib:${openssl}/lib:${pango}/lib:${sqlite}/lib";
|
||||
|
||||
buildInputs = [ file libtool which makeWrapper fontconfig liberation_ttf sqlite ];
|
||||
buildInputs = [ file fontconfig freefont_ttf libtool makeWrapper sqlite which ];
|
||||
|
||||
preConfigure = ''
|
||||
export LD_LIBRARY_PATH=${ffiSharedLibs}:$LD_LIBRARY_PATH
|
||||
|
||||
# Chroot builds do not have access to /etc/fonts/fonts.conf, but the Racket bootstrap
|
||||
# needs a working fontconfig, so here a simple standin is used.
|
||||
# Chroot builds do not have access to /etc/fonts/fonts.conf,
|
||||
# but the Racket bootstrap needs a working fontconfig,
|
||||
# so here a simple temporary stand-in is used.
|
||||
mkdir chroot-fontconfig
|
||||
cat ${fontconfig}/etc/fonts/fonts.conf > chroot-fontconfig/fonts.conf
|
||||
sed -e 's@</fontconfig>@@' -i chroot-fontconfig/fonts.conf
|
||||
echo "<dir>${liberation_ttf}</dir>" >> chroot-fontconfig/fonts.conf
|
||||
echo "<dir>${freefont_ttf}</dir>" >> chroot-fontconfig/fonts.conf
|
||||
echo "</fontconfig>" >> chroot-fontconfig/fonts.conf
|
||||
|
||||
# remove extraneous directories from temporary fonts.conf
|
||||
sed -e 's@<dir></dir>@@g' \
|
||||
-e 's@<dir prefix="xdg">fonts</dir>@@g' \
|
||||
-e 's@<dir>~/.fonts</dir>@@g' \
|
||||
-e 's@<cachedir prefix="xdg">fontconfig</cachedir>@@g' \
|
||||
-e 's@<cachedir>~/.fontconfig</cachedir>@@g' \
|
||||
-i chroot-fontconfig/fonts.conf
|
||||
|
||||
export FONTCONFIG_FILE=$(pwd)/chroot-fontconfig/fonts.conf
|
||||
|
||||
cd src
|
||||
sed -e 's@/usr/bin/uname@'"$(which uname)"'@g' -i configure
|
||||
sed -e 's@/usr/bin/file@'"$(which file)"'@g' -i foreign/libffi/configure
|
||||
sed -e 's@/usr/bin/file@'"$(which file)"'@g' -i foreign/libffi/configure
|
||||
'';
|
||||
|
||||
configureFlags = [ "--enable-shared" "--enable-lt=${libtool}/bin/libtool" ];
|
||||
@@ -41,25 +50,25 @@ stdenv.mkDerivation rec {
|
||||
|
||||
postInstall = ''
|
||||
for p in $(ls $out/bin/) ; do
|
||||
wrapProgram $out/bin/$p --prefix LD_LIBRARY_PATH ":" "${ffiSharedLibs}" ;
|
||||
wrapProgram $out/bin/$p --prefix LD_LIBRARY_PATH ":" "${ffiSharedLibs}";
|
||||
done
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Programming language derived from Scheme (formerly called PLT Scheme)";
|
||||
description = "A programmable programming language";
|
||||
longDescription = ''
|
||||
Racket (formerly called PLT Scheme) is a programming language derived
|
||||
from Scheme. The Racket project has four primary components: the
|
||||
implementation of Racket, a JIT compiler; DrRacket, the Racket program
|
||||
development environment; the TeachScheme! outreach, an attempt to turn
|
||||
Computing and Programming into "an indispensable part of the liberal
|
||||
arts curriculum"; and PLaneT, Racket's web-based package
|
||||
distribution system for user-contributed packages.
|
||||
Racket is a full-spectrum programming language. It goes beyond
|
||||
Lisp and Scheme with dialects that support objects, types,
|
||||
laziness, and more. Racket enables programmers to link
|
||||
components written in different dialects, and it empowers
|
||||
programmers to create new, project-specific dialects. Racket's
|
||||
libraries support applications from web servers and databases to
|
||||
GUIs and charts.
|
||||
'';
|
||||
|
||||
homepage = http://racket-lang.org/;
|
||||
license = stdenv.lib.licenses.lgpl2Plus; # and licenses of contained libraries
|
||||
maintainers = [ stdenv.lib.maintainers.kkallio ];
|
||||
license = stdenv.lib.licenses.lgpl3;
|
||||
maintainers = with stdenv.lib.maintainers; [ kkallio henrytill ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user