1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, pythonOlder
5, importlib-metadata
6, matplotlib
7, numpy
8, pytestCheckHook
9, setuptools
10}:
11
12buildPythonPackage rec {
13 pname = "dufte";
14 version = "0.2.29";
15 format = "pyproject";
16 disabled = pythonOlder "3.6";
17
18 src = fetchFromGitHub {
19 owner = "nschloe";
20 repo = pname;
21 rev = "v${version}";
22 hash = "sha256:0ccsmpj160xj6w503a948aw8icj55mw9414xnmijmmjvlwhm0p48";
23 };
24
25 nativeBuildInputs = [
26 setuptools
27 ];
28
29 propagatedBuildInputs = [
30 matplotlib
31 numpy
32 ] ++ lib.optionals (pythonOlder "3.8") [
33 importlib-metadata
34 ];
35
36 preCheck = ''
37 export HOME=$(mktemp -d)
38 mkdir -p $HOME/.config/matplotlib
39 echo "backend: ps" > $HOME/.config/matplotlib/matplotlibrc
40 ln -s $HOME/.config/matplotlib $HOME/.matplotlib
41 '';
42
43 nativeCheckInputs = [
44 pytestCheckHook
45 ];
46
47 pythonImportsCheck = [ "dufte" ];
48
49 meta = with lib; {
50 description = "Clean matplotlib plots";
51 homepage = "https://github.com/nschloe/dufte";
52 license = licenses.gpl3Plus;
53 maintainers = with maintainers; [ ris ];
54 };
55}