Compare commits

...

3 commits

4 changed files with 32 additions and 1 deletions

View file

@ -0,0 +1,3 @@
{
"slug": "mfgames-project-setup-flake"
}

View file

@ -44,7 +44,7 @@
conformDefaults = { scopes = [ ]; };
contributorCovenantDefaults = { enable = false; };
developerCertificateOfOriginDefaults = { enable = false; };
dotnetDefaults = { enable = false; };
dotnetDefaults = { enable = false; format = false; };
prettierDefaults = { proseWrap = "preserve"; };
rustDefaults = { enable = false; };
licenseDefaults = { enable = false; filename = "LICENSE.md"; };

View file

@ -0,0 +1,17 @@
# Adding File Ignoring
While using this flake, it became obvious that there were a few things that were
still rough around the edges. In specific, we didn't add `/.direnv/` to the
`.gitignore` file sof if we weren't careful, we would be adding the entire
environment into the check-in.
The other was that some of the generated files (`DGO.md` in specific) would be
added via Nixago, then formatted as part of our `treefmt` call in `lefthook`,
then checked-in. As soon as someone went into the environment, Nixago would
notice that the file was different (because of formatting) and would regenerate
it, leading to an endless loop of generation/formatting.
In both cases, we needed the ability to add files to various ignore files
(`.gitignore` in the first case and `.prettierignore` in the second). The v0.1.0
check-in does that, and also avoids reformatting the license files along the
way.

View file

@ -32,6 +32,17 @@ let
includes = [ "*.cs" ];
};
}
// pkgs.lib.attrsets.optionalAttrs dotnet.format {
dotnet-format-style = {
command = "dotnet format style --include";
includes = [ "*.cs" ];
};
dotnet-format-analyzers = {
command = "dotnet format analyzers --include";
includes = [ "*.cs" ];
};
}
// pkgs.lib.attrsets.optionalAttrs rust.enable {
rust = {
command = "rustfmt";