Merge recent master into staging

Hydra: ?compare=1149952

Conflicts:
	nixos/doc/manual/configuration.xml (changed split file)
	nixos/modules/config/users-groups.nix (choosing filterNull instead of inline definition)
	pkgs/development/libraries/readline/readline6.3.nix (auto-solved)
This commit is contained in:
Vladimír Čunát
2014-08-30 10:04:02 +02:00
756 changed files with 18877 additions and 13683 deletions

View File

@@ -65,7 +65,7 @@
meta = {
description = "GNU Guile 2.0, an embeddable Scheme implementation";
description = "Embeddable Scheme implementation";
homepage = http://www.gnu.org/software/guile/;
license = stdenv.lib.licenses.lgpl3Plus;
maintainers = with stdenv.lib.maintainers; [ ludo lovek323 ];

View File

@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
meta = {
homepage = "http://maude.cs.uiuc.edu/";
description = "Maude -- a high-level specification language";
description = "High-level specification language";
license = stdenv.lib.licenses.gpl2;
longDescription = ''

View File

@@ -1,62 +0,0 @@
{ stdenv, fetchurl }:
let
libc = if stdenv ? gcc && stdenv.gcc.libc != null then stdenv.gcc.libc else "/usr";
in
stdenv.mkDerivation rec {
name = "perl-5.10.1";
src = fetchurl {
url = "mirror://cpan/src/${name}.tar.gz";
sha256 = "0dagnhjgmslfx1jawz986nvc3jh1klk7mn2l8djdca1b9gm2czyb";
};
patches =
[ # Do not look in /usr etc. for dependencies.
./no-sys-dirs.patch
];
# Build a thread-safe Perl with a dynamic libperls.o. We need the
# "installstyle" option to ensure that modules are put under
# $out/lib/perl5 - this is the general default, but because $out
# contains the string "perl", Configure would select $out/lib.
# Miniperl needs -lm. perl needs -lrt.
configureFlags =
[ "-de"
"-Dcc=gcc"
"-Uinstallusrbinperl"
"-Dinstallstyle=lib/perl5"
"-Duseshrplib"
"-Dlocincpth=${libc}/include"
"-Dloclibpth=${libc}/lib"
]
++ stdenv.lib.optional (stdenv ? glibc) "-Dusethreads";
configureScript = "${stdenv.shell} ./Configure";
dontAddPrefix = true;
enableParallelBuilding = true;
preConfigure =
''
configureFlags="$configureFlags -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3"
${stdenv.lib.optionalString stdenv.isArm ''
configureFlagsArray=(-Dldflags="-lm -lrt")
''}
'';
preBuild = stdenv.lib.optionalString (!(stdenv ? gcc && stdenv.gcc.nativeTools))
''
# Make Cwd work on NixOS (where we don't have a /bin/pwd).
substituteInPlace lib/Cwd.pm --replace "'/bin/pwd'" "'$(type -tP pwd)'"
'';
setupHook = ./setup-hook.sh;
passthru.libPrefix = "lib/perl5/site_perl";
}

View File

@@ -1,201 +0,0 @@
diff -rc -x '*~' perl-5.10.1-orig/Configure perl-5.10.1/Configure
*** perl-5.10.1-orig/Configure 2009-08-18 21:03:53.000000000 +0200
--- perl-5.10.1/Configure 2010-01-26 19:08:32.933792254 +0100
***************
*** 103,117 ****
fi
: Proper PATH setting
! paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin'
! paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin"
! paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin"
! paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin"
! paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb"
! paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /opt/ansic/bin /usr/ccs/bin"
! paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib"
! paths="$paths /sbin /usr/sbin /usr/libexec"
! paths="$paths /system/gnu_library/bin"
for p in $paths
do
--- 103,109 ----
fi
: Proper PATH setting
! paths=''
for p in $paths
do
***************
*** 1301,1317 ****
archname=''
libnames=''
: change the next line if compiling for Xenix/286 on Xenix/386
! xlibpth='/usr/lib/386 /lib/386'
: Possible local library directories to search.
! loclibpth="/usr/local/lib /opt/local/lib /usr/gnu/lib"
! loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib"
: general looking path for locating libraries
! glibpth="/lib /usr/lib $xlibpth"
! glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib"
! test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth"
! test -f /shlib/libc.so && glibpth="/shlib $glibpth"
! test -d /usr/lib64 && glibpth="$glibpth /lib64 /usr/lib64 /usr/local/lib64"
: Private path used by Configure to find libraries. Its value
: is prepended to libpth. This variable takes care of special
--- 1293,1304 ----
archname=''
libnames=''
: change the next line if compiling for Xenix/286 on Xenix/386
! xlibpth=''
: Possible local library directories to search.
! loclibpth=""
: general looking path for locating libraries
! glibpth=""
: Private path used by Configure to find libraries. Its value
: is prepended to libpth. This variable takes care of special
***************
*** 1329,1336 ****
: Possible local include directories to search.
: Set locincpth to "" in a hint file to defeat local include searches.
! locincpth="/usr/local/include /opt/local/include /usr/gnu/include"
! locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include"
:
: no include file wanted by default
inclwanted=''
--- 1316,1322 ----
: Possible local include directories to search.
: Set locincpth to "" in a hint file to defeat local include searches.
! locincpth=""
:
: no include file wanted by default
inclwanted=''
***************
*** 1358,1365 ****
libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
: We probably want to search /usr/shlib before most other libraries.
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
- glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'`
- glibpth="/usr/shlib $glibpth"
: Do not use vfork unless overridden by a hint file.
usevfork=false
--- 1344,1349 ----
***************
*** 2366,2372 ****
zip
"
pth=`echo $PATH | sed -e "s/$p_/ /g"`
- pth="$pth /lib /usr/lib"
for file in $loclist; do
eval xxx=\$$file
case "$xxx" in
--- 2350,2355 ----
***************
*** 8361,8373 ****
echo " "
case "$sysman" in
'')
! syspath='/usr/share/man/man1 /usr/man/man1'
! syspath="$syspath /usr/man/mann /usr/man/manl /usr/man/local/man1"
! syspath="$syspath /usr/man/u_man/man1"
! syspath="$syspath /usr/catman/u_man/man1 /usr/man/l_man/man1"
! syspath="$syspath /usr/local/man/u_man/man1 /usr/local/man/l_man/man1"
! syspath="$syspath /usr/man/man.L /local/man/man1 /usr/local/man/man1"
! sysman=`./loc . /usr/man/man1 $syspath`
;;
esac
if $test -d "$sysman"; then
--- 8344,8351 ----
echo " "
case "$sysman" in
'')
! syspath=''
! sysman=''
;;
esac
if $test -d "$sysman"; then
***************
*** 19476,19484 ****
case "$full_ar" in
'') full_ar=$ar ;;
esac
: Store the full pathname to the sed program for use in the C program
! full_sed=$sed
: see what type gids are declared as in the kernel
echo " "
--- 19454,19463 ----
case "$full_ar" in
'') full_ar=$ar ;;
esac
+ full_ar=ar
: Store the full pathname to the sed program for use in the C program
! full_sed=sed
: see what type gids are declared as in the kernel
echo " "
diff -rc -x '*~' perl-5.10.1-orig/ext/Errno/Errno_pm.PL perl-5.10.1/ext/Errno/Errno_pm.PL
*** perl-5.10.1-orig/ext/Errno/Errno_pm.PL 2009-06-27 18:09:45.000000000 +0200
--- perl-5.10.1/ext/Errno/Errno_pm.PL 2010-01-26 18:08:09.552792021 +0100
***************
*** 144,154 ****
if ($dep =~ /(\S+errno\.h)/) {
$file{$1} = 1;
}
! } elsif ($^O eq 'linux' &&
! $Config{gccversion} ne '' &&
! $Config{gccversion} !~ /intel/i
! # might be using, say, Intel's icc
! ) {
# Some Linuxes have weird errno.hs which generate
# no #file or #line directives
my $linux_errno_h = -e '/usr/include/errno.h' ?
--- 144,150 ----
if ($dep =~ /(\S+errno\.h)/) {
$file{$1} = 1;
}
! } elsif (0) {
# Some Linuxes have weird errno.hs which generate
# no #file or #line directives
my $linux_errno_h = -e '/usr/include/errno.h' ?
diff -rc -x '*~' perl-5.10.1-orig/hints/freebsd.sh perl-5.10.1/hints/freebsd.sh
*** perl-5.10.1-orig/hints/freebsd.sh 2009-02-12 23:58:12.000000000 +0100
--- perl-5.10.1/hints/freebsd.sh 2010-01-26 18:30:01.181854620 +0100
***************
*** 118,130 ****
objformat=`/usr/bin/objformat`
if [ x$objformat = xaout ]; then
if [ -e /usr/lib/aout ]; then
! libpth="/usr/lib/aout /usr/local/lib /usr/lib"
! glibpth="/usr/lib/aout /usr/local/lib /usr/lib"
fi
lddlflags='-Bshareable'
else
! libpth="/usr/lib /usr/local/lib"
! glibpth="/usr/lib /usr/local/lib"
ldflags="-Wl,-E "
lddlflags="-shared "
fi
--- 118,130 ----
objformat=`/usr/bin/objformat`
if [ x$objformat = xaout ]; then
if [ -e /usr/lib/aout ]; then
! libpth=""
! glibpth=""
fi
lddlflags='-Bshareable'
else
! libpth=""
! glibpth=""
ldflags="-Wl,-E "
lddlflags="-shared "
fi

View File

@@ -1,5 +0,0 @@
addPerlLibPath () {
addToSearchPath PERL5LIB $1/lib/perl5/site_perl
}
envHooks=(${envHooks[@]} addPerlLibPath)

View File

@@ -1,67 +0,0 @@
{ stdenv, fetchurl
, impureLibcPath ? null
}:
stdenv.mkDerivation {
name = "perl-5.8.8";
phases = "phase";
phase =
''
source $stdenv/setup
if test "$NIX_ENFORCE_PURITY" = "1"; then
GLIBC=${if impureLibcPath == null then "$(cat $NIX_GCC/nix-support/orig-libc)" else impureLibcPath}
extraflags="-Dlocincpth=$GLIBC/include -Dloclibpth=$GLIBC/lib"
fi
configureScript=./Configure
configureFlags="-de -Dcc=gcc -Dprefix=$out -Uinstallusrbinperl $extraflags"
dontAddPrefix=1
preBuild() {
# Make Cwd work on NixOS (where we don't have a /bin/pwd).
substituteInPlace lib/Cwd.pm --replace "'/bin/pwd'" "'$(type -tP pwd)'"
}
postInstall() {
mkdir -p "$out/nix-support"
cp $setupHook $out/nix-support/setup-hook
}
unset phases
genericBuild
'';
src = fetchurl {
url = mirror://cpan/src/perl-5.8.8.tar.bz2;
sha256 = "1j8vzc6lva49mwdxkzhvm78dkxyprqs4n4057amqvsh4kh6i92l1";
};
patches = [
# This patch does the following:
# 1) Do use the PATH environment variable to find the `pwd' command.
# By default, Perl will only look for it in /lib and /usr/lib.
# !!! what are the security implications of this?
# 2) Force the use of <errno.h>, not /usr/include/errno.h, on Linux
# systems. (This actually appears to be due to a bug in Perl.)
./no-sys-dirs.patch
# Patch to make Perl 5.8.8 build with GCC 4.2. Taken from
# http://www.nntp.perl.org/group/perl.perl5.porters/2006/11/msg117738.html
./gcc-4.2.patch
# Fix for "SysV.xs:7:25: error: asm/page.h: No such file or
# directory" on recent kernel headers. From
# http://bugs.gentoo.org/show_bug.cgi?id=168312.
(fetchurl {
url = http://bugs.gentoo.org/attachment.cgi?id=111427;
sha256 = "017pj0nbqb7kwj3cs727c2l2d8c45l9cwxf71slgb807kn3ppgmn";
})
];
setupHook = ./setup-hook.sh;
passthru.libPrefix = "lib/perl5/site_perl";
}

View File

@@ -1,10 +0,0 @@
--- perl-5.8.x/makedepend.SH 2006-06-13 15:31:22.000000000 -0400
+++ perl-5.8.x-andy/makedepend.SH 2006-07-25 14:45:11.000000000 -0400
@@ -167,6 +167,7 @@
-e '/^#.*<builtin>/d' \
-e '/^#.*<built-in>/d' \
-e '/^#.*<command line>/d' \
+ -e '/^#.*<command-line>/d' \
-e '/^#.*"-"/d' \
-e '/: file path prefix .* never used$/d' \
-e 's#\.[0-9][0-9]*\.c#'"$file.c#" \

View File

@@ -1,164 +0,0 @@
diff -rc perl-orig/Configure perl-5.8.6/Configure
*** perl-orig/Configure 2004-09-10 08:25:52.000000000 +0200
--- perl-5.8.6/Configure 2005-03-10 12:53:28.000000000 +0100
***************
*** 86,100 ****
fi
: Proper PATH setting
! paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin'
! paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin"
! paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin"
! paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin"
! paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb"
! paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /opt/ansic/bin /usr/ccs/bin"
! paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib"
! paths="$paths /sbin /usr/sbin /usr/libexec"
! paths="$paths /system/gnu_library/bin"
for p in $paths
do
--- 86,92 ----
fi
: Proper PATH setting
! paths=''
for p in $paths
do
***************
*** 1221,1228 ****
archname=''
: Possible local include directories to search.
: Set locincpth to "" in a hint file to defeat local include searches.
! locincpth="/usr/local/include /opt/local/include /usr/gnu/include"
! locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include"
:
: no include file wanted by default
inclwanted=''
--- 1213,1219 ----
archname=''
: Possible local include directories to search.
: Set locincpth to "" in a hint file to defeat local include searches.
! locincpth=""
:
: no include file wanted by default
inclwanted=''
***************
*** 1230,1245 ****
groupstype=''
libnames=''
: change the next line if compiling for Xenix/286 on Xenix/386
! xlibpth='/usr/lib/386 /lib/386'
: Possible local library directories to search.
! loclibpth="/usr/local/lib /opt/local/lib /usr/gnu/lib"
! loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib"
: general looking path for locating libraries
! glibpth="/lib /usr/lib $xlibpth"
! glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib"
! test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth"
! test -f /shlib/libc.so && glibpth="/shlib $glibpth"
: Private path used by Configure to find libraries. Its value
: is prepended to libpth. This variable takes care of special
--- 1221,1232 ----
groupstype=''
libnames=''
: change the next line if compiling for Xenix/286 on Xenix/386
! xlibpth=''
: Possible local library directories to search.
! loclibpth=""
: general looking path for locating libraries
! glibpth="$xlibpth"
: Private path used by Configure to find libraries. Its value
: is prepended to libpth. This variable takes care of special
***************
*** 1270,1277 ****
libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
: We probably want to search /usr/shlib before most other libraries.
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
- glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'`
- glibpth="/usr/shlib $glibpth"
: Do not use vfork unless overridden by a hint file.
usevfork=false
--- 1257,1262 ----
***************
*** 2267,2273 ****
zip
"
pth=`echo $PATH | sed -e "s/$p_/ /g"`
- pth="$pth /lib /usr/lib"
for file in $loclist; do
eval xxx=\$$file
case "$xxx" in
--- 2252,2257 ----
***************
*** 7910,7922 ****
echo " "
case "$sysman" in
'')
! syspath='/usr/share/man/man1 /usr/man/man1'
! syspath="$syspath /usr/man/mann /usr/man/manl /usr/man/local/man1"
! syspath="$syspath /usr/man/u_man/man1"
! syspath="$syspath /usr/catman/u_man/man1 /usr/man/l_man/man1"
! syspath="$syspath /usr/local/man/u_man/man1 /usr/local/man/l_man/man1"
! syspath="$syspath /usr/man/man.L /local/man/man1 /usr/local/man/man1"
! sysman=`./loc . /usr/man/man1 $syspath`
;;
esac
if $test -d "$sysman"; then
--- 7894,7901 ----
echo " "
case "$sysman" in
'')
! syspath=''
! sysman=''
;;
esac
if $test -d "$sysman"; then
***************
*** 17949,17957 ****
case "$full_ar" in
'') full_ar=$ar ;;
esac
: Store the full pathname to the sed program for use in the C program
! full_sed=$sed
: see what type gids are declared as in the kernel
echo " "
--- 17928,17937 ----
case "$full_ar" in
'') full_ar=$ar ;;
esac
+ full_ar=ar
: Store the full pathname to the sed program for use in the C program
! full_sed=sed
: see what type gids are declared as in the kernel
echo " "
diff -rc perl-orig/ext/Errno/Errno_pm.PL perl-5.8.6/ext/Errno/Errno_pm.PL
*** perl-orig/ext/Errno/Errno_pm.PL 2004-11-01 15:31:59.000000000 +0100
--- perl-5.8.6/ext/Errno/Errno_pm.PL 2005-03-10 12:52:31.000000000 +0100
***************
*** 105,111 ****
# Watch out for cross compiling for EPOC (usually done on linux)
$file{'/usr/local/epocemx/epocsdk/include/libc/sys/errno.h'} = 1;
} elsif ($^O eq 'linux' &&
! $Config{gccversion} ne '' # might be using, say, Intel's icc
) {
# Some Linuxes have weird errno.hs which generate
# no #file or #line directives
--- 105,111 ----
# Watch out for cross compiling for EPOC (usually done on linux)
$file{'/usr/local/epocemx/epocsdk/include/libc/sys/errno.h'} = 1;
} elsif ($^O eq 'linux' &&
! $Config{gccversion} eq '' # might be using, say, Intel's icc
) {
# Some Linuxes have weird errno.hs which generate
# no #file or #line directives

View File

@@ -1,5 +0,0 @@
addPerlLibPath () {
addToSearchPath PERL5LIB $1/lib/site_perl
}
envHooks=(${envHooks[@]} addPerlLibPath)

View File

@@ -233,7 +233,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
};
meta = {
description = "The PHP language runtime engine";
description = "An HTML-embedded scripting language";
homepage = http://www.php.net/;
license = "PHP-3";
maintainers = with stdenv.lib.maintainers; [ lovek323 ];

View File

@@ -77,6 +77,11 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
buildInputs = [ postgresql ];
};
pdo_pgsql = {
configureFlags = ["--with-pdo-pgsql=${postgresql}"];
buildInputs = [ postgresql ];
};
mysql = {
configureFlags = ["--with-mysql=${mysql}"];
buildInputs = [ mysql ];
@@ -203,6 +208,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
gettextSupport = config.php.gettext or true;
pcntlSupport = config.php.pcntl or true;
postgresqlSupport = config.php.postgresql or true;
pdo_pgsqlSupport = config.php.pdo_pgsql or true;
readlineSupport = config.php.readline or true;
sqliteSupport = config.php.sqlite or true;
soapSupport = config.php.soap or true;
@@ -247,7 +253,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
};
meta = {
description = "The PHP language runtime engine";
description = "An HTML-embedded scripting language";
homepage = http://www.php.net/;
license = "PHP-3";
};

