nixpkgs/pkgs/servers/mail/mailman/default.nix
Maximilian Bosch 72a14ea563
mailman: refactor package structure
* Removed unused `.package`-option.
* Added explicit postgresql support.
* Create a new meta-package for mailman to make sure each component has
  the **same** python and packages can be downgraded if needed (e.g.
  psycopg2 or sqlalchemy) without interfering with `pythonPackages` in any way.
* Document why certain python overrides are needed.

Closes #170035
Closes #158424
2022-05-20 01:21:20 +02:00

31 lines
770 B
Nix

{ newScope, lib, python3 }:
let
callPackage = newScope self;
self = lib.makeExtensible (self: {
python3 = callPackage ./python.nix { inherit python3; };
hyperkitty = callPackage ./hyperkitty.nix { };
mailman = callPackage ./package.nix { };
mailman-hyperkitty = callPackage ./mailman-hyperkitty.nix { };
postorius = callPackage ./postorius.nix { };
web = callPackage ./web.nix { };
buildEnv = { web ? self.web
, mailman ? self.mailman
, mailman-hyperkitty ? self.mailman-hyperkitty
, withHyperkitty ? false
}:
self.python3.withPackages
(ps:
[ web mailman ps.psycopg2 ]
++ lib.optional withHyperkitty mailman-hyperkitty);
});
in self