about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/mail/mailman/hyperkitty.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/mail/mailman/hyperkitty.nix')
-rw-r--r--nixpkgs/pkgs/servers/mail/mailman/hyperkitty.nix45
1 files changed, 45 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/mail/mailman/hyperkitty.nix b/nixpkgs/pkgs/servers/mail/mailman/hyperkitty.nix
new file mode 100644
index 000000000000..5ed5b74d309a
--- /dev/null
+++ b/nixpkgs/pkgs/servers/mail/mailman/hyperkitty.nix
@@ -0,0 +1,45 @@
+{ stdenv, buildPythonPackage, fetchPypi, isPy3k, isort, coverage, mock
+, robot-detection, django_extensions, rjsmin, cssmin, django-mailman3
+, django-haystack, flufl_lock, networkx, dateutil, defusedxml
+, django-paintstore, djangorestframework, django, django-q
+, django_compressor, beautifulsoup4, six, psycopg2, whoosh, elasticsearch
+}:
+
+buildPythonPackage rec {
+  pname = "HyperKitty";
+  version = "1.3.3";
+  disabled = !isPy3k;
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0p85r9q6mn5as5b39xp9hkkipnk0156acx540n2ygk3qb3jd4a5n";
+  };
+
+  nativeBuildInputs = [ isort ];
+  propagatedBuildInputs = [
+    robot-detection django_extensions rjsmin cssmin django-mailman3
+    django-haystack flufl_lock networkx dateutil defusedxml
+    django-paintstore djangorestframework django django-q
+    django_compressor six psycopg2 isort
+  ];
+
+  # Some of these are optional runtime dependencies that are not
+  # listed as dependencies in setup.py.  To use these, they should be
+  # dependencies of the Django Python environment, but not of
+  # HyperKitty so they're not included for people who don't need them.
+  checkInputs = [ beautifulsoup4 coverage elasticsearch mock whoosh ];
+
+  checkPhase = ''
+    cd $NIX_BUILD_TOP/$sourceRoot
+    PYTHONPATH=.:$PYTHONPATH python example_project/manage.py test \
+      --settings=hyperkitty.tests.settings_test hyperkitty
+  '';
+
+  meta = {
+    homepage = "https://www.gnu.org/software/mailman/";
+    description = "Archiver for GNU Mailman v3";
+    license = stdenv.lib.licenses.gpl3;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = with stdenv.lib.maintainers; [ peti globin ];
+  };
+}