-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdevenv.nix
More file actions
75 lines (66 loc) · 1.24 KB
/
Copy pathdevenv.nix
File metadata and controls
75 lines (66 loc) · 1.24 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
71
72
73
74
75
{
pkgs,
lib,
config,
inputs,
...
}:
{
# https://devenv.sh/basics/
# env.GREET = "devenv";
cachix.pull = [
"m00nwtchr"
"cargo2nix"
];
# https://devenv.sh/packages/
packages =
with pkgs;
[
pkg-config
openssl
# mupdf deps
freetype
gumbo
jbig2dec
openjpeg
libjpeg
harfbuzz
# build tools
llvmPackages.clangUseLLVM # bindgen
]
++ lib.optionals (!config.container.isBuilding) [
git
cargo-nextest
];
env.LIBCLANG_PATH = "${pkgs.llvmPackages.libclang.lib}/lib";
languages.rust = {
enable = true;
mold.enable = true;
};
processes = {
# cofdminer.exec = "cargo run";
};
treefmt = {
enable = true;
config.programs = {
nixfmt.enable = true;
rustfmt.enable = true;
};
};
git-hooks.hooks = {
treefmt.enable = true;
clippy.enable = true;
};
tasks = {
"cofd:tests" = lib.mkForce { };
# "cofdminer:tests" = {
# after = ["devenv:enterTest"];
# exec = "cargo nextest run";
# };
};
outputs = {
# package Rust app using Nix
# cofd-miner = config.languages.rust.import ./. {};
};
# See full reference at https://devenv.sh/reference/options/
}