View File

@@ -1,5 +1,5 @@
{ stdenv, fetchurl, zlib ? null, zlibSupport ? true, bzip2, pkgconfig, libffi
, sqlite, openssl, ncurses, pythonFull, expat }:
, sqlite, openssl, ncurses, pythonFull, expat, tcl, tk, x11, libX11 }:
assert zlibSupport -> zlib != null;
@@ -20,7 +20,7 @@ let
sha256 = "0fg4l48c7n59n5j3b1dgcsr927xzylkfny4a6pnk6z0pq2bhvl9z";
};
buildInputs = [ bzip2 openssl pkgconfig pythonFull libffi ncurses expat sqlite ]
buildInputs = [ bzip2 openssl pkgconfig pythonFull libffi ncurses expat sqlite tk tcl x11 libX11 ]
++ stdenv.lib.optional (stdenv ? gcc && stdenv.gcc.libc != null) stdenv.gcc.libc
++ stdenv.lib.optional zlibSupport zlib;
@@ -40,12 +40,20 @@ let
substituteInPlace pypy/goal/targetpypystandalone.py \
--replace "/usr/bin/env pypy" "${pythonFull}/bin/python"
# convince pypy to find nix ncurses
# hint pypy to find nix ncurses
substituteInPlace pypy/module/_minimal_curses/fficurses.py \
--replace "/usr/include/ncurses/curses.h" "${ncurses}/include/curses.h" \
--replace "ncurses/curses.h" "${ncurses}/include/curses.h" \
--replace "ncurses/term.h" "${ncurses}/include/term.h" \
--replace "libraries=['curses']" "libraries=['ncurses']"
# tkinter hints
substituteInPlace lib_pypy/_tkinter/tklib.py \
--replace "'/usr/include/tcl'" "'${tk}/include', '${tcl}/include'" \
--replace "linklibs=['tcl', 'tk']" "linklibs=['tcl8.5', 'tk8.5']" \
--replace "libdirs = []" "libdirs = ['${tk}/lib', '${tcl}/lib']"
sed -i "s@libraries=\['sqlite3'\]\$@libraries=['sqlite3'], include_dirs=['${sqlite}/include'], library_dirs=['${sqlite}/lib']@" lib_pypy/_sqlite3.py
'';
setupHook = ./setup-hook.sh;
@@ -58,8 +66,8 @@ let
# disable shutils because it assumes gid 0 exists
# disable socket because it has two actual network tests that fail
# disable test_mhlib because it fails for unknown reason
# disable test_multiprocessing due to transient errors
# disable sqlite3 due to https://bugs.pypy.org/issue1740
# disable test_multiprocessing due to transient errors
# disable test_os because test_urandom_failure fails
./pypy-c ./pypy/test_all.py --pypy=./pypy-c -k '-test_sqlite -test_socket -test_os -test_shutil -test_mhlib -test_multiprocessing' lib-python
'';
@@ -75,19 +83,23 @@ let
ln -s $out/pypy-c/include $out/include/${libPrefix}
ln -s $out/pypy-c/lib-python/${pythonVersion} $out/lib/${libPrefix}
# verify cffi modules
$out/bin/pypy -c "import Tkinter;import sqlite3"
# TODO: compile python files?
'';
passthru = {
inherit zlibSupport libPrefix;
executable = "pypy";
isPypy = true;
};
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = "http://pypy.org/";
description = "PyPy is a fast, compliant alternative implementation of the Python language (2.7.3)";
description = "Fast, compliant alternative implementation of the Python language (2.7.3)";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ iElectric ];

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{ fetchurl, writeScript, ruby, ncurses, sqlite, libxml2, libxslt, libffi
, zlib, libuuid, gems, jdk, python, stdenv, libiconvOrEmpty, imagemagick
, pkgconfig }:
, pkgconfig, libiconv }:
let
@@ -80,9 +80,10 @@ in
};
nokogiri = {
buildInputs = [ libxml2 ];
buildFlags =
[ "--with-xml2-dir=${libxml2} --with-xml2-include=${libxml2}/include/libxml2"
"--with-xslt-dir=${libxslt}"
"--with-xslt-dir=${libxslt} --with-iconv-dir=${libiconv} --use-system-libraries"
];
};

