-
Notifications
You must be signed in to change notification settings - Fork 20
Expand file tree
/
Copy pathdevenv.nix
More file actions
70 lines (63 loc) · 1.4 KB
/
devenv.nix
File metadata and controls
70 lines (63 loc) · 1.4 KB
1
2
3
4
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
{ pkgs, ... }:
{
imports = [
./devenv.uv2nix.nix
];
languages.python.pyprojectOverrides =
final: prev:
let
packagesToBuildWithSetuptools = [
"cmarkgfm"
"docopt"
"markupsafe"
"pycrypto"
"secretstorage"
];
in
{
"hatchling" = prev."hatchling".overrideAttrs (old: {
propagatedBuildInputs = [ final."editables" ];
});
"cffi" = prev."cffi".overrideAttrs (old: {
buildInputs = [ pkgs.libffi ];
nativeBuildInputs =
old.nativeBuildInputs
++ final.resolveBuildSystem ({
"setuptools" = [ ];
});
});
}
// builtins.listToAttrs (
map (pkg: {
name = pkg;
value = prev.${pkg}.overrideAttrs (old: {
nativeBuildInputs =
old.nativeBuildInputs
++ final.resolveBuildSystem ({
"setuptools" = [ ];
});
});
}) packagesToBuildWithSetuptools
);
packages = [
pkgs.gnumake
pkgs.gnused
];
dotenv.disableHint = true;
enterShell = ''
unset PYTHONPATH
export UV_NO_SYNC=1
export UV_PYTHON_DOWNLOADS=never
export REPO_ROOT=$(git rev-parse --show-toplevel)
'';
enterTest = ''
make test
'';
cachix.pull = [ "datakurre" ];
git-hooks.hooks.treefmt = {
enable = true;
settings.formatters = [
pkgs.nixfmt-rfc-style
];
};
}