Packaged mailman3 core and it's dependencies.
This commit is contained in:
parent
783c328c2f
commit
2bd0164f3b
9 changed files with 194 additions and 0 deletions
54
options/mailman3/core.nix
Normal file
54
options/mailman3/core.nix
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
{ stdenv, buildPythonPackage, fetchgit
|
||||||
|
, aiosmtpd, alembic, atpublic, click, dnspython, falcon, flufl_bounce, flufl_i18n, flufl_lock
|
||||||
|
, importlib-resources, lazr_config, passlib, requests, sqlalchemy
|
||||||
|
, zope_component, zope_configuration, zope_event, zope_interface
|
||||||
|
# optional database dependencies
|
||||||
|
, pymysql, psycopg2 }:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
name = "mailman3_core-${version}";
|
||||||
|
version = "3.2.2";
|
||||||
|
src = fetchgit {
|
||||||
|
url = "https://gitlab.com/mailman/mailman.git";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "0p1z2i2x6f0g05lx5mymiiw2ij1bsycvbxwabb52nisdddcfhhzp";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
aiosmtpd
|
||||||
|
alembic
|
||||||
|
atpublic
|
||||||
|
click
|
||||||
|
dnspython
|
||||||
|
falcon
|
||||||
|
flufl_bounce
|
||||||
|
flufl_i18n
|
||||||
|
flufl_lock
|
||||||
|
importlib-resources
|
||||||
|
lazr_config
|
||||||
|
passlib
|
||||||
|
requests
|
||||||
|
sqlalchemy
|
||||||
|
zope_component
|
||||||
|
zope_configuration
|
||||||
|
zope_event
|
||||||
|
zope_interface
|
||||||
|
pymysql psycopg2
|
||||||
|
];
|
||||||
|
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
|
# mailman imports master and runner
|
||||||
|
# -> only wrap $out/bin/mailman
|
||||||
|
dontWrapPythonPrograms = true;
|
||||||
|
postFixup = ''
|
||||||
|
wrapProgram $out/bin/mailman --prefix PYTHONPATH : "$PYTHONPATH"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "GNU Mailman, a mailing list management system";
|
||||||
|
license = licenses.gpl3;
|
||||||
|
maintainers = with maintainers; [ ];
|
||||||
|
homepage = http://list.org/;
|
||||||
|
};
|
||||||
|
}
|
14
options/mailman3/extraPackages/aiosmtpd.nix
Normal file
14
options/mailman3/extraPackages/aiosmtpd.nix
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
{ stdenv, lib, fetchPypi, buildPythonPackage
|
||||||
|
, atpublic }:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "aiosmtpd";
|
||||||
|
version = "1.2";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "1xdfk741pjmz1cm8dsi4n5vq4517i175rm94696m3f7kcgk7xsmp";
|
||||||
|
};
|
||||||
|
doCheck = false;
|
||||||
|
propagatedBuildInputs = [ atpublic ];
|
||||||
|
}
|
13
options/mailman3/extraPackages/atpublic.nix
Normal file
13
options/mailman3/extraPackages/atpublic.nix
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
{ stdenv, lib, fetchPypi, buildPythonPackage }:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
pname = "atpublic";
|
||||||
|
version = "1.0";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "0i3sbxkdlbb4560rrlmwwd5y4ps7k73lp4d8wnmd7ag9k426gjkx";
|
||||||
|
};
|
||||||
|
doCheck = false;
|
||||||
|
# propagatedBuildInputs = [];
|
||||||
|
}
|
17
options/mailman3/extraPackages/flufl_bounce.nix
Normal file
17
options/mailman3/extraPackages/flufl_bounce.nix
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
{ stdenv, lib, fetchPypi, buildPythonPackage
|
||||||
|
, atpublic, zope_interface }:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
pname = "flufl.bounce";
|
||||||
|
version = "3.0";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "0k5kjqa3x6gvwwxyzb2vwi1g1i6asm1zw5fivylxz3d583y4kid2";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [ atpublic zope_interface ];
|
||||||
|
|
||||||
|
doCheck = false;
|
||||||
|
}
|
17
options/mailman3/extraPackages/flufl_i18n.nix
Normal file
17
options/mailman3/extraPackages/flufl_i18n.nix
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
{ stdenv, lib, fetchPypi, buildPythonPackage
|
||||||
|
, atpublic }:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
pname = "flufl.i18n";
|
||||||
|
version = "2.0.2";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "1csgds59nx0ann9v2alqr69lakp1cnc1ikmbgn96l6n23js7c2ah";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [ atpublic ];
|
||||||
|
|
||||||
|
doCheck = false;
|
||||||
|
}
|
17
options/mailman3/extraPackages/flufl_lock.nix
Normal file
17
options/mailman3/extraPackages/flufl_lock.nix
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
{ stdenv, lib, fetchPypi, buildPythonPackage
|
||||||
|
, atpublic }:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
pname = "flufl.lock";
|
||||||
|
version = "3.2";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "0nzzd6l30ff6cwsrlrb94xzfja4wkyrqv3ydc6cz0hdbr766mmm8";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [ atpublic ];
|
||||||
|
|
||||||
|
doCheck = false;
|
||||||
|
}
|
17
options/mailman3/extraPackages/lazr_config.nix
Normal file
17
options/mailman3/extraPackages/lazr_config.nix
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
{ stdenv, lib, fetchPypi, buildPythonPackage
|
||||||
|
, lazr_delegates }:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
pname = "lazr.config";
|
||||||
|
version = "2.2.1";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "1s7pyvlq06qjrkaw9r6nc290lb095n25ybzgavvy51ygpxkgqxwn";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [ lazr_delegates ];
|
||||||
|
|
||||||
|
doCheck = false;
|
||||||
|
}
|
17
options/mailman3/extraPackages/lazr_delegates.nix
Normal file
17
options/mailman3/extraPackages/lazr_delegates.nix
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
{ stdenv, lib, fetchPypi, buildPythonPackage
|
||||||
|
, nose, zope_interface }:
|
||||||
|
|
||||||
|
buildPythonPackage rec {
|
||||||
|
name = "${pname}-${version}";
|
||||||
|
pname = "lazr.delegates";
|
||||||
|
version = "2.0.4";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "1rdnl85j9ayp8n85l0ciip621j9dcziz5qnmv2m7krgwgcn31vfx";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [ nose zope_interface ];
|
||||||
|
|
||||||
|
doCheck = false;
|
||||||
|
}
|
28
options/mailman3/release.nix
Normal file
28
options/mailman3/release.nix
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
{ pkgs ? import <nixpkgs> {}, python3Packages ? pkgs.python3Packages }:
|
||||||
|
|
||||||
|
let
|
||||||
|
mailman3 = {
|
||||||
|
core = python3Packages.callPackage ./core.nix ( with deps; {
|
||||||
|
inherit aiosmtpd atpublic flufl_bounce flufl_i18n flufl_lock lazr_config;
|
||||||
|
});
|
||||||
|
};
|
||||||
|
deps = rec {
|
||||||
|
aiosmtpd = python3Packages.callPackage ./extraPackages/aiosmtpd.nix {
|
||||||
|
inherit atpublic;
|
||||||
|
};
|
||||||
|
atpublic = python3Packages.callPackage ./extraPackages/atpublic.nix { };
|
||||||
|
flufl_bounce = python3Packages.callPackage ./extraPackages/flufl_bounce.nix {
|
||||||
|
inherit atpublic;
|
||||||
|
};
|
||||||
|
flufl_i18n = python3Packages.callPackage ./extraPackages/flufl_i18n.nix {
|
||||||
|
inherit atpublic;
|
||||||
|
};
|
||||||
|
flufl_lock = python3Packages.callPackage ./extraPackages/flufl_lock.nix {
|
||||||
|
inherit atpublic;
|
||||||
|
};
|
||||||
|
lazr_config = python3Packages.callPackage ./extraPackages/lazr_config.nix {
|
||||||
|
inherit lazr_delegates;
|
||||||
|
};
|
||||||
|
lazr_delegates = python3Packages.callPackage ./extraPackages/lazr_delegates.nix { };
|
||||||
|
};
|
||||||
|
in mailman3
|
Loading…
Reference in a new issue