Add treefmt for formatting

Which is exactly what's its made for. :)
This commit is contained in:
Gabriel Arazas 2022-11-23 18:42:37 +08:00
parent 8d5070a38d
commit 3e09432e6f
3 changed files with 39 additions and 12 deletions

View File

@ -9,17 +9,26 @@
foo-dogsquared-nixos-config.inputs.flake-utils.follows = "flake-utils";
};
outputs = inputs@{ self, nixpkgs, ... }: let
overlays = [
inputs.foo-dogsquared-nixos-config.overlays.default
];
defaultSystem = inputs.flake-utils.lib.system.x86_64-linux;
systems = with inputs.flake-utils.lib.system; [ defaultSystem ];
forAllSystems = f: nixpkgs.lib.genAttrs systems (system: f system);
in {
devShells = forAllSystems (system: let
pkgs = import nixpkgs { inherit system overlays; };
outputs = inputs@{ self, nixpkgs, ... }:
let
overlays = [
inputs.foo-dogsquared-nixos-config.overlays.default
];
defaultSystem = inputs.flake-utils.lib.system.x86_64-linux;
systems = with inputs.flake-utils.lib.system; [ defaultSystem ];
forAllSystems = f: nixpkgs.lib.genAttrs systems (system: f system);
in
{ default = import ./shell.nix { inherit pkgs; }; });
};
{
devShells = forAllSystems (system:
let
pkgs = import nixpkgs { inherit system overlays; };
in
{ default = import ./shell.nix { inherit pkgs; }; });
formatter = forAllSystems (system:
let
pkgs = import nixpkgs { inherit system overlays; };
in
pkgs.treefmt);
};
}

View File

@ -15,12 +15,19 @@ pkgs.mkShell {
gnumake
gnuplot
graphviz
jq
lilypond
libcs50
nodejs-16_x
octaveFull
python3WithPackages
racket
R
recoll
# A bunch of formatters...
stylua # ...for Lua.
rustfmt # ...for Rust.
nixpkgs-fmt # ...for Nix.
];
}

11
treefmt.toml Normal file
View File

@ -0,0 +1,11 @@
[formatter.nix]
command = "nixpkgs-fmt"
includes = [ "*.nix" ]
[formatter.rust]
command = "rustfmt"
includes = [ "*.rs" ]
[formatter.lua]
command = "stylua"
includes = [ "*.lua" ]