mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-04-16 09:48:09 +00:00
mailmanPackages.python: allow changing python package-set used for mailman
When having a patch for a python module that should only be used for mailman, but for nothing else, it's now possible to apply it like this: self: super: { mailmanPackages = super.mailmanPackages.extend (mailmanSelf: mailmanSuper: { python3 = mailmanSuper.python3.override { overlay = pythonSelf: pythonSuper: { psycopg2 = /* ... */; }; }; }); } The underlying issue is that the `packageOverrides`-mechanism of `pkgs.python3` doesn't compose, so an optional overlay is manually applied to the `python3` used for mailman.
This commit is contained in:
parent
892661f45b
commit
2cefe69f6f
@ -1,19 +1,21 @@
|
||||
{ python3, fetchPypi }:
|
||||
{ python3, lib, overlay ? (_: _: {}) }:
|
||||
|
||||
python3.override {
|
||||
packageOverrides = self: super: {
|
||||
# does not find tests
|
||||
alembic = super.alembic.overridePythonAttrs (oldAttrs: {
|
||||
doCheck = false;
|
||||
});
|
||||
# Fixes `AssertionError: database connection isn't set to UTC`
|
||||
psycopg2 = super.psycopg2.overridePythonAttrs (a: rec {
|
||||
version = "2.8.6";
|
||||
src = fetchPypi {
|
||||
inherit version;
|
||||
inherit (a) pname;
|
||||
sha256 = "fb23f6c71107c37fd667cb4ea363ddeb936b348bbd6449278eb92c189699f543";
|
||||
};
|
||||
});
|
||||
};
|
||||
packageOverrides = lib.composeExtensions
|
||||
(self: super: {
|
||||
# does not find tests
|
||||
alembic = super.alembic.overridePythonAttrs (oldAttrs: {
|
||||
doCheck = false;
|
||||
});
|
||||
# Fixes `AssertionError: database connection isn't set to UTC`
|
||||
psycopg2 = super.psycopg2.overridePythonAttrs (a: (rec {
|
||||
version = "2.8.6";
|
||||
src = super.fetchPypi {
|
||||
inherit version;
|
||||
inherit (a) pname;
|
||||
sha256 = "fb23f6c71107c37fd667cb4ea363ddeb936b348bbd6449278eb92c189699f543";
|
||||
};
|
||||
}));
|
||||
})
|
||||
overlay;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user