all repos — homestead @ 7d94115bbc73fe470a9a9a020997632683485738

Code for my website

remove flake-utils

Alin
commit

7d94115bbc73fe470a9a9a020997632683485738

parent

6892c31c68517645ba743a073707400c327fcb65

1 file changed, 88 insertions(+), 62 deletions(-)

changed files
M flake.nixflake.nix
@@ -1,7 +1,6 @@
{ description = "My website, alanpearce.eu"; inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; - inputs.utils.url = "github:numtide/flake-utils"; inputs.pre-commit-hooks.url = "github:cachix/pre-commit-hooks.nix"; inputs.pre-commit-hooks.inputs.nixpkgs.follows = "nixpkgs"; inputs.treefmt-nix.url = "github:numtide/treefmt-nix";
@@ -10,57 +9,54 @@ outputs =
{ self, nixpkgs, - utils, pre-commit-hooks, treefmt-nix, ... }: - utils.lib.eachDefaultSystem ( - system: - let - pkgs = import nixpkgs { - inherit system; - }; - commonShellPackages = with pkgs; [ - go - govulncheck - hyperlink - just - ko - ]; - ciPackages = with pkgs; [ - redis - (writeShellApplication { - name = "danube"; - runtimeInputs = [ pkgs.bun ]; - text = '' - bunx @danubedata/cli "$@" - ''; - }) - ]; - devPackages = with pkgs; [ - wgo - gofumpt - gopls - gotools + let + supportedSystems = [ + "x86_64-linux" + "aarch64-linux" + "aarch64-darwin" + ]; - systemfd - modd - ]; - treefmtEval = treefmt-nix.lib.evalModule pkgs { - projectRootFile = "flake.nix"; - programs = { - nixfmt.enable = true; - taplo.enable = true; - mdformat.enable = true; - gofumpt.enable = true; - golines.enable = true; - prettier.enable = true; + forAllSystems = nixpkgs.lib.genAttrs supportedSystems; + in + { + devShells = forAllSystems ( + system: + let + pkgs = import nixpkgs { + inherit system; }; - }; - in - { - devShells = { + commonShellPackages = with pkgs; [ + go + govulncheck + hyperlink + just + ko + ]; + ciPackages = with pkgs; [ + redis + (writeShellApplication { + name = "danube"; + runtimeInputs = [ pkgs.bun ]; + text = '' + bunx @danubedata/cli "$@" + ''; + }) + ]; + devPackages = with pkgs; [ + wgo + gofumpt + gopls + gotools + + systemfd + modd + ]; + in + { ci = pkgs.mkShell { packages = commonShellPackages ++ ciPackages; };
@@ -68,9 +64,38 @@ default = pkgs.mkShell {
inherit (self.checks.${system}.pre-commit-check) shellHook; packages = commonShellPackages ++ devPackages; }; - }; - formatter = treefmtEval.config.build.wrapper; - checks = { + } + ); + + formatter = forAllSystems ( + system: + let + pkgs = import nixpkgs { + inherit system; + }; + treefmtEval = treefmt-nix.lib.evalModule pkgs { + projectRootFile = "flake.nix"; + programs = { + nixfmt.enable = true; + taplo.enable = true; + mdformat.enable = true; + gofumpt.enable = true; + golines.enable = true; + prettier.enable = true; + }; + }; + in + treefmtEval.config.build.wrapper + ); + + checks = forAllSystems ( + system: + let + pkgs = import nixpkgs { + inherit system; + }; + in + { pre-commit-check = pre-commit-hooks.lib.${system}.run { src = ./.; hooks = {
@@ -88,21 +113,22 @@ };
golines.enable = true; golangci-lint = { enable = true; - entry = - let - hookPkgs = pre-commit-hooks.packages.${system}; - script = pkgs.writeShellScript "precommit-golangci-lint" '' - set -e - echo "$@" | xargs -n1 dirname | sort -u | xargs -n1 printf '"./%s" ' | \ - xargs ${hookPkgs.golangci-lint}/bin/golangci-lint run --new --fix - ''; - in - toString script; + extraPackages = [ pkgs.go ]; + # entry = + # let + # hookPkgs = pre-commit-hooks.packages.${system}; + # script = pkgs.writeShellScript "precommit-golangci-lint" '' + # set -e + # echo "$@" | xargs -n1 dirname | sort -u | xargs -n1 printf '"./%s" ' | \ + # xargs ${hookPkgs.golangci-lint}/bin/golangci-lint run --new --fix + # ''; + # in + # toString script; }; gotest.enable = true; }; }; - }; - } - ); + } + ); + }; }