diff options
Diffstat (limited to 'pkgs/by-name/py/pyspread/package.nix')
-rw-r--r-- | pkgs/by-name/py/pyspread/package.nix | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/pkgs/by-name/py/pyspread/package.nix b/pkgs/by-name/py/pyspread/package.nix new file mode 100644 index 00000000000..43aa9b304f0 --- /dev/null +++ b/pkgs/by-name/py/pyspread/package.nix @@ -0,0 +1,82 @@ +{ lib +, python3 +, fetchPypi +, copyDesktopItems +, libsForQt5 +, makeDesktopItem +}: + +let + # get rid of rec + pname = "pyspread"; + version = "2.2.2"; + src = fetchPypi { + inherit pname version; + hash = "sha256-vbBu/dMXQf14F7qWvyHX5T8/AkjeZhaQt1eQ6Nidpsc="; + }; + inherit (libsForQt5) + qtsvg + wrapQtAppsHook; +in +python3.pkgs.buildPythonApplication { + inherit pname version src; + + nativeBuildInputs = [ + copyDesktopItems + wrapQtAppsHook + ]; + + buildInputs = [ + qtsvg + ]; + + propagatedBuildInputs = with python3.pkgs; [ + python-dateutil + markdown2 + matplotlib + numpy + pyenchant + pyqt5 + setuptools + ]; + + strictDeps = true; + + doCheck = false; # it fails miserably with a core dump + + pythonImportsCheck = [ "pyspread" ]; + + desktopItems = [ + (makeDesktopItem { + name = "pyspread"; + exec = "pyspread"; + icon = "pyspread"; + desktopName = "Pyspread"; + genericName = "Spreadsheet"; + comment = "A Python-oriented spreadsheet application"; + categories = [ "Office" "Development" "Spreadsheet" ]; + }) + ]; + + preFixup = '' + makeWrapperArgs+=("''${qtWrapperArgs[@]}") + ''; + + meta = { + homepage = "https://pyspread.gitlab.io/"; + description = "A Python-oriented spreadsheet application"; + longDescription = '' + pyspread is a non-traditional spreadsheet application that is based on and + written in the programming language Python. The goal of pyspread is to be + the most pythonic spreadsheet. + + pyspread expects Python expressions in its grid cells, which makes a + spreadsheet specific language obsolete. Each cell returns a Python object + that can be accessed from other cells. These objects can represent + anything including lists or matrices. + ''; + license = with lib.licenses; [ gpl3Plus ]; + mainProgram = "pyspread"; + maintainers = with lib.maintainers; [ AndersonTorres ]; + }; +} |