···
{ lib, fetchFromGitHub, cacert, openssl, nixosTests
2
+
, python310, fetchpatch
6
-
python3' = python39.override {
6
+
dropDevOutput = { outputs, ... }: {
7
+
outputs = lib.filter (x: x != "doc") outputs;
10
+
python3' = python310.override {
packageOverrides = self: super: {
sqlalchemy = super.sqlalchemy.overridePythonAttrs (oldAttrs: rec {
···
sha256 = "ae2f05671588762dd83a21d8b18c51fe355e86783e24594995ff8d7380dffe38";
32
+
flask-sqlalchemy = super.flask-sqlalchemy.overridePythonAttrs (old: rec {
34
+
format = "setuptools";
35
+
src = self.fetchPypi {
36
+
pname = "Flask-SQLAlchemy";
38
+
hash = "sha256:2bda44b43e7cacb15d4e05ff3cc1f8bc97936cc464623424102bfc2c35e95912";
# Taken from by https://github.com/NixOS/nixpkgs/pull/173090/commits/d2c0c7eb4cc91beb0a1adbaf13abc0a526a21708
werkzeug = super.werkzeug.overridePythonAttrs (old: rec {
···
sha256 = "sha256-ptWEM94K6AA0fKsfowQ867q+i6qdKeZo8cdoy4ejM8Y=";
61
+
# python 3.10 compat fixes. In later upstream releases, but these
62
+
# are not compatible with flask 1 which we need here :(
64
+
url = "https://github.com/thmo/jinja/commit/1efb4cc918b4f3d097c376596da101de9f76585a.patch";
65
+
sha256 = "sha256-GFaSvYxgzOEFmnnDIfcf0ImScNTh1lR4lxt2Uz1DYdU=";
68
+
url = "https://github.com/mkrizek/jinja/commit/bd8bad37d1c0e2d8995a44fd88e234f5340afec5.patch";
69
+
sha256 = "sha256-Uow+gaO+/dH6zavC0X/SsuMAfhTLRWpamVlL87DXDRA=";
70
+
excludes = [ "CHANGES.rst" ];
# Required by jinja2-2.11.3
markupsafe = super.markupsafe.overridePythonAttrs (old: rec {
···
# Requires pytest-httpserver as checkInput now which requires Werkzeug>=2 which is not
# supported by current privacyIDEA.
responses = super.responses.overridePythonAttrs (lib.const {
118
+
flask-babel = (super.flask-babel.override {
121
+
}).overridePythonAttrs (old: (dropDevOutput old) // rec {
122
+
pname = "Flask-Babel";
124
+
format = "setuptools";
125
+
src = self.fetchPypi {
128
+
hash = "sha256:f9faf45cdb2e1a32ea2ec14403587d4295108f35017a7821a2b1acb8cfd9257d";
131
+
psycopg2 = (super.psycopg2.override {
133
+
sphinx-better-theme = null;
134
+
}).overridePythonAttrs dropDevOutput;
135
+
hypothesis = super.hypothesis.override {
136
+
enableDocumentation = false;
138
+
pyjwt = (super.pyjwt.override {
140
+
sphinx-rtd-theme = null;
141
+
}).overridePythonAttrs (old: (dropDevOutput old) // { format = "setuptools"; });
142
+
beautifulsoup4 = (super.beautifulsoup4.override {
144
+
}).overridePythonAttrs dropDevOutput;
145
+
pydash = (super.pydash.override {
146
+
sphinx-rtd-theme = null;
147
+
}).overridePythonAttrs (old: rec {
149
+
src = self.fetchPypi {
150
+
inherit (old) pname;
152
+
hash = "sha256-GysFCsG64EnNB/WSCxT6u+UmOPSF2a2h6xFanuv/aDU=";
154
+
format = "setuptools";