nixpkgs/pkgs/shells/ipython/default.nix
Bjørn Forsman f4cc9c29c7 ipython: update 1.1.0 -> 2.0.0
Release notes:
http://ipython.org/ipython-doc/2/whatsnew/version2.0.html

Build and run tested terminal mode (default), notebook, qtconsole; all
works. (And the release notes list few backwards incompatible changes.)
2014-04-13 21:55:27 +02:00

58 lines
1.8 KiB
Nix

{ stdenv, fetchurl, buildPythonPackage, pythonPackages, pyqt4 ? null, sip ? null
, notebookSupport ? true # ipython notebook
, qtconsoleSupport ? true # ipython qtconsole
, pylabSupport ? true # ipython --pylab (backend: agg - no gui, just file)
, pylabQtSupport ? true # ipython --pylab=qt (backend: Qt4Agg - plot to window)
}:
# ipython qtconsole works with both pyside and pyqt4. But ipython --pylab=qt
# only works with pyqt4 (at least this is true for ipython 0.13.1). So just use
# pyqt4 for both.
assert qtconsoleSupport == true -> pyqt4 != null;
assert pylabQtSupport == true -> pyqt4 != null && sip != null;
buildPythonPackage rec {
name = "ipython-2.0.0";
namePrefix = "";
src = fetchurl {
url = "http://pypi.python.org/packages/source/i/ipython/${name}.tar.gz";
sha256 = "0fl9sznx83y2ck8wh5zr8avzjm5hz6r0xz38ij2fil3gin7w10sf";
};
propagatedBuildInputs = [
pythonPackages.readline
pythonPackages.sqlite3 # required for history support
] ++ stdenv.lib.optionals notebookSupport [
pythonPackages.tornado
pythonPackages.pyzmq
pythonPackages.jinja2
] ++ stdenv.lib.optionals qtconsoleSupport [
pythonPackages.pygments
pythonPackages.pyzmq
pyqt4
] ++ stdenv.lib.optionals pylabSupport [
pythonPackages.matplotlib
] ++ stdenv.lib.optionals pylabQtSupport [
pythonPackages.matplotlib
pyqt4
sip
];
doCheck = false;
meta = {
homepage = http://ipython.scipy.org/;
description = "An interactive computing environment for Python";
license = "BSD";
longDescription = ''
The goal of IPython is to create a comprehensive environment
for interactive and exploratory computing. It consists of an
enhanced interactive Python shell and an architecture for
interactive parallel computing.
'';
maintainers = [ stdenv.lib.maintainers.bjornfor ];
};
}