Commit graph

627 commits

Author SHA1 Message Date
Nikolay Amiantov
74c3cdd893 python.buildEnv: add extraOutputsToInstall attribute 2017-09-25 22:40:09 +03:00
John Ericson
531e4b80c9 misc pkgs: Basic sed to get fix pkgconfig and autoreconfHook buildInputs
Only acts on one-line dependency lists.
2017-09-21 15:49:53 -04:00
Frederik Rietdijk
96d15eaddb python27: support test/support
In the maintenance release bump in
90059701a8 a certain change to /test/ was
backported from Python 3:

- bpo-30207: To simplify backports from Python 3, the test.test_support
  module was converted into a package and renamed to test.support.  The
  test.script_helper module was moved into the test.support package.
  Names test.test_support and test.script_helper are left as aliases to
  test.support and test.support.script_helper.
2017-09-17 11:09:26 +02:00
Frederik Rietdijk
90059701a8 python27: 2.7.13 -> 2.7.14
The enosys patch is not needed anymore since the patch is included in
this maintenance release.
2017-09-17 09:57:55 +02:00
Tuomas Tynkkynen
a0a8f0ac87 python2: Use system libffi on Aarch64
libffi needs a patch to actually work on aarch64 (or the cffi Python package
fails its testsuite). Of course the bundled version of libffi has the
same bug, so don't use the buggy version on aarch64.

Python3 already uses the system libffi on all platforms. I don't know
why Python2 doesn't.
2017-09-16 01:16:08 +03:00
Frederik Rietdijk
77baf6e818 python35: check LD_LIBRARY_PATH
Backports support for LD_LIBRARY_PATH from 3.6
2017-09-14 10:17:58 +02:00
Frederik Rietdijk
03898f2f23 python34: check LD_LIBRARY_PATH
Backports support for LD_LIBRARY_PATH from 3.6
2017-09-14 10:17:36 +02:00
Frederik Rietdijk
c3a0c3c9f1 Revert "python.pkgs.buildPythonPackage: use distutils-cfg to block downloads, fixes #25428"
This reverts commit b73e3bfafd.

See https://github.com/NixOS/nixpkgs/issues/29103
2017-09-08 08:55:05 +02:00
Frederik Rietdijk
b73e3bfafd python.pkgs.buildPythonPackage: use distutils-cfg to block downloads, fixes #25428
While we tell pip not to fetch (with the `--no-index` option),
`setuptools` can do so itself. In the past we used a `distutils.cfg`
with `allow-hosts = None` to prevent setuptools from fetching itself.
This was removed when we started building wheels in
2562f94de4e4fd2ddc677187fa2e2848L69.

The `dist-utils.cfg` code was still there, and adding it to
`buildInputs` is sufficient.

Tested with python.pkgs.passlib by removing the `checkInputs` / `nose`.
2017-09-07 19:22:06 +02:00
Frederik Rietdijk
6d4bd78fad Merge commit '2858c41' into HEAD 2017-08-30 21:07:07 +02:00
Frederik Rietdijk
b2686dce25 Merge pull request #27636 from bendlas/update-pypy
pypy: 5.6 -> 5.8
2017-08-30 13:57:24 +02:00
Maximilian Güntner
94351197cd cpython: include test.support and test.regrtest
test.{support, regrtest} are the internal packages cpython
developers use to write tests.
Although they are not public and the API may change/break
some developers use these packages to write tests for their
(3rd party) software.
The derivations for cpython now only remove the actual tests
but leave the packages in place that are used to write them.

