forked from unionlabs/union
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdevShell.nix
43 lines (37 loc) · 1.17 KB
/
devShell.nix
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
{ ... }: {
perSystem = { biome, pkgs, unstablePkgs, lib, ensureAtRepositoryRoot, ... }:
let
pkgsDeps = with pkgs; [ pkg-config biome ];
nodeDeps = with unstablePkgs; [ vips nodePackages_latest.nodejs ];
combinedDeps = pkgsDeps ++ nodeDeps;
in
{
apps = {
pre-commit = {
type = "app";
program = pkgs.writeShellApplication {
name = "pre-commit";
runtimeInputs = combinedDeps;
text = ''
${ensureAtRepositoryRoot}
echo "Applying nix fmt"
nix fmt
echo "Applying biome fmt"
${lib.getExe biome} format . \
--log-level="info" \
--log-kind="pretty" \
--error-on-warnings \
--diagnostic-level="info" \
--write
echo "Checking spelling"
nix build .\#checks.${pkgs.system}.spellcheck -L
echo "Running biome lint"
nix build .\#checks.${pkgs.system}.biome-lint -L
echo "Running Site Check"
nix run .\#site-check
'';
};
};
};
};
}