blob: fe2b00304bc4a3582ff083b9846a55053429b292 (
plain)
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
|
#──────────────────────────────────────────────────────────────────────────────┐
# SPDX-FileCopyrightText: 2025 toastal <https://toast.al/contact/> │
# SPDX-License-Identifier: LGPL-2.1-or-later │
#──────────────────────────────────────────────────────────────────────────────┘
# I don’t like *this* formatter, but it is *a* formatter. Tweaking it to expand
# to 3 spaces, helps the maker actually read the code since 2 spaces is not
# enough contrast (& Nix magic strings don’t support tabs).
{
lib,
writeTextFile,
dash,
nixfmt-rfc-style,
stdenvNoCC,
}:
writeTextFile {
name = "nixfmt-3-space";
executable = true;
destination = "/bin/nixfmt";
text = /* sh */ ''
#!${lib.getExe dash}
exec ${lib.getExe nixfmt-rfc-style} --indent=3 "$@"
'';
checkPhase = ''
runHook preCheck
${stdenvNoCC.shellDryRun} "$target"
runHook postCheck
'';
meta.mainProgram = "nixfmt";
}
|