evcc: 0.131.4 -> 0.131.5
[NixPkgs.git] / pkgs / by-name / py / pyspread / package.nix
blobcba36667a23970d5960f29c09154cc4776c22d7b
1 { lib
2 , python3
3 , fetchPypi
4 , copyDesktopItems
5 , libsForQt5
6 , makeDesktopItem
7 }:
9 let
10   # get rid of rec
11   pname = "pyspread";
12   version = "2.3";
13   src = fetchPypi {
14     inherit pname version;
15     hash = "sha256-vbDZo/kYtnxmOd3JSEG9+0yD0nfM/BGcAySfBD2xogw=";
16   };
17   inherit (libsForQt5)
18     qtsvg
19     wrapQtAppsHook;
21 python3.pkgs.buildPythonApplication {
22   inherit pname version src;
24   nativeBuildInputs = [
25     copyDesktopItems
26     wrapQtAppsHook
27   ];
29   buildInputs = [
30     qtsvg
31   ];
33   propagatedBuildInputs = with python3.pkgs; [
34     python-dateutil
35     markdown2
36     matplotlib
37     numpy
38     pyenchant
39     pyqt5
40     setuptools
41   ];
43   strictDeps = true;
45   doCheck = false; # it fails miserably with a core dump
47   pythonImportsCheck = [ "pyspread" ];
49   desktopItems = [
50     (makeDesktopItem {
51       name = "pyspread";
52       exec = "pyspread";
53       icon = "pyspread";
54       desktopName = "Pyspread";
55       genericName = "Spreadsheet";
56       comment = "A Python-oriented spreadsheet application";
57       categories = [ "Office" "Development" "Spreadsheet" ];
58     })
59   ];
61   preFixup = ''
62     makeWrapperArgs+=("''${qtWrapperArgs[@]}")
63   '';
65   meta = {
66     homepage = "https://pyspread.gitlab.io/";
67     description = "Python-oriented spreadsheet application";
68     longDescription = ''
69       pyspread is a non-traditional spreadsheet application that is based on and
70       written in the programming language Python. The goal of pyspread is to be
71       the most pythonic spreadsheet.
73       pyspread expects Python expressions in its grid cells, which makes a
74       spreadsheet specific language obsolete. Each cell returns a Python object
75       that can be accessed from other cells. These objects can represent
76       anything including lists or matrices.
77     '';
78     license = with lib.licenses; [ gpl3Plus ];
79     mainProgram = "pyspread";
80     maintainers = with lib.maintainers; [ AndersonTorres ];
81   };