71 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			71 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
{ lib
 | 
						|
, stdenv
 | 
						|
, buildPythonPackage
 | 
						|
, fetchPypi
 | 
						|
, pythonOlder
 | 
						|
# Build dependencies
 | 
						|
, glibcLocales
 | 
						|
# Test dependencies
 | 
						|
, nose
 | 
						|
, pygments
 | 
						|
# Runtime dependencies
 | 
						|
, jedi
 | 
						|
, decorator
 | 
						|
, pickleshare
 | 
						|
, traitlets
 | 
						|
, prompt_toolkit
 | 
						|
, pexpect
 | 
						|
, appnope
 | 
						|
, backcall
 | 
						|
, fetchpatch
 | 
						|
}:
 | 
						|
 | 
						|
buildPythonPackage rec {
 | 
						|
  pname = "ipython";
 | 
						|
  version = "7.15.0";
 | 
						|
  disabled = pythonOlder "3.6";
 | 
						|
 | 
						|
  src = fetchPypi {
 | 
						|
    inherit pname version;
 | 
						|
    sha256 = "0ef1433879816a960cd3ae1ae1dc82c64732ca75cec8dab5a4e29783fb571d0e";
 | 
						|
  };
 | 
						|
 | 
						|
  prePatch = lib.optionalString stdenv.isDarwin ''
 | 
						|
    substituteInPlace setup.py --replace "'gnureadline'" " "
 | 
						|
  '';
 | 
						|
 | 
						|
  buildInputs = [ glibcLocales ];
 | 
						|
 | 
						|
  checkInputs = [ nose pygments ];
 | 
						|
 | 
						|
  propagatedBuildInputs = [
 | 
						|
    jedi
 | 
						|
    decorator
 | 
						|
    pickleshare
 | 
						|
    traitlets
 | 
						|
    prompt_toolkit
 | 
						|
    pygments
 | 
						|
    pexpect
 | 
						|
    backcall
 | 
						|
  ] ++ lib.optionals stdenv.isDarwin [appnope];
 | 
						|
 | 
						|
  LC_ALL="en_US.UTF-8";
 | 
						|
 | 
						|
  doCheck = false; # Circular dependency with ipykernel
 | 
						|
 | 
						|
  checkPhase = ''
 | 
						|
    nosetests
 | 
						|
  '';
 | 
						|
 | 
						|
  pythonImportsCheck = [
 | 
						|
    "IPython"
 | 
						|
  ];
 | 
						|
 | 
						|
  meta = with lib; {
 | 
						|
    description = "IPython: Productive Interactive Computing";
 | 
						|
    homepage = "http://ipython.org/";
 | 
						|
    license = licenses.bsd3;
 | 
						|
    maintainers = with maintainers; [ bjornfor fridh ];
 | 
						|
  };
 | 
						|
}
 |