nixpkgs/pkgs/development/python-modules/dynd/default.nix
Profpatsch 4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
Part of: https://github.com/NixOS/nixpkgs/issues/108938

meta = with stdenv.lib;

is a widely used pattern. We want to slowly remove
the `stdenv.lib` indirection and encourage people
to use `lib` directly. Thus let’s start with the meta
field.

This used a rewriting script to mostly automatically
replace all occurances of this pattern, and add the
`lib` argument to the package header if it doesn’t
exist yet.

The script in its current form is available at
https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
2021-01-11 10:38:22 +01:00

46 lines
1.2 KiB
Nix

{ lib, stdenv
, buildPythonPackage
, isPyPy
, isPy3k
, cython
, numpy
, pkgs
}:
buildPythonPackage rec {
version = "0.7.2";
pname = "dynd";
disabled = isPyPy || !isPy3k; # tests fail on python2, 2018-04-11
src = pkgs.fetchFromGitHub {
owner = "libdynd";
repo = "dynd-python";
rev = "v${version}";
sha256 = "19igd6ibf9araqhq9bxmzbzdz05vp089zxvddkiik3b5gb7l17nh";
};
# setup.py invokes git on build but we're fetching a tarball, so
# can't retrieve git version. We hardcode:
preConfigure = ''
substituteInPlace setup.py --replace "ver = check_output(['git', 'describe', '--dirty'," "ver = '${version}'"
substituteInPlace setup.py --replace "'--always', '--match', 'v*']).decode('ascii').strip('\n')" ""
'';
dontUseCmakeConfigure = true;
# Python 3 works but has a broken import test that I couldn't
# figure out.
doCheck = !isPy3k;
nativeBuildInputs = [ pkgs.cmake ];
buildInputs = [ pkgs.libdynd.dev cython ];
propagatedBuildInputs = [ numpy pkgs.libdynd ];
meta = with lib; {
homepage = "http://libdynd.org";
license = licenses.bsd2;
description = "Python exposure of dynd";
maintainers = with maintainers; [ teh ];
};
}