From 4a78a1e31991b3b2293129ba6622101f81d35dd5 Mon Sep 17 00:00:00 2001 From: Brian McGee Date: Wed, 3 Jan 2024 09:20:32 +0000 Subject: [PATCH] fix: nix build - update `gomod2nix.toml` - add formatters as `nativeBuildInputs` for nix build - export a `XDG_CACHE_HOME` for checks Signed-off-by: Brian McGee --- gomod2nix.toml | 6 +++--- nix/devshell.nix | 30 +++++++++--------------------- nix/formatters.nix | 16 ++++++++++++++++ nix/packages.nix | 8 ++++++++ 4 files changed, 36 insertions(+), 24 deletions(-) create mode 100644 nix/formatters.nix diff --git a/gomod2nix.toml b/gomod2nix.toml index 3dbee60..db754d7 100644 --- a/gomod2nix.toml +++ b/gomod2nix.toml @@ -46,6 +46,9 @@ schema = 3 [mod."github.com/muesli/termenv"] version = "v0.15.2" hash = "sha256-Eum/SpyytcNIchANPkG4bYGBgcezLgej7j/+6IhqoMU=" + [mod."github.com/otiai10/copy"] + version = "v1.14.0" + hash = "sha256-xsaL1ddkPS544y0Jv7u/INUALBYmYq29ddWvysLXk4A=" [mod."github.com/pmezard/go-difflib"] version = "v1.0.0" hash = "sha256-/FtmHnaGjdvEIKAJtrUfEhV7EVo5A/eYrtdnUkuxLDA=" @@ -61,9 +64,6 @@ schema = 3 [mod."github.com/vmihailenco/tagparser/v2"] version = "v2.0.0" hash = "sha256-M9QyaKhSmmYwsJk7gkjtqu9PuiqZHSmTkous8VWkWY0=" - [mod."github.com/ztrue/shutdown"] - version = "v0.1.1" - hash = "sha256-+ygx5THHu9g+vBAn6b63tV35bvQGdRyto4pLhkontJI=" [mod."go.etcd.io/bbolt"] version = "v1.3.8" hash = "sha256-ekKy8198B2GfPldHLYZnvNjID6x07dUPYKgFx84TgVs=" diff --git a/nix/devshell.nix b/nix/devshell.nix index 9f55212..ee43fdf 100644 --- a/nix/devshell.nix +++ b/nix/devshell.nix @@ -20,27 +20,15 @@ } ]; - packages = with pkgs; [ - # golang - go - gotools - delve - golangci-lint - - # formatters for testing - alejandra - elmPackages.elm-format - haskellPackages.cabal-fmt - haskellPackages.ormolu - mdsh - nodePackages.prettier - python3.pkgs.black - rufo - rustfmt - shellcheck - shfmt - terraform - ]; + packages = with pkgs; + [ + # golang + go + delve + ] + ++ + # include formatters for development and testing + (import ./formatters.nix pkgs); commands = [ { diff --git a/nix/formatters.nix b/nix/formatters.nix new file mode 100644 index 0000000..0d968de --- /dev/null +++ b/nix/formatters.nix @@ -0,0 +1,16 @@ +pkgs: +with pkgs; [ + alejandra + elmPackages.elm-format + gotools + haskellPackages.cabal-fmt + haskellPackages.ormolu + mdsh + nodePackages.prettier + python3.pkgs.black + rufo + rustfmt + shellcheck + shfmt + terraform +] diff --git a/nix/packages.nix b/nix/packages.nix index b3af404..0984f43 100644 --- a/nix/packages.nix +++ b/nix/packages.nix @@ -26,6 +26,14 @@ "-X 'build.Version=${version}'" ]; + # we need some formatters available for the tests + nativeBuildInputs = import ./formatters.nix pkgs; + + preCheck = '' + XDG_CACHE_HOME=$(mktemp -d) + export XDG_CACHE_HOME + ''; + meta = with lib; { description = "treefmt: one CLI to format your repo"; homepage = "https://git.numtide.com/numtide/treefmt";