-
Notifications
You must be signed in to change notification settings - Fork 3
/
pre-commit-check.nix
75 lines (73 loc) · 1.83 KB
/
pre-commit-check.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
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
{ fourmolu }: {
src = ./.;
settings = {
# FIXME: https://github.com/cachix/pre-commit-hooks.nix/issues/155
ormolu.defaultExtensions = [
"NoStarIsType"
"BangPatterns"
"BinaryLiterals"
"ConstrainedClassMethods"
"ConstraintKinds"
"DataKinds"
"DeriveAnyClass"
"DeriveDataTypeable"
"DeriveFoldable"
"DeriveFunctor"
"DeriveGeneric"
"DeriveLift"
"DeriveTraversable"
"DerivingStrategies"
"DerivingVia"
"DoAndIfThenElse"
"EmptyCase"
"EmptyDataDecls"
"EmptyDataDeriving"
"ExistentialQuantification"
"ExplicitForAll"
"ExplicitNamespaces"
"FlexibleContexts"
"FlexibleInstances"
"ForeignFunctionInterface"
"GADTSyntax"
"GeneralisedNewtypeDeriving"
"HexFloatLiterals"
"ImportQualifiedPost"
"InstanceSigs"
"KindSignatures"
"LambdaCase"
"MonomorphismRestriction"
"MultiParamTypeClasses"
"NamedFieldPuns"
"NamedWildCards"
"NumericUnderscores"
"OverloadedRecordDot"
"OverloadedStrings"
"PartialTypeSignatures"
"PatternGuards"
"PolyKinds"
"PostfixOperators"
"RankNTypes"
"RelaxedPolyRec"
"ScopedTypeVariables"
"StandaloneDeriving"
"StandaloneKindSignatures"
"TraditionalRecordSyntax"
"TupleSections"
"TypeApplications"
"TypeFamilies"
"TypeOperators"
"TypeSynonymInstances"
];
};
hooks = {
nixpkgs-fmt.enable = true;
nix-linter.enable = true;
cabal-fmt.enable = true;
fourmolu.enable = true;
shellcheck.enable = true;
hlint.enable = true;
#FIXME(https://github.com/mlabs-haskell/cardano-open-oracle-protocol/issues/11) hunspell.enable = true;
markdownlint.enable = true;
};
tools = { inherit fourmolu; };
}