View File

@@ -0,0 +1,44 @@
{ fetchurl, fetchgit, stdenv, xlibs, gcc44, makeWrapper, ncurses, cmake }:
stdenv.mkDerivation rec {
# The Self wrapper stores source in $XDG_DATA_HOME/self or ~/.local/share/self
# so that it can be written to when using the Self transposer. Running 'Self'
# after installation runs without an image. You can then build a Self image with:
# $ cd ~/.local/share/self/objects
# $ Self
# > 'worldBuilder.self' _RunScript
#
# This image can later be started with:
# $ Self -s myimage.snap
#
version = "4.5.0";
name = "self-${version}";
src = fetchgit {
url = "https://github.com/russellallen/self";
rev = "d16bcaad3c5092dae81ad0b16d503f2a53b8ef86";
sha256 = "966025b71542e44fc830b951f404f5721ad410ed24f7236fd0cd820ea0fc5731";
};
# gcc 4.6 and above causes crashes on Self startup but gcc 4.4 works.
buildInputs = [ gcc44 ncurses xlibs.libX11 xlibs.libXext makeWrapper cmake ];
selfWrapper = ./self;
installPhase = ''
mkdir -p "$out"/bin
cp ./vm/Self "$out"/bin/Self.wrapped
mkdir -p "$out"/share/self
cp -r ../objects "$out"/share/self/
makeWrapper $selfWrapper $out/bin/Self \
--set SELF_ROOT "$out"
'';
meta = {
description = "A prototype-based dynamic object-oriented programming language, environment, and virtual machine";
homepage = "http://selflanguage.org/";
license = stdenv.lib.licenses.bsd3;
maintainer = [ stdenv.lib.maintainers.doublec ];
platforms = with stdenv.lib.platforms; linux;
};
}

View File

@@ -0,0 +1,18 @@
#! /usr/bin/env bash
export SELF_HOME="$HOME/.local/share/self"
if [ -n "$XDG_DATA_HOME" ]
then export SELF_HOME="$XDG_DATA_HOME/self"
fi
if [ ! -d $SELF_HOME ]; then
mkdir -p $SELF_HOME
fi
if [ ! -d $SELF_HOME/objects ]; then
mkdir -p $SELF_HOME/objects
cp -r $SELF_ROOT/share/self/objects/* $SELF_HOME/objects
chmod -R +w $SELF_HOME/objects
fi
exec $SELF_ROOT/bin/Self.wrapped "$@"