diff --git a/pkgs/development/python-modules/django-import-export/default.nix b/pkgs/development/python-modules/django-import-export/default.nix new file mode 100644 index 000000000000..8ff91dfbbdfc --- /dev/null +++ b/pkgs/development/python-modules/django-import-export/default.nix @@ -0,0 +1,42 @@ +{ lib +, fetchFromGitHub +, buildPythonPackage +, python +, chardet +, django +, diff-match-patch +, pytz +, tablib +}: + +buildPythonPackage rec { + pname = "django-import-export"; + version = "2.8.0"; + + src = fetchFromGitHub { + owner = "django-import-export"; + repo = pname; + rev = version; + sha256 = "sha256-km6TQq4OZZtx9/lgBzS3tEifAYjkkUX//9FRATDLX/0="; + }; + + propagatedBuildInputs = [ diff-match-patch django tablib ] + ++ (with tablib.optional-dependencies; html ++ ods ++ xls ++ xlsx ++ yaml); + + checkInputs = [ chardet pytz ]; + + checkPhase = '' + runHook preCheck + ${python.interpreter} tests/manage.py test core --settings=settings + runHook postCheck + ''; + + pythonImportsCheck = [ "import_export" ]; + + meta = with lib; { + description = "Django application and library for importing and exporting data with admin integration"; + homepage = "https://github.com/django-import-export/django-import-export"; + license = licenses.bsd2; + maintainers = with maintainers; [ sephi ]; + }; +} diff --git a/pkgs/development/python-modules/markuppy/default.nix b/pkgs/development/python-modules/markuppy/default.nix new file mode 100644 index 000000000000..e10b7b4bb1d3 --- /dev/null +++ b/pkgs/development/python-modules/markuppy/default.nix @@ -0,0 +1,24 @@ +{ lib, fetchPypi, buildPythonPackage }: + +buildPythonPackage rec { + pname = "markuppy"; + version = "1.14"; + + src = fetchPypi { + pname = "MarkupPy"; + inherit version; + sha256 = "sha256-Gt7iwKVCrzeP6EVI/29rAWjzy39Ca0aWEDiivPqtDV8="; + }; + + # has no tests + doCheck = false; + + pythonImportsCheck = [ "MarkupPy" ]; + + meta = with lib; { + description = "An HTML/XML generator"; + homepage = "https://github.com/tylerbakke/MarkupPy"; + license = licenses.mit; + maintainers = with maintainers; [ sephi ]; + }; +} diff --git a/pkgs/development/python-modules/tablib/default.nix b/pkgs/development/python-modules/tablib/default.nix index f07691abdca7..468d8c7c54e6 100644 --- a/pkgs/development/python-modules/tablib/default.nix +++ b/pkgs/development/python-modules/tablib/default.nix @@ -1,6 +1,7 @@ { lib , buildPythonPackage , fetchPypi +, markuppy , odfpy , openpyxl , pandas @@ -37,7 +38,7 @@ buildPythonPackage rec { passthru.optional-dependencies = { all = [ - # markuppy + markuppy odfpy openpyxl pandas @@ -50,7 +51,7 @@ buildPythonPackage rec { tabulate ]; html = [ - # markuppy + markuppy ]; ods = [ odfpy diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ab37b9476ddc..63c854e268d7 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2542,6 +2542,8 @@ self: super: with self; { django_hijack = callPackage ../development/python-modules/django-hijack { }; # This package may need an older version of Django. Override the package set and set e.g. `django = super.django_1_9`. See the Nixpkgs manual for examples on how to override the package set. + django-import-export = callPackage ../development/python-modules/django-import-export { }; + django-ipware = callPackage ../development/python-modules/django-ipware { }; django-jinja = callPackage ../development/python-modules/django-jinja2 { }; @@ -5595,6 +5597,8 @@ self: super: with self; { markupsafe = callPackage ../development/python-modules/markupsafe { }; + markuppy = callPackage ../development/python-modules/markuppy { }; + markups = callPackage ../development/python-modules/markups { }; marshmallow = callPackage ../development/python-modules/marshmallow { };