Discussion: https://github.com/NixOS/nixpkgs/pull/28540
2017-08-28 09:49:08 +02:00
Frederik Rietdijk
a7ddca6e3d python 3.4, 3.5, 3.6: Don't use ldconfig and speed up uuid load, fixes #28349
These patches had already been merged for 3.5 and 3.6 but not yet for
3.4. However, they did contain a mistake as explained in #28349.
2017-08-28 09:42:59 +02:00
Frederik Rietdijk
748589bf60 python36: remove symlink to pip
Symbolic links were added pointing to the executables that end with 3 as
part of the Python 2 to 3 migration. At some point I disabled ensurepip
but forgot to remove this symbolic link.
2017-08-13 12:22:54 +02:00
Frederik Rietdijk
53d2838f27 python35: remove symlink to pip
Symbolic links were added pointing to the executables that end with 3 as
part of the Python 2 to 3 migration. At some point I disabled ensurepip
but forgot to remove this symbolic link.
2017-08-13 12:22:54 +02:00
Frederik Rietdijk
3b56edae94 python34: remove symlink to pip
Symbolic links were added pointing to the executables that end with 3 as
part of the Python 2 to 3 migration. At some point I disabled ensurepip
but forgot to remove this symbolic link.
2017-08-13 12:22:54 +02:00
Frederik Rietdijk
71615c19af python35: add no-ldconfig.patch again
after it was accidentally removed in
d6c5109276
2017-08-12 13:22:23 +02:00
Robin Gloster
4495bfe138
python.buildEnv: only wrap executables 2017-08-09 15:07:03 +02:00
Frederik Rietdijk
616fb95356 python34: 3.4.6 -> 3.4.7 2017-08-09 09:41:59 +02:00
Frederik Rietdijk
d6c5109276 python35: 3.5.3 -> 3.5.4 2017-08-08 18:06:29 +02:00
Frederik Rietdijk
468fdddde6 Merge pull request #27753 from FRidh/python33eol
python33: end-of-life
2017-08-08 09:11:11 +02:00
Herwig Hochleitner
189bba047e pypy: use pycparser from passed python 2017-08-03 22:20:49 +02:00
Frederik Rietdijk
6e6271e82f python.buildEnv: undo removal of passthru.python 2017-08-02 15:05:00 +02:00
Frederik Rietdijk
4f66c0cf21 Merge remote-tracking branch 'upstream/master' into HEAD 2017-08-02 10:22:24 +02:00
Silvan Mosberger
f5fa5fa4d6 pkgs: refactor needless quoting of homepage meta attribute (#27809)
* pkgs: refactor needless quoting of homepage meta attribute

A lot of packages are needlessly quoting the homepage meta attribute
(about 1400, 22%), this commit refactors all of those instances.

* pkgs: Fixing some links that were wrongfully unquoted in the previous
commit

* Fixed some instances
2017-08-01 22:03:30 +02:00
Frederik Rietdijk
ea4121d225 python.buildEnv: fix passthru
Python envs did not pass through any of the properties the Python
interpreter has. That could be annoying, especially not having
`python.interpreter` which is the path to the interpreter. This commit
fixes the situation and inherit python.passthru.
2017-08-01 16:27:16 +02:00
Frederik Rietdijk
85a0ab4b23 Python: disable user site-packages for programs and environments.
Python by default checks a `site-packages` folder in the user's home
folder. We do not want such an impurity and therefore disable it.
Fixes #26846.
2017-07-31 13:16:29 +02:00
Frederik Rietdijk
feeed410ff Merge pull request #27751 from FRidh/pythonldconfig
python36 and python35: Don't use ldconfig and speed up uuid load
2017-07-30 10:54:36 +02:00
Frederik Rietdijk
6128dd4d50 Python wrapper: undo change 8d76effc17
because we would otherwise end up with broken wrappers because PATH and
PTYHONPATH weren't set.
2017-07-30 08:42:33 +02:00
Frederik Rietdijk
d387cac375 python33: end-of-life
Python 3.3 reaches end-of-life when we release 17.09.

https://mail.python.org/pipermail/python-dev/2017-July/148584.html
2017-07-29 20:49:24 +02:00
Frederik Rietdijk
d64e798c82 python35: Don't use ldconfig and speed up uuid load
A Python 3.5 version of de1b4e71c1.
2017-07-29 20:41:02 +02:00
Frederik Rietdijk
0a7e705f62 python36: Don't use ldconfig and speed up uuid load
A Python 3.6 version of de1b4e71c1.
2017-07-29 20:40:35 +02:00
Herwig Hochleitner
fec79a9b15 pypy: 5.6 -> 5.8
this commit includes a patch, backported from master, to skip a
failing test
2017-07-25 12:01:28 +02:00
Frederik Rietdijk
8e98811f76 python36: 3.6.1 -> 3.6.2 2017-07-17 10:06:14 +02:00
John Ericson
8d76effc17 stdenv-setup: Make the package accumulators associative arrays instead of strings
This is generally cleaner: less eval, less worrying about separators,
and probably also faster. I got the idea from that python wrapper
script.
2017-07-12 15:30:56 -04:00
David McFarland
087c32715b python2: copy stub library to output on cygwin 2017-06-26 09:26:10 -03:00
Robert Scott
45ac7700fa mkPythonDerivation: obey a dontWrapPythonPrograms attribute
This should allow a python derivation to disable possibly overzealous
python program wrapping without having to override the whole fixupPhase
2017-05-27 14:25:08 +02:00
Frederik Rietdijk
c10af9e744 Python: wrapPythonPrograms: only wrap in $out/bin
Thus far all executables in a derivation were wrapped. This commit
only wraps executables in $out/bin. If other scripts need to be wrapped
as well, then one can use wrapPythonProgramsIn.
2017-05-27 14:25:08 +02:00
Frederik Rietdijk
97f67d1b5a buildPythonPackage: do not keep checkInputs
When tests are disabled, we do not want to pass checkInputs to
stdenv.mkDerivation. This reduces the build requirements and, more
importantly, helps cutting cycles.
2017-05-27 14:25:08 +02:00
Vladimír Čunát
b7fed33057
python-3.3: fixup evaluation after #25916 2017-05-24 14:09:14 +02:00
Frederik Rietdijk
acd32a4caf Python: set DETERMINISTIC_BUILD and PYTHONHASHSEED in setupHook
The Python interpreters are patched so they can build .pyc bytecode free
of certain indeterminism.

When building Python packages we currently set

```
compiling python files.
in nix store.
DETERMINISTIC_BUILD=1;
PYTHONHASHSEED = 0;
```

Instead if setting these environment variables in the function that
builds the package, this commit sets the variables instead in the Python
setup hook. That way, whenever Python is included in a derivation, these
variables are set.

See also the issue https://github.com/NixOS/nixpkgs/issues/25707.
2017-05-19 16:28:11 +02:00
Frederik Rietdijk
4fc9b1852a Merge remote-tracking branch 'upstream/master' into HEAD 2017-04-23 11:26:47 +02:00
Frederik Rietdijk
c275158f06 python36: 3.6.0 -> 3.6.1 2017-04-18 13:14:40 +02:00
Frederik Rietdijk
5c8ffe0311 Python 3.x: do not regenerate _sysconfigdata
This commit fixes several issues:

- as reported in https://github.com/NixOS/nixpkgs/issues/24924 it was
possible that the file _sysconfigdata.pyc was generated after the actual
build of the CPython interpreter. We forgot to regenerate that file
during the build. This is now fixed

- the expression of the 3.3 interpreter now also includes some of the
determinism patches even though the output isn't yet reproducible. The
reason for adding them is that this makes the expressions of the
different interpreters more similar.

- references to -dev packages are now also removed in the 3.6 package,
thereby reducing its closure size
2017-04-16 10:41:35 +02:00
Johannes Bornhold
249b34aadc
python: Move catch_conflicts.py into subdirectory (#23600)
Python does add the script's directory into "sys.path". For the case of
"catch_conflicts.py" this means "/nix/store" is added to "sys.path". This can
result in very long delays if the store contains a lot of entries.

(moved from master commit 76213d102c)
2017-04-01 12:22:36 +02:00
Vladimír Čunát
2839b101f9
Merge commit older staging
No new failures on Hydra.
2017-03-05 08:00:42 +01:00
Domen Kožar
fb40889ddb
mk-python-derivation: remove me as maintainer
The time has come ...
2017-03-03 14:37:28 +01:00
Frederik Rietdijk
a1f6b8b5fc Python 3.6 fixup expat and libffi, fixes #23406 2017-03-03 07:46:52 +01:00
Frederik Rietdijk
b588ed95b9 Python 3.4: fixup expat and libffi, fixes #23325 2017-03-02 13:17:40 +01:00
Frederik Rietdijk
079353e208 Python 2.7: increase priority - fixup
From the manual:

> This attribute should be a number, with a higher value denoting a
lower priority. The default priority is 0.

Just passing -5 or -10 wasn't sufficient, so let's make it -100.
2017-02-26 16:27:45 +01:00
Frederik Rietdijk
4bc1d02698 Python 2.7: increase priority
Higher priority than Python 3.x so that `/bin/python` points to
`/bin/python2` in case both 2 and 3 are installed.
2017-02-26 16:07:52 +01:00
Frederik Rietdijk
04b7a2791e Python 3.4: improve determinism 2017-02-26 14:51:26 +01:00
Frederik Rietdijk
57ded03833 Python 3.4: use system expat and ffi 2017-02-26 14:51:26 +01:00
Frederik Rietdijk
1bbf249bef Python 3.4: improve determinism 2017-02-26 14:51:26 +01:00
Frederik Rietdijk
d33f6f4032 Python 3.6: use system expat and ffi 2017-02-26 14:51:26 +01:00
Frederik Rietdijk
1531b5edd2 Python 3.6: improve determinism 2017-02-26 14:51:26 +01:00
Frederik Rietdijk
14a88e76cf Python 3.5: use system expat and ffi 2017-02-26 14:50:09 +01:00
Frederik Rietdijk
dd3a501a4b Python: mkPythonDerivation: use PYTHONHASHSEED=0 2017-02-26 14:50:09 +01:00
Frederik Rietdijk
8970a9c86e Python 3.5: improve determinism
- Windows installers are indeterministic and we don't need them.
- since Python 3 ensurepip is installed by default. pip is indeteministic and we don't need it.
- rebuild bytecode to ensure its deterministic
2017-02-26 14:50:09 +01:00
Frederik Rietdijk
09f6b03b2e Python 2.7: improve determinism
There is some randomness in the Windows installers. Since we don't need
them, we delete them.
2017-02-26 14:50:09 +01:00
Vladimír Čunát
2f1945dcd3
python-3.6: fix random numbers with glibc-2.25
I missed this upstream patch. /cc #22874.
2017-02-22 17:34:33 +01:00
Vladimír Čunát
cab0b445be
python-3.4: fixup with glibc-2.25 (/cc #22874)
Upstream won't support it, but let me trick the code into behaving
as if glibc was older.  It seems 3.3 branch should be unaffected.
2017-02-21 17:56:32 +01:00
Vladimír Čunát
2cb76ff1ff
Merge branch 'glibc-2.25' into staging
The largest problem-causers should be fixed now (within).
2017-02-20 21:18:48 +01:00
Nikolay Amiantov
7cbe538e94 pythonPackages.wrapPython: fix for paths with spaces 2017-02-19 01:43:12 +03:00
Vladimír Čunát
110f136dc2
python*: upstream patches to fix with glibc-2.25
https://bugs.python.org/issue29157
The 3.6 release already contains the fix (from 3.5);
the branches in-between are claimed to be unaffected.
/cc #22874.
2017-02-16 23:13:38 +01:00
Frederik Rietdijk
12285d162c pypy: inherit pythonVersion 2017-02-14 09:23:59 +01:00
Frederik Rietdijk
c2e2a4d2c5 Python: remove 2.6 2017-02-13 14:42:24 +01:00
Frederik Rietdijk
b846a53d2a python34: 3.4.5 -> 3.4.6 2017-02-08 20:48:14 +01:00
Frederik Rietdijk
939f426906 python35: 3.5.2 -> 3.5.3 2017-02-08 20:48:14 +01:00
Vladimír Čunát
adab4cd58b
Merge branch 'master' into staging 2017-02-03 11:47:38 +01:00
Frederik Rietdijk
7b6b7f6b78 Python Flit: run tests by default 2017-02-01 14:54:20 +01:00
Frederik Rietdijk
e33bc13349 Merge pull request #22086 from timbertson/pip-stderr
buildPythonPackage: send pip output to stderr
2017-01-24 11:20:53 +01:00
Tim Cuthbertson
7af2d3d6e2 buildPythonPackage: send pip output to stderr 2017-01-24 21:08:42 +11:00
Charles Strahan
d298a961f1 Merge pull request #21416 from cstrahan/mesos-1.1.0
mesos: 1.0.1 -> 1.1.0
2017-01-21 19:05:18 -05:00
Frederik Rietdijk
a3018650a3 Merge pull request #21643 from symphorien/python-tix
Python tix module
2017-01-04 20:51:33 +01:00
Symphorien Gibol
a6e3d71361 python: support the tkinter.tix module 2017-01-04 19:39:33 +01:00
Daiderd Jordan
27660cfdc0
Merge branch 'master' into staging 2017-01-04 01:42:26 +01:00
Daiderd Jordan
538d1b688a stdenv: bootstrap cmake and python on darwin 2017-01-03 18:01:47 +01:00
Herwig Hochleitner
09f66a7457 pypy: 5.4.1 -> 5.6.0 2017-01-02 13:41:28 +01:00
Frederik Rietdijk
d68aba4cfb Python: script names now include full path
Certain programs, like zim, calibre and now also apparently mercurial,
rely on sys.argv[0] providing not just the script name but the full
path.

The Python docs [1] state the following on the matter:

> argv[0] is the script name (it is operating system dependent whether
this is a full pathname or not).

Therefore, scripts should not expect to receive a full path.
Unfortunately some do. While this can be considered a bug, there doesn't
seem any reason not to provide the full path. Therefore we now provide
the full path.

[1]
https://docs.python.org/3.5/library/sys.html?highlight=sys.argv#sys.argv
2017-01-02 11:29:11 +01:00
Charles Strahan
7ebcada020
mesos: 1.0.1 -> 1.1.0 2016-12-29 20:09:46 -05:00
Frederik Rietdijk
b09000e785 python36: 3.6.0rc1 -> 3.6.0 2016-12-24 16:00:52 +01:00
Frederik Rietdijk
591eda8310 python27: 2.7.12 -> 2.7.13 2016-12-24 16:00:31 +01:00
Frederik Rietdijk
2bcd41b9ff buildPythonPackage: install builds reproducibly
Without --build a temporary directory is created to unpack the wheel in.
We now set a directory instead.
2016-12-13 14:45:05 +01:00
Frederik Rietdijk
7c8b1e7b24 python36: 3.6.0b2 -> 3.6.0rc1 2016-12-12 09:31:25 +01:00
Frederik Rietdijk
736169d01d buildPythonPackage: yet another fix, fixes #20943
I didn't copy the old behaviour correctly with
c1d98d959b
2016-12-06 16:48:55 +01:00
Frederik Rietdijk
c1d98d959b buildPythonPackage: add configurePhase, fixes #20926
I had removed the configurePhase in
https://github.com/NixOS/nixpkgs/pull/20894 because it was empty. This
seemed to break packages that use cmake.
2016-12-05 17:33:17 +01:00
Frederik Rietdijk
42bad32e13 buildPythonPackage: refactor 2016-12-05 10:29:22 +01:00
Frederik Rietdijk
31e32b6d9e Python interpreters: add pkgs attribute
A package set is constructed for a specific interpreter. Therefore, we add the
possibility to override the package set to the interpreter. This should make it
easier to override the interpreter and the package set at the same time.
2016-12-05 09:43:44 +01:00
Dmitry Kalinkin
46dd9dfc52 numpy: enable numpy.distutils patch only if it's also in distutils
Fixes: 095095c ('python: add C++ compiler support for distutils')
2016-10-26 21:29:55 +00:00
Frederik Rietdijk
7077a270bf Merge remote-tracking branch 'upstream/master' into HEAD 2016-10-26 13:06:43 +02:00
Frederik Rietdijk
85a87f5155 mkPythonDerivation: append postFixup, fixes #9204 2016-10-26 10:46:12 +02:00
Frederik Rietdijk
fea23020fe Merge pull request #19585 from veprbl/distutils_fix
python: add C++ compiler support for distutils
2016-10-25 14:16:28 +02:00
Frederik Rietdijk
3b9d7260a3 python27: add missing parameter
that was accidentally removed during merging.
2016-10-22 22:33:15 +02:00
Frederik Rietdijk
e56832d730 Merge remote-tracking branch 'upstream/master' into HEAD 2016-10-22 17:23:24 +02:00
Vladimír Čunát
d26a6a87df Merge #19450: python: fix 'nproc not found' on darwin 2016-10-22 16:49:44 +02:00
Dmitry Kalinkin
95237f828b
python: fix 'nproc not found' on darwin
Fixes: 58b862b75 ('darwin purity: pythonPackages.pandas')
Cc: @pikajude
2016-10-19 19:29:17 -04:00
Frederik Rietdijk
2081a69092 pypy: fix build 2016-10-18 23:16:10 +02:00
Frederik Rietdijk
635b4fbce8 Python3: also create symlink pkgconfig/python.pc 2016-10-18 23:16:03 +02:00
Aneesh Agrawal
708822250e Python 3.x: Add python symlink
Add a symlink for "python" in the python3 derivation to provide a
default Python executable.
2016-10-18 23:14:31 +02:00
Dmitry Kalinkin
095095c479
python: add C++ compiler support for distutils
This should help with builds against clang
2016-10-17 11:23:13 -04:00
Frederik Rietdijk
107c035bf0 Python: remove pythonSmall
In #19309 a separate output for tkinter was added.

Several dependencies of Python depend indirectly on Python. We have the
following two paths:
```
‘python-2.7.12’ - ‘tk-8.6.6’ - ‘libXft-2.3.2’ - ‘libXrender-0.9.10’ -
‘libX11-1.6.4’ - ‘libxcb-1.12’ - ‘libxslt-1.1.29’- ‘libxml2-2.9.4’ -
‘python-2.7.12’

‘python-2.7.12’ - ‘tk-8.6.6’ - ‘libXft-2.3.2’ - ‘fontconfig-2.12.1’ -
‘dejavu-fonts-2.37’ - ‘fontforge-20160404’ - ‘python-2.7.12’
```
Because only `tkinter` needs this, I added
```
pythonSmall = python.override {x11Support = false;};
```
to break the infinite recursion. We also still have the output
`tkinter`.

However, we might as well build without x11Support by default. Then we build with x11Support as well so we get the tkinter module and put that in a separate package.
2016-10-16 14:31:26 +02:00
Frederik Rietdijk
80433e7030 Python: further unify expressions interpreters 2016-10-14 15:52:14 +02:00
Frederik Rietdijk
cffdffe1f6 Merge pull request #19309 from FRidh/outputs
Python: use separate output for tkinter
2016-10-13 10:40:14 +02:00
Louis Taylor
39e8623906
Python 3.6: 3.6b1 -> 3.6b2 2016-10-11 22:29:22 +01:00
Frederik Rietdijk
104c50dd1a Python: remove modules and pythonFull 2016-10-10 10:33:24 +02:00
Frederik Rietdijk
a2720a25b9 Python 3.6: separate output for tkinter 2016-10-10 10:33:24 +02:00
Frederik Rietdijk
0a08fcd858 Python 3.5: separate output for tkinter 2016-10-10 10:33:24 +02:00
Frederik Rietdijk
0bd4b31f87 Python 3.4: separate output for tkinter 2016-10-10 10:33:24 +02:00
Frederik Rietdijk
cf0932ee84 Python 3.3: separate output for tkinter 2016-10-10 10:33:24 +02:00
Frederik Rietdijk
bee439207b Python 2.7: separate output for tkinter 2016-10-10 10:33:24 +02:00
Eelco Dolstra
7a4209c356 Merge remote-tracking branch 'origin/master' into staging 2016-09-20 17:46:09 +02:00
Frederik Rietdijk
8c30f3d962 python3.6: 3.6.0a3 -> 3.6.0b1
/Lib/plat* has been removed in this release.
http://bugs.python.org/issue28027
2016-09-20 15:48:32 +02:00
Frederik Rietdijk
63ec0068a7 Python on Nix is not manylinux1 compatible
Fixes https://github.com/NixOS/nixpkgs/issues/18484
2016-09-20 15:48:32 +02:00
Frederik Rietdijk
2b66563cde Python: make versions/prefixes more similar 2016-09-20 15:48:32 +02:00
Frederik Rietdijk
1dbb72b91a python.buildenv: don't filter non-python packages
python.buildenv is used to build an env that provides binaries that can
import all modules that were passed in to the env.

Before this change it filtered the propagatedBuildInputs to remove all
non-Python packages, thereby possibly reducing the amount of packages
that were referenced. However, Python packages often don't have non-
Python packages as propagatedBuildInputs. And occasionally, we do want
to be able to add other packages to the env.
2016-09-17 14:28:12 +02:00
Vladimír Čunát
52e1a198cf Merge branch 'master' into staging 2016-09-17 00:31:34 +02:00
Herwig Hochleitner
1172c6be9b pypy: 5.4.0 -> 5.4.1 2016-09-14 18:11:17 +02:00
Dan Peebles
7b9d3f8605 stdenv-darwin: upgrade a few more things
It's a long build and generally painful to split into smaller commits,
so I apologize for lumping many changes into one commit but this is far
easier.

There are still several outdated parts of the darwin stdenv but these
changes should bring us closer to the goal.

Fixes #18461
2016-09-12 01:46:44 -04:00
Josef Kemetmueller
b7819e38c4 python3.x: Patch extra stack size on darwin
Compiling python with "-Wl,-stack_size,1000000" causes problems when
compiling for example pygobject3. pygobject3 uses "python3.x-config
--ldflags" during installation and then fails when
"-Wl,-stack_size,1000000" is present. Maybe we should investigate
removing this during the build of pyobject3, but this stack_size flag is
also not used on the popular darwin homebrew-core channel for python3.5,
so it seems safe to remove it.
2016-09-04 10:14:51 +02:00
Frederik Rietdijk
203004d59a pypy27: 5.3.1 -> 5.4.0 2016-09-03 11:42:55 +02:00
Tuomas Tynkkynen
e2c6740c37 Merge commit 'adaee73' from staging into master
This one was already merged into release-16.09, so let's not have the
stable branch is ahead of master and confuse things. In addition to
that, currently we have an odd situation that master has less things
actually finished building than in staging.

Conflicts:
	pkgs/data/documentation/man-pages/default.nix
2016-09-03 01:02:51 +03:00
Eelco Dolstra
7f520bdad8 Revert "Python 2.6: add less"
This reverts commit 6b11c96c86.
2016-09-01 18:58:14 +02:00
Eelco Dolstra
1e370d7de4 Revert "Python 2.7: add less"
This reverts commit bce5a51a9f.
2016-09-01 18:58:09 +02:00
Eelco Dolstra
0810decaa7 python-3.5: Drop dependency on Berkeley DB
The previous commit revealed that Python wasn't actually using
Berkeley DB; it only had it in its closure due to the build-time flag
dump in Makefile and _sysconfigdata.py. When Python detects both GNU
gdbm and Berkeley DB at build time, it will use the former.
2016-09-01 18:57:43 +02:00
Eelco Dolstra
fdd7399a3c python-3.5: Also remove -L flags
This reduces the Python closure size by another 10 MiB.
2016-09-01 18:57:43 +02:00
Eelco Dolstra
168192f116 python-3.5: Eliminate -dev paths from the runtime closure
This reduces Python's closure size from 200 MiB to 129 MiB. Even
better would be to get move tkinter to a separate output or package
(since that would get rid of all X11 stuff), but that's a bit harder.
2016-09-01 18:57:43 +02:00
Frederik Rietdijk
e1d1a573e5 Python: fix mkPythonDerivation doCheck 2016-09-01 17:11:32 +02:00
Frederik Rietdijk
4f6b6f1472 pythonPackages: use mkPythonDerivation 2016-09-01 16:16:31 +02:00
Frederik Rietdijk
3e05cce97c Python: separate buildPythonPackage into two functions
1. mkDerivation which is used when the source is without setup.py and
not a wheel
2. buildPythonPackage which is used as before and calls mkDerivation
2016-09-01 16:16:31 +02:00
Frederik Rietdijk
725c37b4d3 Python: move wrapPython into own file 2016-09-01 16:16:31 +02:00
Frederik Rietdijk
b080748d42 Python: move python-modules/generic to interpreter folder 2016-09-01 16:16:31 +02:00
Domen Kožar
10b45d654a fix eval after 0c3b1112af 2016-09-01 13:05:45 +02:00
Eelco Dolstra
0c3b1112af Revert "Python 3.5: add less"
This reverts commit e261818c68 and
others. Having Python propagate less really doesn't make sense.
2016-09-01 12:54:46 +02:00
Tuomas Tynkkynen
c3bcb4e1ce treewide: Use explicit 'dev' references to glibc 2016-08-30 03:11:09 +03:00
Franz Pletz
bd739d1fae pypy: disable pic hardening on i686 2016-08-25 01:54:55 +02:00
Frederik Rietdijk
84bcaf5461 pypy27: 5.1.1 -> 5.3.1 2016-08-17 23:12:30 +02:00
Frederik Rietdijk
1da6775775 Python: move interpreters
Move Python interpreters (CPython, PyPy) to same folder and share
layout.
2016-07-28 17:10:15 +02:00
Frederik Rietdijk
b49bedd75b Python 2.7.11 -> 2.7.12 2016-07-19 11:49:38 +02:00
Frederik Rietdijk
6b11c96c86 Python 2.6: add less 2016-07-19 11:11:03 +02:00
Frederik Rietdijk
bce5a51a9f Python 2.7: add less 2016-07-19 10:27:14 +02:00
Frederik Rietdijk
c59d211b4b Python 3.3: add less 2016-07-19 10:27:14 +02:00
Frederik Rietdijk
b410631d6d Python 3.4: add less 2016-07-19 10:27:14 +02:00
Frederik Rietdijk
e261818c68 Python 3.5: add less 2016-07-19 10:27:14 +02:00
Frederik Rietdijk
773f6225cb Python 3.6: add less 2016-07-19 10:27:14 +02:00
Louis Taylor
7c75fa4bc2 python: add alpha release of 3.6
This might be jumping the gun a little, but I needed to use 3.6 locally
and thought I may as well push it upstream.
2016-07-19 10:27:14 +02:00
Frederik Rietdijk
f04b018111 python 3.4.4 -> 3.4.5 2016-07-10 19:16:56 +02:00
Frederik Rietdijk
52bc8d203f python 3.5.1 -> 3.5.2 2016-07-10 19:05:12 +02:00
Tuomas Tynkkynen
2cf8cb7f46 Merge remote-tracking branch 'upstream/master' into staging 2016-07-05 13:34:36 +03:00
Frederik Rietdijk
880475bbd5 python: fix modules in buildEnv, closes #16646
Python 2.7 on Nix is stripped of some modules, which can be added when
needed. This was broken with python.buildEnv.
2016-07-01 16:16:55 +02:00
Eelco Dolstra
de1b4e71c1 python-2.7: Don't use ldconfig and speed up uuid load 2016-07-01 14:57:40 +02:00
Bjørn Forsman
bd01fad0ed Captialize meta.description of all packages
In line with the Nixpkgs manual.

A mechanical change, done with this command:

  find pkgs -name "*.nix" | \
      while read f; do \
          sed -e 's/description\s*=\s*"\([a-z]\)/description = "\u\1/' -i "$f"; \
      done

I manually skipped some:

* Descriptions starting with an abbreviation, a user name or package name
* Frequently generated expressions (haskell-packages.nix)
2016-06-20 13:55:52 +02:00
Benno Fünfstück
c3ed3914bb python: add python.withPackages function
Fixes #15801
2016-05-29 15:12:23 +02:00
Domen Kožar
b49bf121b8 rename iElectric to domenkozar to match GitHub 2016-05-17 13:00:47 +01:00
Peter Simons
8e462995ba Bring my stdenv.lib.maintainers user name in line with my github nick. 2016-05-16 22:49:55 +02:00
Frederik Rietdijk
022f5fdf83 Merge pull request #15477 from FRidh/pythonbuildinputs
Python: be explicit about buildInputs
2016-05-16 12:11:39 +02:00
Frederik Rietdijk
91834cfe3e Python 3.5: be explicit about buildInputs 2016-05-16 12:10:33 +02:00
Frederik Rietdijk
56e96b8b10 Python 3.4: be explicit about buildInputs 2016-05-16 12:10:32 +02:00
Frederik Rietdijk
58ec2d47ea Python 3.3: be explicit about buildInputs 2016-05-16 12:10:32 +02:00
Rok Garbas
913e869f8d remove python32 due to pip 8.1.2 not supporting python 3.2 anymore 2016-05-15 15:09:23 +02:00
Vladimír Čunát
387915e99c python3*: port the fix from parent commit
I really love such copied expressions...
but this case was easy compared to usual consequences
of file-copying in long-running branches.
2016-04-26 10:52:18 +02:00
Vladimír Čunát
626e5bd4dd python3: fix build after 5ff40dded, refactor
The path list was passed in a format not suitable for gcc command-line.
Also, let's utilize that we had `with stdenv.lib;`.
/cc @abbradar.
2016-04-26 10:43:48 +02:00
Nikolay Amiantov
5ff40ddedf add get* helper functions and mass-replace manual outputs search with them 2016-04-25 13:24:39 +03:00
Tuomas Tynkkynen
34922a3951 python2: Fix on non-Linux
The location of this 'regen' script (whatever is does) depends on the
platform. AFAICT it always exists due to this:

$(srcdir)/Lib/$(PLATDIR):
        mkdir $(srcdir)/Lib/$(PLATDIR)
        cp $(srcdir)/Lib/plat-generic/regen $(srcdir)/Lib/$(PLATDIR)/regen
2016-02-13 16:03:55 -05:00
Tuomas Tynkkynen
78e62da7f1 python2: Fix on Darwin
Presumably $out/lib/python*/plat-linux2/ is a Linux-only thing.
2016-02-13 15:52:23 -05:00
Vladimír Čunát
716aac2519 Merge branch 'staging' into closure-size 2016-01-19 09:55:31 +01:00
Domen Kožar
78096e9b89 python: 3.4.3 -> 3.4.4 2016-01-07 11:19:40 +01:00
Luca Bruno
5b0352a6a4 Merge branch 'master' into closure-size 2015-12-11 18:31:00 +01:00
Rok Garbas
7e2a828fd6 python35: 3.5.0 -> 3.5.1 2015-12-08 04:35:17 +01:00
Rok Garbas
124e70a459 python27: 2.7.10 -> 2.7.11 2015-12-08 04:35:17 +01:00
Vladimír Čunát
263fd55d4b Merge recent staging built on Hydra
http://hydra.nixos.org/eval/1231884
Only Darwin jobs seem to be queued now,
but we can't afford to wait for that single build slave.
2015-12-05 11:11:51 +01:00
Domen Kožar
dc977f78a8 Merge pull request #11147 from FRidh/wrapper
python: apply wrapper to all packages in python.buildEnv extraLibs
2015-11-30 11:08:19 +01:00
Frederik Rietdijk
12e8f3c6aa python: apply wrapper to all packages in python.buildEnv extraLibs
Currently, when constructing a buildEnv and adding packages via
extraLibs, then binaries in extraLibs cannot access the other Python
modules. An example is having ipython/jupyter in extraLibs; in that case
ipython cannot import any other modules.
2015-11-30 10:52:57 +01:00
Vladimír Čunát
333d69a5f0 Merge staging into closure-size
The most complex problems were from dealing with switches reverted in
the meantime (gcc5, gmp6, ncurses6).
It's likely that darwin is (still) broken nontrivially.
2015-11-20 14:32:58 +01:00
Jude Taylor
df80090d09 use per-derivation sandbox profiles 2015-11-19 11:31:06 -08:00
Jude Taylor
58b862b750 darwin purity: pythonPackages.pandas 2015-11-03 14:00:51 -08:00
Asko Soukka
caafa68a7e darwin: python35: add needed inputs 2015-10-22 07:56:40 +03:00
Jude Taylor
a7f478a368 darwin: add needed inputs to python-3.4 2015-10-20 15:54:33 -07:00
Tuomas Tynkkynen
0054c8aa5a python3: Use correct build inputs for multi-output deps
Without this, python will silently build without native extensions (e.g
openssl); this causes wget to fail its tests for instance.

vcunat added python-3.5.
2015-10-03 14:08:51 +02:00
Vladimír Čunát
5227fb1dd5 Merge commit staging+systemd into closure-size
Many non-conflict problems weren't (fully) resolved in this commit yet.
2015-10-03 13:33:37 +02:00
Vladimír Čunát
21e3ff658a x11: replace its usage by xlibsWrapper directly
Scilab note: the parameters already had pointed to nonexistent dirs
before this set of refactoring. But that config wasn't even used by
default.
2015-09-15 12:08:24 +02:00
Domen Kožar
cabb050528 add python35 and python35Packages 2015-09-15 07:46:46 +02:00
Nikolay Amiantov
344e522166 python: add .env for convenient nix-shell's 2015-08-17 21:22:50 +03:00
William A. Kennington III
333f145d76 Merge branch 'master.upstream' into staging.upstream 2015-07-13 15:11:31 -07:00
James Cook
98fb18af3e python-2.6: mark broken because being insecure for years 2015-07-12 10:12:33 +02:00
Jude Taylor
e3927f6b92 remove unbuildables from impure darwin stdenv 2015-06-19 22:08:11 -07:00
Jude Taylor
f048ff3969 darwin purity: python-2.7 2015-06-19 12:56:39 -07:00
Vladimír Čunát
61596bf405 Merge #8363: pure-darwin stdenv 2015-06-18 22:38:08 +02:00
Jude Taylor
fa9c81f694 pure darwin stdenv 2015-06-18 12:37:41 -07:00
William A. Kennington III
4c8f84e8af python: Correctly detect ncurses opaque api 2015-06-15 17:55:44 -07:00
Rok Garbas
617c16f8f6 cygwin: python27 gdbm module needs gettext 2015-06-12 12:17:12 +02:00
Rok Garbas
93d507cac8 cygwin: for 2.7.10 export-PyNode_SizeOf patch not needed anymore 2015-05-28 14:15:47 +02:00
Florian Friesdorf
5f4a9c3391 cygwin: python-2.7 2015-05-28 10:53:36 +02:00
Domen Kožar
c918903381 python: 2.7.9 -> 2.7.10 2015-05-24 18:55:53 +02:00
Domen Kožar
3dc204f42e fix eval 2015-05-14 20:21:56 +02:00
Domen Kožar
d769b52307 python: pass stdenv.glibc to crypt module to expose crypt.so 2015-05-13 18:39:50 +02:00
aszlig
a7028d3d07
python2: Pass configureFlags to modules as well.
Fixes regression from 086e801d51.

The switch tu UCS-4 only happened for the main Python interpreter and
libraries, but the extension modules were using the same source but
without any configureFlags, so the extensions still referred to UCS-2
symbols.

Tested module builds of Python 2.7 and all modules except crypto fail.
Also tested against sqlite3 module of Python 2.6, although for other
modules there still seems to be an unrelated build failure with Tcl/Tk
libraries, so we might need to fix that later.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2015-05-12 18:06:33 +02:00
aszlig
55e66db0fa
python2: Don't fail silently on module build.
A build output of such a failure can be found here:

http://hydra.nixos.org/build/21994789/nixlog/1/raw

The build_ext command doesn't return non-zero if it fails but instead
produces a file with a "_failed.so" suffix, which we're now checking
after the build_ext command.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2015-05-12 18:06:33 +02:00
Dario Bertini
086e801d51
Enable old pythons' wide builds 2015-05-06 07:50:52 +01:00
Vladimír Čunát
2b5e7bd2ba python2*: fix modules as well after 4101db0be
There was a typo that failed them.
Also, drop pkgconfig again, as it seems unused; and fix python26.

Now all python*.modules build, except for python26.tkinter
which fails on master as well.
2015-04-19 16:31:05 +02:00
Vladimír Čunát
4101db0bec python2*: fix detecting C libs, no header references 2015-04-18 21:00:26 +02:00
Jan Malakhovski
a3e00bf6c4 python 2.7: add x11Support option 2015-03-29 23:30:39 +00:00
Domen Kožar
61c3aa5047 python: 3.4.2 -> 3.4.3 2015-02-25 15:21:14 +01:00
Dario Bertini
57577f2019
Explicitly specify the pythonVersion and use that together with versionOlder/versionAtLeast to specify bounds 2015-01-24 10:38:54 +00:00
Domen Kožar
652cfc36e9 python2.6: add a patch to fix parallel make failure
(cherry picked from commit 23a202519cb1d8704a0b4294d8d13a224efb1a74)
Signed-off-by: Domen Kožar <domen@dev.si>
2015-01-18 19:20:07 +01:00
John Wiegley
ce59dec5bb python34: as a workaround, explicitly set MACOSX_DEPLOYMENT_TARGET
Otherwise, it crashes with a segfault while running the tests.
2015-01-06 09:56:08 -05:00
Shea Levy
05edd656f6 Missed gcc refs 2014-12-26 12:28:15 -05:00
John Wiegley
28b6fb61e6 Change occurrences of gcc to the more general cc
This is done for the sake of Yosemite, which does not have gcc, and yet
this change is also compatible with Linux.
2014-12-26 11:06:21 -06:00
Domen Kožar
272206e706 python: 2.7.8 -> 2.7.9
(cherry picked from commit 1f059cd5a91fee7d4ec50c7272bca5bc6733f245)
Signed-off-by: Domen Kožar <domen@dev.si>
2014-12-14 19:05:59 +01:00
Vladimír Čunát
b4af993c3f Merge branch 'master' into staging
Conflicts (simple):
	pkgs/development/lisp-modules/clwrapper/setup-hook.sh
2014-11-14 14:28:23 +01:00
Domen Kožar
39d1bc755e python: add python.interpreter attribute 2014-11-13 00:42:36 +01:00
Luca Bruno
6af0d6974f Merge branch 'master' into staging 2014-11-10 10:03:52 +01:00
Domen Kožar
c1d6a4a8fb remove unused pythonLinkmeWrapper 2014-11-08 20:19:55 +01:00
Peter Simons
a9c53037fa Merge remote-tracking branch 'origin/master' into staging. 2014-11-02 16:15:53 +01:00
Domen Kožar
92503a0424 python: 3.3.5 -> 3.3.6 2014-11-01 04:50:26 +01:00
Domen Kožar
7fe78cad98 python: 3.2.5 -> 3.2.6 2014-11-01 04:50:26 +01:00
Peter Simons
b11060d8db Merge remote-tracking branch 'origin/master' into staging. 2014-10-31 11:14:24 +01:00
Domen Kožar
0272a469a9 Merge pull request #4646 from geerds/python26-sqlite3
Fix python26Packages.sqlite3
2014-10-24 16:13:45 +02:00
Eelco Dolstra
f4be4f5e54 Merge remote-tracking branch 'origin/master' into staging 2014-10-24 12:24:13 +02:00
Rok Garbas
c44c00d56c python: adding test/test_support.py module in all python versions
- test/test_support.py module is used by many libraries which backport python
  3.0 functionality to 2.6/2.7
- enable subprocess32 tests (now passing for python 2.6/2.7)
2014-10-24 10:44:15 +02:00
Jascha Geerds
d49556a976 Fix python26Packages.sqlite3 2014-10-23 22:56:55 +02:00
Vladimír Čunát
2cf17b0802 Merge recent master into staging
Hydra nixpkgs: ?compare=1156478
2014-10-23 17:40:41 +02:00
Domen Kožar
2d6582d14e python27FullBuildEnv -> python.buildEnv for all interpreters 2014-10-19 19:48:18 +02:00
Eelco Dolstra
09dc132e04 Merge remote-tracking branch 'origin/master' into staging
Conflicts:
	pkgs/development/libraries/poppler/default.nix
2014-10-16 15:16:50 +02:00
Domen Kožar
74fde7c388 Merge pull request #4495 from NixOS/pythonFull_improvements
PythonFull improvements
2014-10-16 13:24:18 +02:00
Domen Kožar
68b183e309 simplify 2014-10-16 13:13:13 +02:00
William A. Kennington III
eed5207845 python27: Remove avoid daemon thread shutdown #i21963 2014-10-16 11:28:37 +02:00
Domen Kožar
a2a7abc67c pythonFull -> python with all modules, pythonFullWithPkgs -> buildEnv 2014-10-13 21:35:21 +02:00
Domen Kožar
8de9ac5bd4 python: make 2.6 and 2.7 expr similar, introduce includeModules
When includeModules is true, python is built with all optional modules
as part of derivation.
2014-10-13 21:35:21 +02:00
Domen Kožar
482779e582 python: get rid of ssl module as it's always builtin 2014-10-11 20:23:51 +02:00
Domen Kožar
9aeb10fa12 python: 3.4.1 -> 3.4.2 2014-10-08 13:43:36 +02:00
Alexander Kjeldaas
3bf4362381 python: improve library determinism
1) Make the core python libraries deterministic.
2) Make the python libraries created by glib deterministic.

@vcunat put back the removal of share/gtk-doc in glib.
2014-09-13 15:03:12 +02:00
Vladimír Čunát
82797f98f2 Merge branch 'staging' into modular-stdenv
Conflicts:
	pkgs/development/interpreters/perl/5.10/setup-hook.sh
	pkgs/development/interpreters/perl/5.8/setup-hook.sh
	pkgs/stdenv/linux/default.nix
2014-09-08 18:24:58 +02:00
Vladimír Čunát
1e389c976c merge 'staging' into modular-stdenv
In 2c62a36b77 the messages in pkgs/stdenv/generic/default.nix
were not merged correctly.

Conflicts:
	pkgs/stdenv/generic/default.nix
2014-09-08 18:16:54 +02:00
Domen Kožar
33949a413c python34: include a patch to fix http://bugs.python.org/issue21121 2014-08-30 20:43:31 +02:00
Florian Friesdorf
53490bd17e include ssl with python2.6 as is the case with 2.7
Signed-off-by: Domen Kožar <domen@dev.si>
2014-08-12 13:33:23 +02:00
Eelco Dolstra
e3f7dbbac8 Cleanup: Use += to append to envHooks 2014-08-09 12:47:05 +02:00
Florian Friesdorf
4fd6168e8a python.isPyXY markers 2014-07-10 16:40:35 +02:00
Florian Friesdorf
7dde165353 pythonX.Y sitePackages passthru
Let python tell you the correct path for site-packages.
2014-07-10 16:34:45 +02:00
Charles Strahan
08f2ce1172 Fix Python 3.{2,3,4} on Darwin.
This removes the `-lcrypt` linker flag when compiling under Darwin.
2014-07-09 00:18:11 -04:00
Domen Kožar
2e70c676ca python: link gcc_s
Signed-off-by: Domen Kožar <domen@dev.si>
2014-07-02 19:57:16 +02:00
Domen Kožar
cfcbfb494e python: 2.7.7 -> 2.7.8 2014-07-02 18:45:34 +02:00
Vladimír Čunát
5a98b9f514 Merge recent master into p/stdenv
Merged just before the pypi update, as it seems to cause problems on Hydra.
2014-06-09 19:07:31 +02:00
Domen Kožar
73169b3a37 python: 2.7.6 -> 2.7.7 2014-06-04 16:18:36 +02:00
Vladimír Čunát
872860e6de Merge #1187 into p/stdenv
Tested building firefox, kdelibs, evince on x86_64-linux.
2014-05-29 22:16:07 +02:00
Domen Kožar
53465c35a0 python: 3.4.0 -> 3.4.1 2014-05-22 09:05:38 +02:00
Ricardo M. Correia
f3967570e7 python-3.4: Add support for grsecurity 2014-05-15 13:25:50 +02:00
Ricardo M. Correia
982c84514b python-3.3: Add support for grsecurity 2014-05-15 13:25:50 +02:00
Ricardo M. Correia
6a4fd79b51 python-2.7: Add support for grsecurity 2014-05-15 13:25:50 +02:00
James Cook
21cb9c24f0 Patch python32 for CVE-2014-1912. 2014-04-13 05:15:19 +02:00