From 88e1e2f3c22fd24f5b3a47033526c627c8667464 Mon Sep 17 00:00:00 2001 From: ยท๐‘‘๐‘ด๐‘•๐‘‘๐‘ฉ๐‘ค Date: Tue, 23 Dec 2025 06:22:23 +0000 Subject: nix/check: onset --- nix/check/editorconfig.nix | 38 ++++++++++++++++++++++++++++++++++++++ nix/check/nixfmt.nix | 43 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 81 insertions(+) create mode 100644 nix/check/editorconfig.nix create mode 100644 nix/check/nixfmt.nix (limited to 'nix/check') diff --git a/nix/check/editorconfig.nix b/nix/check/editorconfig.nix new file mode 100644 index 0000000..526ed5b --- /dev/null +++ b/nix/check/editorconfig.nix @@ -0,0 +1,38 @@ +#โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” +# SPDX-FileCopyrightText: 2025 toastal โ”‚ +# SPDX-License-Identifier: LGPL-2.1-or-later โ”‚ +#โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ +{ + lib, + runDashCommand, + editorconfig-checker, + nixtamal, +}: + +runDashCommand + { + name = "check-EditorConfig"; + runtimeInputs = [ + editorconfig-checker + ]; + env.src = + let + fs = lib.fileset; + in + (fs.toSource { + root = ../..; + fileset = fs.unions [ + (fs.fileFilter (file: file.name == ".editorconfig") ../..) + (fs.fromSource nixtamal.src) + ../../nix + ]; + }); + } + /* sh */ '' + if [ -z "$src" ]; then + echo "Missing \$src" >&2 + exit 1 + fi + cd "$src" + editorconfig-checker | tee "$out" + '' diff --git a/nix/check/nixfmt.nix b/nix/check/nixfmt.nix new file mode 100644 index 0000000..4d22883 --- /dev/null +++ b/nix/check/nixfmt.nix @@ -0,0 +1,43 @@ +#โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” +# SPDX-FileCopyrightText: 2025 toastal โ”‚ +# SPDX-License-Identifier: LGPL-2.1-or-later โ”‚ +#โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ +{ + lib, + runDashCommand, + parallel, + nixfmt, + keepLogOrder ? true, +}: + +runDashCommand + { + name = "check-nixfmt"; + runtimeInputs = [ + parallel + nixfmt + ]; + env.src = + let + fs = lib.fileset; + in + fs.toSource { + root = ../..; + fileset = + fs.intersection (fs.fileFilter (file: file.hasExt "nix") ../..) + + (fs.difference (fs.fromSource (lib.cleanSource ../..)) ../tamal); + }; + } + /* sh */ '' + if [ -z "$src" ]; then + echo "Missing \$src" >&2 + exit 1 + fi + find "$src" -type f \ + | parallel --will-cite \ + ${lib.optionalString keepLogOrder "--keep-order"} \ + --jobs "''${NIX_BUILD_CORES:-1}" \ + nixfmt --check {} \ + | tee "$out" + '' -- cgit v1.2.3