add treefmt-nix configuration
This commit is contained in:
parent
cdde629ff3
commit
05a9185726
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
A nixos module to make buildbot a proper Nix-CI.
|
A nixos module to make buildbot a proper Nix-CI.
|
||||||
|
|
||||||
For an example checkout the [example](./examples/default.nix) and the module descriptions for [master](./nix/master.nix) and [worker](./nix/worker.nix).
|
For an example checkout the [example](./examples/default.nix) and the module
|
||||||
|
descriptions for [master](./nix/master.nix) and [worker](./nix/worker.nix).
|
||||||
|
|
||||||
This project is still in early stage and many APIs might change over time.
|
This project is still in early stage and many APIs might change over time.
|
||||||
|
|
23
flake.lock
23
flake.lock
|
@ -39,7 +39,28 @@
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts",
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs",
|
||||||
|
"treefmt-nix": "treefmt-nix"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"treefmt-nix": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1694528738,
|
||||||
|
"narHash": "sha256-aWMEjib5oTqEzF9f3WXffC1cwICo6v/4dYKjwNktV8k=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "treefmt-nix",
|
||||||
|
"rev": "7a49c388d7a6b63bb551b1ddedfa4efab8f400d8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "treefmt-nix",
|
||||||
|
"type": "github"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
29
nix/treefmt/flake-module.nix
Normal file
29
nix/treefmt/flake-module.nix
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
{ inputs, ... }: {
|
||||||
|
imports = [
|
||||||
|
inputs.treefmt-nix.flakeModule
|
||||||
|
];
|
||||||
|
perSystem = { config, pkgs, ... }: {
|
||||||
|
treefmt = {
|
||||||
|
projectRootFile = ".git/config";
|
||||||
|
programs.nixpkgs-fmt.enable = true;
|
||||||
|
programs.shellcheck.enable = true;
|
||||||
|
programs.deno.enable = true;
|
||||||
|
settings.formatter.shellcheck.options = [ "-s" "bash" ];
|
||||||
|
|
||||||
|
programs.mypy.enable = true;
|
||||||
|
programs.mypy.directories."." = { };
|
||||||
|
settings.formatter.python = {
|
||||||
|
command = "sh";
|
||||||
|
options = [
|
||||||
|
"-eucx"
|
||||||
|
''
|
||||||
|
${pkgs.ruff}/bin/ruff --fix "$@"
|
||||||
|
${pkgs.python3.pkgs.black}/bin/black "$@"
|
||||||
|
''
|
||||||
|
"--" # this argument is ignored by bash
|
||||||
|
];
|
||||||
|
includes = [ "*.py" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
Loading…
Reference in a new issue