Newer
Older
# Note: Passing arguments through here to customize the environment does not
# work on Nix 2.3. It works with Nix 2.5. I'm not sure about 2.4.
{ ... }@args:
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
privatestorage = import ./. args;
inherit (privatestorage) pkgs mach-nix tahoe-lafs zkapauthorizer;
pythonVersion = zkapauthorizer.meta.mach-nix.python;
python = mach-nix.mkPython {
inherit (zkapauthorizer.meta.mach-nix) providers;
python = pythonVersion;
overridesPre = [
(
self: super: {
inherit tahoe-lafs;
}
)
];
requirements = let
py3 = pythonVersion > "python3";
lint = pkgs.lib.optionalString (builtins.trace py3 py3) ''
# lint
black
isort
flake8
'';
workarounds = ''
# Mitigate for undetected cryptography dependency
setuptools_rust
# And for tomli
flit_core
'';
testing = ''
coverage
fixtures
testtools
hypothesis
'';
in
''
${lint}
${workarounds}
${testing}
${zkapauthorizer.requirements}
'';
};
PYTHONDONTWRITEBYTECODE = "1";