git-hooks-nix

Configure pre-commit hooks.

Generates a configuration for pre-commit, provides a script to activate it, and adds a check.

Pre-defined hooks are maintained at cachix/git-hooks.nix.

Installation

To use these options, add to your flake inputs:

git-hooks-nix.url = "github:cachix/git-hooks.nix";

and inside the mkFlake:

imports = [
  inputs.git-hooks-nix.flakeModule
];

Run nix flake lock and you're set.

Options

perSystem.pre-commit.check.enable

Whether to add a derivation to the flake checks. It will perform the pre-commit checks in nix flake check.

You can disable this if one of your hooks do not run properly in the Nix sandbox; for example because it needs network access.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.devShell

A development shell with pre-commit installed and setup.

Type: package (read only)

Declared by:

perSystem.pre-commit.installationScript

A bash fragment that sets up pre-commit.

Type: string (read only)

Default: bash statements

Declared by:

perSystem.pre-commit.pkgs

Nixpkgs to use in the pre-commit settings.

Type: lazy attribute set of raw value

Default: pkgs (module argument)

Declared by:

perSystem.pre-commit.settings

The git-hooks.nix configuration.

Type: submodule

Default: { }

Declared by:

perSystem.pre-commit.settings.enabledPackages

All packages provided by hooks that are enabled.

Useful for including into the developer environment.

Type: list of unspecified value

Default: [ ]

Declared by:

perSystem.pre-commit.settings.package

The pre-commit package to use.

Type: package

Default:

pkgs.pre-commit

Declared by:

perSystem.pre-commit.settings.addGcRoot

Whether to add the generated pre-commit-config.yaml to the garbage collector roots. This prevents Nix from garbage-collecting the tools used by hooks.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.default_stages

A configuration wide option for the stages property. Installs hooks to the defined stages. See https://pre-commit.com/#confining-hooks-to-run-at-certain-stages.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default:

[
  "pre-commit"
]

Declared by:

perSystem.pre-commit.settings.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.gitPackage

The git package to use.

Type: package

Default:

pkgs.gitMinimal

Declared by:

perSystem.pre-commit.settings.hooks

The hook definitions.

You can both specify your own hooks here and you can enable predefined hooks.

Example of enabling a predefined hook:

hooks.nixpkgs-fmt.enable = true;

Example of a custom hook:

hooks.my-tool = {
  enable = true;
  name = "my-tool";
  description = "Run MyTool on all files in the project";
  files = "\\.mtl$";
  entry = "${pkgs.my-tool}/bin/mytoolctl";
};

The predefined hooks are:

actionlint

Static checker for GitHub Actions workflow files

alejandra

The Uncompromising Nix Code Formatter

annex

Runs the git-annex hook for large file support

ansible-lint

Ansible linter

autoflake

Remove unused imports and variables from Python code

bats

Run bash unit tests

beautysh

Format shell files

biome

A toolchain for web projects, aimed to provide functionalities to maintain them

black

The uncompromising Python code formatter

cabal-fmt

Format Cabal files

cabal-gild

Format Cabal files

cabal2nix

Run cabal2nix on all *.cabal files to generate corresponding default.nix files

cargo-check

Check the cargo package for errors

check-added-large-files

Prevent very large files to be committed (e.g. binaries).

check-builtin-literals

Require literal syntax when initializing empty or zero builtin types in Python.

check-case-conflicts

Check for files that would conflict in case-insensitive filesystems.

check-docstring-first

Check that all docstrings appear above the code.

check-executables-have-shebangs

Ensure that all non-binary executables have shebangs.

check-json

Check syntax of JSON files.

check-merge-conflicts

Check for files that contain merge conflict strings.

check-python

Check syntax of Python file by parsing Python abstract syntax tree.

check-shebang-scripts-are-executable

Ensure that all (non-binary) files with a shebang are executable.

check-symlinks

Find broken symlinks.

check-toml

Check syntax of TOML files.

check-vcs-permalinks

Ensure that links to VCS websites are permalinks.

check-xml

Check syntax of XML files.

check-yaml

Check syntax of YAML files.

checkmake

Experimental linter/analyzer for Makefiles

chktex

LaTeX semantic checker

clang-format

Format your code using clang-format.

clang-tidy

Static analyzer for C++ code.

clippy

Lint Rust code.

cljfmt

A tool for formatting Clojure code.

cmake-format

A tool for formatting CMake-files.

commitizen

Check whether the current commit message follows committing rules.

conform

Policy enforcement for commits.

convco

credo

Runs a static code analysis using Credo

crystal

A tool that automatically formats Crystal source code

cspell

A Spell Checker for Code

deadnix

Scan Nix files for dead code (unused variable bindings).

denofmt

Auto-format JavaScript, TypeScript, Markdown, and JSON files.

denolint

Lint JavaScript/TypeScript source code.

detect-aws-credentials

Detect AWS credentials from the AWS cli credentials file.

detect-private-keys

Detect the presence of private keys.

dhall-format

Dhall code formatter.

dialyzer

Runs a static code analysis using Dialyzer

dune-fmt

Runs Dune’s formatters on the code tree.

dune-opam-sync

Check that Dune-generated OPAM files are in sync.

eclint

EditorConfig linter written in Go.

editorconfig-checker

Verify that the files are in harmony with the .editorconfig.

elm-format

Format Elm files.

elm-review

Analyzes Elm projects, to help find mistakes before your users find them.

elm-test

Run unit tests and fuzz tests for Elm code.

end-of-file-fixer

Ensures that a file is either empty, or ends with a single newline.

eslint

Find and fix problems in your JavaScript code.

fix-byte-order-marker

Remove UTF-8 byte order marker.

fix-encoding-pragma

Adds # -- coding: utf-8 -- to the top of Python files.’

flake-checker

Run health checks on your flake-powered Nix projects.

flake8

Check the style and quality of Python files.

flynt

CLI tool to convert a python project’s %-formatted strings to f-strings.

forbid-new-submodules

Prevent addition of new Git submodules.

fourmolu

Haskell code prettifier.

fprettify

Auto-formatter for modern Fortran code.

gofmt

A tool that automatically formats Go source code

golangci-lint

Fast linters runner for Go.

golines

A golang formatter that fixes long lines

gotest

Run go tests

govet

Checks correctness of Go programs.

gptcommit

Generate a commit message using GPT3.

hadolint

Dockerfile linter, validate inline bash.

headache

Lightweight tool for managing headers in source code files.

hindent

Haskell code prettifier.

hlint

HLint gives suggestions on how to improve your source code.

hpack

hpack converts package definitions in the hpack format (package.yaml) to Cabal files.

html-tidy

HTML linter.

hunspell

Spell checker and morphological analyzer.

isort

A Python utility / library to sort imports.

juliaformatter

Run JuliaFormatter.jl against Julia source files

lacheck

A consistency checker for LaTeX documents.

latexindent

Perl script to add indentation to LaTeX files.

lua-ls

Uses the lua-language-server CLI to statically type-check and lint Lua code.

luacheck

A tool for linting and static analysis of Lua code.

lychee

A fast, async, stream-based link checker that finds broken hyperlinks and mail addresses inside Markdown, HTML, reStructuredText, or any other text file or website.

markdownlint

Style checker and linter for markdown files.

mdl

A tool to check markdown files and flag style issues.

mdsh

Markdown shell pre-processor.

mix-format

Runs the built-in Elixir syntax formatter

mix-test

Runs the built-in Elixir test framework

mixed-line-endings

Resolve mixed line endings.

mkdocs-linkcheck

Validate links associated with markdown-based, statically generated websites.

mypy

Static type checker for Python

name-tests-test

Verify that Python test files are named correctly.

nil

Incremental analysis assistant for writing in Nix.

nixfmt

Deprecated Nix code prettifier. Use nixfmt-classic.

nixfmt-classic

Nix code prettifier (classic).

nixfmt-rfc-style

Nix code prettifier (RFC 166 style).

nixpkgs-fmt

Nix code prettifier.

no-commit-to-branch

Disallow committing to certain branch/branches.

ocp-indent

A tool to indent OCaml code.

opam-lint

OCaml package manager configuration checker.

ormolu

Haskell code prettifier.

php-cs-fixer

Lint PHP files.

phpcbf

Lint PHP files.

phpcs

Lint PHP files.

phpstan

Static Analysis of PHP files.

poetry-check

Check the Poetry config for errors

poetry-lock

Update the Poetry lock file

pre-commit-hook-ensure-sops

prettier

Opinionated multi-language code formatter.

pretty-format-json

Formats JSON files.

psalm

Static Analysis of PHP files.

purs-tidy

Format purescript files.

purty

Format purescript files.

pylint

Lint Python files.

pyright

Static type checker for Python

python-debug-statements

Check for debugger imports and py37+ breakpoint() calls in python source.

pyupgrade

Automatically upgrade syntax for newer versions.

reuse

reuse is a tool for compliance with the REUSE recommendations.

revive

A linter for Go source code.

ripsecrets

Prevent committing secret keys into your source code

rome

ruff

An extremely fast Python linter, written in Rust.

ruff-format

An extremely fast Python code formatter, written in Rust.

rustfmt

Format Rust code.

shellcheck

Format shell files.

shfmt

Format shell files.

single-quoted-strings

Replace double quoted strings with single quoted strings.

sort-file-contents

Sort the lines in specified files (defaults to alphabetical).

sort-requirements-txt

Sort requirements in requirements.txt and constraints.txt files.

sort-simple-yaml

Sort simple YAML files which consist only of top-level keys, preserving comments and blocks.

staticcheck

State of the art linter for the Go programming language

statix

Lints and suggestions for the Nix programming language.

stylish-haskell

A simple Haskell code prettifier

stylua

An Opinionated Lua Code Formatter.

tagref

Have tagref check all references and tags.

taplo

Format TOML files with taplo fmt

terraform-format

Format terraform (.tf) files.

terraform-validate

Validates terraform configuration files (.tf).

tflint

A Pluggable Terraform Linter.

topiary

A universal formatter engine within the Tree-sitter ecosystem, with support for many languages.

treefmt

One CLI to format the code tree.

trim-trailing-whitespace

Trim trailing whitespace.

trufflehog

Secrets scanner

typos

Source code spell checker

typstfmt

format typst

typstyle

Beautiful and reliable typst code formatter

vale

A markup-aware linter for prose built with speed and extensibility in mind.

yamlfmt

Formatter for YAML files.

yamllint

Linter for YAML files.

zprint

Beautifully format Clojure and Clojurescript source code and s-expressions.

Type: attribute set of (submodule)

Default: { }

Declared by:

perSystem.pre-commit.settings.hooks.<name>.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.<name>.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.<name>.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.<name>.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.<name>.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.<name>.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.<name>.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.<name>.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.<name>.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.<name>.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.<name>.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.<name>.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.<name>.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.<name>.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.<name>.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.<name>.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.<name>.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.<name>.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.<name>.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.<name>.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.<name>.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.<name>.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.<name>.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.alejandra

alejandra hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.settings.check

Check if the input is already formatted and disable writing in-place the modified content

Type: boolean

Default: false

Example: true

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.settings.exclude

Files or directories to exclude from formatting.

Type: list of string

Default: [ ]

Example:

[
  "flake.nix"
  "./templates"
]

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.settings.threads

Number of formatting threads to spawn.

Type: null or signed integer

Default: null

Example: 8

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.settings.verbosity

Whether informational messages or all messages should be hidden or not.

Type: one of “normal”, “quiet”, “silent”

Default: "normal"

Example: "quiet"

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.alejandra.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint

ansible-lint hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.settings.configPath

Path to the YAML configuration file.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.settings.subdir

Path to the Ansible subdirectory.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ansible-lint.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.autoflake

autoflake hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.settings.binPath

Path to autoflake binary.

Type: null or string

Default:

"${tools.autoflake}/bin/autoflake"

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.settings.flags

Flags passed to autoflake.

Type: string

Default: "--in-place --expand-star-imports --remove-duplicate-keys --remove-unused-variables"

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.autoflake.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.biome

biome hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.biome.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.biome.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.biome.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.biome.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.biome.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.biome.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.biome.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.biome.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.biome.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.biome.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.biome.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.biome.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.biome.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.biome.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.biome.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.biome.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.biome.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.biome.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.biome.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.biome.settings.binPath

biome binary path. E.g. if you want to use the biome in node_modules, use ./node_modules/.bin/biome.

Type: null or path

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.biome.settings.configPath

Path to the configuration JSON file

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.biome.settings.write

Whether to edit files inplace.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.biome.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.biome.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.biome.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.biome.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.black

black hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.black.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.black.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.black.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.black.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.black.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.black.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.black.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.black.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.black.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.black.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.black.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.black.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.black.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.black.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.black.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.black.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.black.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.black.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.black.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.black.settings.flags

Flags passed to black. See all available here.

Type: string

Default: ""

Example: "--skip-magic-trailing-comma"

Declared by:

perSystem.pre-commit.settings.hooks.black.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.black.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.black.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.black.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.clippy

clippy hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.clippy.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.clippy.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.clippy.packageOverrides.cargo

The cargo package to use

Type: package

Declared by:

perSystem.pre-commit.settings.hooks.clippy.packageOverrides.clippy

The clippy package to use

Type: package

Declared by:

perSystem.pre-commit.settings.hooks.clippy.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.clippy.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.clippy.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.clippy.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.clippy.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.clippy.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.clippy.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.clippy.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.clippy.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.clippy.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.clippy.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.clippy.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.clippy.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.clippy.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.clippy.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.clippy.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.clippy.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.clippy.settings.allFeatures

Run clippy with --all-features

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.clippy.settings.denyWarnings

Fail when warnings are present

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.clippy.settings.extraArgs

Additional arguments to pass to clippy

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.clippy.settings.offline

Run clippy offline

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.clippy.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.clippy.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.clippy.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.clippy.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format

cmake-format hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.settings.configPath

Path to the configuration file (.json,.python,.yaml)

Type: string

Default: ""

Example: ".cmake-format.json"

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.cmake-format.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.credo

credo hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.credo.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.credo.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.credo.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.credo.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.credo.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.credo.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.credo.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.credo.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.credo.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.credo.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.credo.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.credo.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.credo.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.credo.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.credo.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.credo.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.credo.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.credo.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.credo.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.credo.settings.strict

Whether to auto-promote the changes.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.credo.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.credo.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.credo.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.credo.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.deadnix

deadnix hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.settings.edit

Remove unused code and write to source file.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.settings.exclude

Files to exclude from analysis.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.settings.hidden

Recurse into hidden subdirectories and process hidden .*.nix files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.settings.noLambdaArg

Don’t check lambda parameter arguments.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.settings.noLambdaPatternNames

Don’t check lambda pattern names (don’t break nixpkgs callPackage).

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.settings.noUnderscore

Don’t check any bindings that start with a _.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.settings.quiet

Don’t print a dead code report.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.deadnix.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.denofmt

denofmt hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.settings.configPath

Path to the configuration JSON file

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.settings.write

Whether to edit files inplace.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denofmt.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.denolint

denolint hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.denolint.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.denolint.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.denolint.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denolint.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.denolint.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denolint.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denolint.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.denolint.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.denolint.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denolint.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denolint.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denolint.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.denolint.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.denolint.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.denolint.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.denolint.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.denolint.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.denolint.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.denolint.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.denolint.settings.configPath

Path to the configuration JSON file

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.denolint.settings.format

Output format.

Type: one of “default”, “compact”, “json”

Default: "default"

Declared by:

perSystem.pre-commit.settings.hooks.denolint.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.denolint.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.denolint.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.denolint.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt

dune-fmt hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.settings.auto-promote

Whether to auto-promote the changes.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.settings.extraRuntimeInputs

Extra runtimeInputs to add to the environment, eg. ocamlformat.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.dune-fmt.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.eclint

eclint hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.eclint.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.eclint.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.eclint.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eclint.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.eclint.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eclint.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eclint.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.eclint.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.eclint.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eclint.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eclint.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eclint.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.eclint.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.eclint.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.eclint.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.eclint.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.eclint.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.eclint.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.eclint.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.eclint.settings.color

When to generate colored output.

Type: one of “auto”, “always”, “never”

Default: "auto"

Declared by:

perSystem.pre-commit.settings.hooks.eclint.settings.exclude

Filter to exclude files.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eclint.settings.fix

Modify files in place rather than showing the errors.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.eclint.settings.summary

Only show number of errors per file.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.eclint.settings.verbosity

Log level verbosity

Type: one of 0, 1, 2, 3, 4

Default: 0

Declared by:

perSystem.pre-commit.settings.hooks.eclint.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.eclint.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.eclint.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eclint.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.eslint

eslint hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.eslint.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.eslint.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.eslint.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eslint.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.eslint.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eslint.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eslint.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.eslint.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.eslint.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eslint.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eslint.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eslint.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.eslint.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.eslint.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.eslint.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.eslint.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.eslint.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.eslint.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.eslint.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.eslint.settings.binPath

eslint binary path. E.g. if you want to use the eslint in node_modules, use ./node_modules/.bin/eslint.

Type: null or path

Default: ${tools.eslint}/bin/eslint

Declared by:

perSystem.pre-commit.settings.hooks.eslint.settings.extensions

The pattern of files to run on, see https://pre-commit.com/#hooks-files.

Type: string

Default: "\\.js$"

Declared by:

perSystem.pre-commit.settings.hooks.eslint.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.eslint.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.eslint.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.eslint.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flake8

flake8 hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.flake8.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flake8.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.flake8.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flake8.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flake8.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flake8.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flake8.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.flake8.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.flake8.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flake8.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flake8.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flake8.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flake8.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.flake8.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.flake8.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.flake8.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.flake8.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.flake8.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.flake8.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flake8.settings.binPath

flake8 binary path. Should be used to specify flake8 binary from your Nix-managed Python environment.

Type: null or string

Default:

"${tools.flake8}/bin/flake8"

Declared by:

perSystem.pre-commit.settings.hooks.flake8.settings.extendIgnore

List of additional ignore codes

Type: list of string

Default: [ ]

Example:

[
  "E501"
]

Declared by:

perSystem.pre-commit.settings.hooks.flake8.settings.format

Output format.

Type: string

Default: "default"

Declared by:

perSystem.pre-commit.settings.hooks.flake8.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.flake8.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.flake8.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flake8.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flynt

flynt hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.flynt.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flynt.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.flynt.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flynt.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flynt.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flynt.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flynt.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.flynt.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.flynt.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flynt.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flynt.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flynt.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flynt.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.flynt.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.flynt.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.flynt.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.flynt.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.flynt.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.flynt.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flynt.settings.aggressive

Include conversions with potentially changed behavior.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flynt.settings.binPath

flynt binary path. Can be used to specify the flynt binary from an existing Python environment.

Type: null or string

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.flynt.settings.dry-run

Do not change files in-place and print diff instead.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flynt.settings.exclude

Ignore files with given strings in their absolute path.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flynt.settings.fail-on-change

Fail when diff is not empty (for linting purposes).

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.flynt.settings.line-length

Convert expressions spanning multiple lines, only if the resulting single line will fit into this line length limit.

Type: null or signed integer

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.flynt.settings.no-multiline

Convert only single line expressions.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flynt.settings.quiet

Run without output.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flynt.settings.string

Interpret the input as a Python code snippet and print the converted version.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flynt.settings.transform-concats

Replace string concatenations with f-strings.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flynt.settings.verbose

Run with verbose output.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.flynt.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.flynt.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.flynt.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.flynt.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.golines

golines hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.golines.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.golines.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.golines.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.golines.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.golines.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.golines.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.golines.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.golines.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.golines.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.golines.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.golines.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.golines.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.golines.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.golines.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.golines.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.golines.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.golines.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.golines.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.golines.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.golines.settings.flags

Flags passed to golines. See all available here

Type: string

Default: ""

Example: "-m 120"

Declared by:

perSystem.pre-commit.settings.hooks.golines.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.golines.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.golines.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.golines.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.headache

headache hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.headache.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.headache.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.headache.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.headache.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.headache.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.headache.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.headache.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.headache.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.headache.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.headache.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.headache.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.headache.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.headache.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.headache.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.headache.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.headache.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.headache.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.headache.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.headache.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.headache.settings.header-file

Path to the header file.

Type: string

Default: ".header"

Declared by:

perSystem.pre-commit.settings.hooks.headache.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.headache.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.headache.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.headache.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.hlint

hlint hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.hlint.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.hlint.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.hlint.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hlint.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.hlint.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hlint.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hlint.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.hlint.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.hlint.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hlint.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hlint.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hlint.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.hlint.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.hlint.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.hlint.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.hlint.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.hlint.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.hlint.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.hlint.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.hlint.settings.hintFile

Path to hlint.yaml. By default, hlint searches for .hlint.yaml in the project root.

Type: null or path

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.hlint.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.hlint.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.hlint.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hlint.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.hpack

hpack hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.hpack.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.hpack.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.hpack.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hpack.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.hpack.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hpack.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hpack.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.hpack.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.hpack.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hpack.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hpack.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hpack.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.hpack.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.hpack.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.hpack.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.hpack.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.hpack.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.hpack.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.hpack.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.hpack.settings.silent

Whether generation should be silent.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.hpack.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.hpack.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.hpack.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.hpack.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.isort

isort hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.isort.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.isort.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.isort.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.isort.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.isort.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.isort.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.isort.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.isort.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.isort.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.isort.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.isort.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.isort.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.isort.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.isort.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.isort.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.isort.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.isort.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.isort.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.isort.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.isort.settings.flags

Flags passed to isort. See all available here.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.isort.settings.profile

Built-in profiles to allow easy interoperability with common projects and code styles.

Type: one of “”, “black”, “django”, “pycharm”, “google”, “open_stack”, “plone”, “attrs”, “hug”, “wemake”, “appnexus”

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.isort.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.isort.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.isort.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.isort.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lacheck

lacheck hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lacheck.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.latexindent

latexindent hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.settings.flags

Flags passed to latexindent. See available flags here

Type: string

Default: "--local --silent --overwriteIfDifferent"

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.latexindent.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls

lua-ls hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.settings.checklevel

The diagnostic check level

Type: one of “Error”, “Warning”, “Information”, “Hint”

Default: "Warning"

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.settings.configuration

See https://github.com/LuaLS/lua-language-server/wiki/Configuration-File#luarcjson

Type: attribute set

Default: { }

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lua-ls.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lychee

lychee hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.lychee.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lychee.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.lychee.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lychee.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lychee.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lychee.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lychee.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.lychee.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.lychee.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lychee.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lychee.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lychee.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lychee.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.lychee.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.lychee.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.lychee.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.lychee.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.lychee.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.lychee.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.lychee.settings.configPath

Path to the config file.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.lychee.settings.flags

Flags passed to lychee. See all available here.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.lychee.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.lychee.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.lychee.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.lychee.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint

markdownlint hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.settings.configuration

See https://github.com/DavidAnson/markdownlint/blob/main/schema/.markdownlint.jsonc

Type: attribute set

Default: { }

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.markdownlint.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mdl

mdl hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.mdl.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mdl.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.mdl.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mdl.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mdl.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mdl.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mdl.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.mdl.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.mdl.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mdl.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mdl.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mdl.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mdl.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.mdl.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.mdl.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.mdl.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.mdl.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.mdl.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.mdl.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mdl.settings.configPath

The configuration file to use.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.mdl.settings.git-recurse

Only process files known to git when given a directory.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mdl.settings.ignore-front-matter

Ignore YAML front matter.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mdl.settings.json

Format output as JSON.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mdl.settings.rules

Markdown rules to use for linting. Per default all rules are processed.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mdl.settings.rulesets

Specify additional ruleset files to load.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mdl.settings.show-aliases

Show rule alias instead of rule ID when viewing rules.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mdl.settings.skip-default-ruleset

Do not load the default markdownlint ruleset. Use this option if you only want to load custom rulesets.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mdl.settings.style

Select which style mdl uses.

Type: string

Default: "default"

Declared by:

perSystem.pre-commit.settings.hooks.mdl.settings.tags

Markdown rules to use for linting containing the given tags. Per default all rules are processed.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mdl.settings.verbose

Increase verbosity.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mdl.settings.warnings

Show Kramdown warnings.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mdl.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.mdl.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.mdl.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mdl.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck

mkdocs-linkcheck hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.settings.binPath

mkdocs-linkcheck binary path. Should be used to specify the mkdocs-linkcheck binary from your Nix-managed Python environment.

Type: null or path

Default:

"${tools.mkdocs-linkcheck}/bin/mkdocs-linkcheck"

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.settings.extension

File extension to scan for.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.settings.local-only

Whether to only check local links.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.settings.method

HTTP method to use when checking external links.

Type: one of “get”, “head”

Default: "get"

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.settings.path

Path to check

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.settings.recurse

Whether to recurse directories under path.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mkdocs-linkcheck.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mypy

mypy hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.mypy.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mypy.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.mypy.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mypy.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mypy.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mypy.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mypy.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.mypy.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.mypy.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mypy.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mypy.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mypy.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mypy.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.mypy.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.mypy.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.mypy.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.mypy.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.mypy.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.mypy.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.mypy.settings.binPath

Mypy binary path. Should be used to specify the mypy executable in an environment containing your typing stubs.

Type: null or string

Default:

"${tools.mypy}/bin/mypy"

Declared by:

perSystem.pre-commit.settings.hooks.mypy.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.mypy.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.mypy.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.mypy.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic

nixfmt (classic) hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.settings.width

Line width.

Type: null or signed integer

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-classic.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style

nixfmt (RFC 166 style) hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.settings.width

Line width.

Type: null or signed integer

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.nixfmt-rfc-style.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch

no-commit-to-branch-hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.settings.branch

Branches to disallow commits to.

Type: list of string

Default:

[
  "main"
]

Example:

[
  "main"
  "master"
]

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.settings.pattern

RegEx patterns for branch names to disallow commits to.

Type: list of string

Default: [ ]

Example:

[
  "ma.*"
]

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.no-commit-to-branch.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ormolu

ormolu hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.settings.cabalDefaultExtensions

Use default-extensions from .cabal files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.settings.defaultExtensions

Haskell language extensions to enable.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ormolu.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer

php-cs-fixer hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.settings.binPath

PHP-CS-Fixer binary path.

Type: null or string

Default:

"${tools.php-cs-fixer}/bin/php-cs-fixer"

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.php-cs-fixer.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf

phpcbf hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.settings.binPath

PHP_CodeSniffer binary path.

Type: null or string

Default:

"${tools.phpcbf}/bin/phpcbf"

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcbf.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpcs

phpcs hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.settings.binPath

PHP_CodeSniffer binary path.

Type: null or string

Default:

"${tools.phpcs}/bin/phpcs"

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpcs.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpstan

phpstan hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.settings.binPath

PHPStan binary path.

Type: null or string

Default:

"${tools.phpstan}/bin/phpstan"

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.phpstan.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier

prettier hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.prettier.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.prettier.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.prettier.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.prettier.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.prettier.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.prettier.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.prettier.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.prettier.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.prettier.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.prettier.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.prettier.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.prettier.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.prettier.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.prettier.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.prettier.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.prettier.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.allow-parens

Include parentheses around a sole arrow function parameter.

Type: one of “always”, “avoid”

Default: "always"

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.binPath

prettier binary path. E.g. if you want to use the prettier in node_modules, use ./node_modules/.bin/prettier.

Type: null or path

Default:

"${tools.prettier}/bin/prettier"

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.bracket-same-line

Put > of opening tags on the last line instead of on a new line.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.cache

Only format changed files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.cache-location

Path to the cache file location used by --cache flag.

Type: string

Default: "./node_modules/.cache/prettier/.prettier-cache"

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.cache-strategy

Strategy for the cache to use for detecting changed files.

Type: null or one of “metadata”, “content”

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.check

Output a human-friendly message and a list of unformatted files, if any.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.color

Colorize error messages.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.config-precedence

Defines how config file should be evaluated in combination of CLI options.

Type: one of “cli-override”, “file-override”, “prefer-file”

Default: "cli-override"

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.configPath

Path to a Prettier configuration file (.prettierrc, package.json, prettier.config.js).

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.embedded-language-formatting

Control how Prettier formats quoted code embedded in the file.

Type: one of “auto”, “off”

Default: "auto"

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.end-of-line

Which end of line characters to apply.

Type: one of “lf”, “crlf”, “cr”, “auto”

Default: "lf"

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.html-whitespace-sensitivity

How to handle whitespaces in HTML.

Type: one of “css”, “strict”, “ignore”

Default: "css"

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.ignore-path

Path to a file containing patterns that describe files to ignore. By default, prettier looks for ./.gitignore and ./.prettierignore. Multiple values are accepted.

Type: list of path

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.ignore-unknown

Ignore unknown files.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.insert-pragma

Insert @format pragma into file’s first docblock comment.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.jsx-single-quote

Use single quotes in JSX.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.list-different

Print the filenames of files that are different from Prettier formatting.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.log-level

What level of logs to report.

Type: one of “silent”, “error”, “warn”, “log”, “debug”

Default: "log"

Example: "debug"

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.no-bracket-spacing

Do not print spaces between brackets.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.no-config

Do not look for a configuration file.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.no-editorconfig

Don’t take .editorconfig into account when parsing configuration.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.no-error-on-unmatched-pattern

Prevent errors when pattern is unmatched.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.no-semi

Do not print semicolons, except at the beginning of lines which may need them.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.parser

Which parser to use.

Type: one of “”, “flow”, “babel”, “babel-flow”, “babel-ts”, “typescript”, “acorn”, “espree”, “meriyah”, “css”, “less”, “scss”, “json”, “json5”, “json-stringify”, “graphql”, “markdown”, “mdx”, “vue”, “yaml”, “glimmer”, “html”, “angular”, “lwc”

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.plugins

Add plugins from paths.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.print-width

Line length that the printer will wrap on.

Type: signed integer

Default: 80

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.prose-wrap

When to or if at all hard wrap prose to print width.

Type: one of “always”, “never”, “preserve”

Default: "preserve"

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.quote-props

Change when properties in objects are quoted.

Type: one of “as-needed”, “consistent”, “preserve”

Default: "as-needed"

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.require-pragma

Require either ‘@prettier’ or ‘@format’ to be present in the file’s first docblock comment.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.single-attribute-per-line

Enforce single attribute per line in HTML, Vue andJSX.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.single-quote

Number of spaces per indentation-level.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.tab-width

Line length that the printer will wrap on.

Type: signed integer

Default: 2

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.trailing-comma

Print trailing commas wherever possible in multi-line comma-separated syntactic structures.

Type: one of “all”, “es5”, “none”

Default: "all"

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.use-tabs

Indent with tabs instead of spaces.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.vue-indent-script-and-style

Indent script and style tags in Vue files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.with-node-modules

Process files inside ‘node_modules’ directory.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.prettier.settings.write

Edit files in-place.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.prettier.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.prettier.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.prettier.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.prettier.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.psalm

psalm hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.psalm.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.psalm.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.psalm.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.psalm.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.psalm.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.psalm.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.psalm.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.psalm.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.psalm.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.psalm.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.psalm.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.psalm.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.psalm.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.psalm.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.psalm.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.psalm.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.psalm.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.psalm.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.psalm.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.psalm.settings.binPath

Psalm binary path.

Type: null or string

Default:

"${tools.psalm}/bin/psalm"

Declared by:

perSystem.pre-commit.settings.hooks.psalm.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.psalm.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.psalm.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.psalm.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pylint

pylint hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.pylint.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pylint.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.pylint.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pylint.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pylint.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pylint.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pylint.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.pylint.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.pylint.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pylint.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pylint.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pylint.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pylint.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.pylint.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.pylint.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.pylint.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.pylint.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.pylint.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.pylint.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pylint.settings.binPath

Pylint binary path. Should be used to specify Pylint binary from your Nix-managed Python environment.

Type: null or string

Default:

"${tools.pylint}/bin/pylint"

Declared by:

perSystem.pre-commit.settings.hooks.pylint.settings.reports

Whether to display a full report.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pylint.settings.score

Whether to activate the evaluation score.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.pylint.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.pylint.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.pylint.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pylint.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pyright

pyright hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.pyright.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pyright.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.pyright.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyright.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pyright.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyright.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyright.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.pyright.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.pyright.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyright.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyright.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyright.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pyright.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.pyright.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.pyright.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.pyright.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.pyright.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.pyright.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.pyright.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pyright.settings.binPath

Pyright binary path. Should be used to specify the pyright executable in an environment containing your typing stubs.

Type: null or string

Default:

"${tools.pyright}/bin/pyright"

Declared by:

perSystem.pre-commit.settings.hooks.pyright.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.pyright.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.pyright.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyright.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade

pyupgrade hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.settings.binPath

pyupgrade binary path. Should be used to specify the pyupgrade binary from your Nix-managed Python environment.

Type: null or string

Default:

"${tools.pyupgrade}/bin/pyupgrade"

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.pyupgrade.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.reuse

reuse hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.reuse.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.reuse.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.reuse.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.reuse.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.reuse.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.reuse.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.reuse.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.reuse.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.reuse.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.reuse.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.reuse.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.reuse.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.reuse.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.reuse.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.reuse.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.reuse.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.reuse.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.reuse.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.reuse.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.reuse.settings.flags

Flags passed to reuse. For available options run ‘reuse lint --help’

Type: string

Default: ""

Example: "--json"

Declared by:

perSystem.pre-commit.settings.hooks.reuse.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.reuse.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.reuse.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.reuse.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.revive

revive hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.revive.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.revive.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.revive.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.revive.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.revive.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.revive.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.revive.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.revive.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.revive.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.revive.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.revive.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.revive.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.revive.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.revive.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.revive.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.revive.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.revive.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.revive.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.revive.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.revive.settings.configPath

Path to the configuration TOML file.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.revive.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.revive.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.revive.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.revive.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets

ripsecrets hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.settings.additionalPatterns

Additional regex patterns used to find secrets. If there is a matching group in the regex the matched group will be tested for randomness before being reported as a secret.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.ripsecrets.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt

Additional rustfmt settings

Override the rustfmt and cargo packages by setting hooks.rustfmt.packageOverrides.

hooks.rustfmt.packageOverrides.cargo = pkgs.cargo;
hooks.rustfmt.packageOverrides.rustfmt = pkgs.rustfmt;

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.packageOverrides.cargo

The cargo package to use.

Type: package

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.packageOverrides.rustfmt

The rustfmt package to use.

Type: package

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.settings.package

Package(s) to check

Type: list of string matching the pattern [][*?!0-9A-Za-z_-]+

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.settings.all

Format all packages, and also their local path-based dependencies

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.settings.check

Run rustfmt in check mode

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.settings.color

Coloring the output

Type: one of “auto”, “always”, “never”

Default: "always"

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.settings.config

Override configuration values

Type: attribute set

Default: { }

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.settings.config-path

Path to rustfmt.toml config file

Type: null or string

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.settings.emit

What data to emit and how

Type: null or one of “files”, “stdout”

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.settings.files-with-diff

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.settings.manifest-path

Path to Cargo.toml

Type: null or string

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.settings.message-format

The output format of diagnostic messages

Type: null or one of “human”, “short”

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.settings.verbose

Use verbose output

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.rustfmt.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.shfmt

shfmt hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.settings.simplify

Simplify the code.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.shfmt.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents

sort-file-contents-hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.settings.ignore-case

Fold lower case to upper case characters.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.settings.unique

Ensure each line is unique.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.sort-file-contents.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.statix

statix hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.statix.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.statix.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.statix.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.statix.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.statix.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.statix.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.statix.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.statix.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.statix.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.statix.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.statix.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.statix.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.statix.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.statix.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.statix.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.statix.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.statix.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.statix.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.statix.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.statix.settings.config

Path to statix.toml or its parent directory.

Type: null or string

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.statix.settings.format

Error Output format.

Type: one of “stderr”, “errfmt”, “json”

Default: "errfmt"

Declared by:

perSystem.pre-commit.settings.hooks.statix.settings.ignore

Globs of file patterns to skip.

Type: list of string

Default: [ ]

Example:

[
  "flake.nix"
  "_*"
]

Declared by:

perSystem.pre-commit.settings.hooks.statix.settings.unrestricted

Don’t respect .gitignore files.

Type: boolean

Default: false

Example: true

Declared by:

perSystem.pre-commit.settings.hooks.statix.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.statix.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.statix.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.statix.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.treefmt

Treefmt hook.

Include any additional formatters configured by treefmt as hooks.treefmt.settings.formatters.

hooks.treefmt.settings.formatters = [
  pkgs.nixpkgs-fmt
  pkgs.black
];

Override treefmt itself by setting hooks.treefmt.packageOverrides.treefmt.

hooks.treefmt.packageOverrides.treefmt = pkgs.treefmt;

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.packageOverrides.treefmt

The treefmt package to use

Type: package

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.settings.fail-on-change

Fail if some files require re-formatting.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.settings.formatters

The formatter packages configured by treefmt

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.settings.no-cache

Ignore the evaluation cache entirely.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.treefmt.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos

typos hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.typos.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.typos.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.typos.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.typos.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.typos.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.typos.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.typos.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.typos.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.typos.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.typos.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.typos.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.typos.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.typos.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.typos.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.typos.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.typos.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.binary

Whether to search binary files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.color

When to use generate output.

Type: one of “auto”, “always”, “never”

Default: "auto"

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.configPath

Path to a custom config file.

Type: string

Default: ""

Example: ".typos.toml"

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.configuration

Multiline-string configuration passed as config file. If set, config set in typos.settings.configPath gets ignored.

Type: string

Default: ""

Example:

''
  [files]
  ignore-dot = true
  
  [default]
  binary = false
  
  [type.py]
  extend-glob = []
''

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.diff

Print a diff of what would change.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.exclude

Ignore files and directories matching the glob.

Type: string

Default: ""

Example: "*.nix"

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.format

Output format to use.

Type: one of “silent”, “brief”, “long”, “json”

Default: "long"

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.hidden

Search hidden files and directories.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.ignored-words

Spellings and words to ignore.

Type: list of string

Default: [ ]

Example:

[
  "MQTT"
  "mosquitto"
]

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.locale

Which language to use for spell checking.

Type: one of “en”, “en-us”, “en-gb”, “en-ca”, “en-au”

Default: "en"

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.no-check-filenames

Skip verifying spelling in file names.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.no-check-files

Skip verifying spelling in files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.no-unicode

Only allow ASCII characters in identifiers.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.quiet

Less output per occurrence.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.verbose

More output per occurrence.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos.settings.write

Fix spelling in files by writing them. Cannot be used with typos.settings.diff.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.typos.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.typos.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.typos.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.typos.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.vale

vale hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.vale.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.vale.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.vale.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.vale.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.vale.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.vale.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.vale.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.vale.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.vale.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.vale.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.vale.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.vale.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.vale.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.vale.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.vale.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.vale.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.vale.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.vale.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.vale.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.vale.settings.configPath

Path to the config file.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.vale.settings.configuration

Multiline-string configuration passed as config file.

Type: string

Default: ""

Example:

''
  MinAlertLevel = suggestion
  [*]
  BasedOnStyles = Vale
''

Declared by:

perSystem.pre-commit.settings.hooks.vale.settings.flags

Flags passed to vale.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.vale.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.vale.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.vale.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.vale.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt

yamlfmt hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.settings.configPath

Path to a custom configuration file.

Type: string

Default: ""

Example: ".yamlfmt"

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamlfmt.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.yamllint

yamllint hook

Type: submodule

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.enable

Whether to enable this pre-commit hook.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.package

An optional package that provides the hook.

Type: null or package

Default: null

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.after

List of hooks that should run before this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.always_run

if true this hook will run even if there are no matching files.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.args

List of additional parameters to pass to the hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.before

List of hooks that should run after this hook.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.description

Description of the hook. Used for metadata purposes only.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.entry

The entry point - the executable to run. entry can also contain arguments that will not be overridden, such as entry = "autopep8 -i";.

Type: string

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.exclude_types

List of file types to exclude. See Filtering files with types.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.excludes

Exclude files that were matched by these patterns.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.extraPackages

Additional packages required to run the hook.

These are propagated to enabledPackages for constructing developer environments.

Type: list of package

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.fail_fast

if true pre-commit will stop running hooks if this hook fails.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.files

The pattern of files to run on.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.id

The unique identifier for the hook.

You do not need to set or modify this value.

The id is used to reference a hook when using pre-commit run <id>. It can also be used to reference the hook in other hooks’ before and after fields to define the order in which hooks run.

The id is set to the attribute name the hook submodule is bound to in the parent module. For example, the id of following hook would be my-hook.

{
  hooks = {
    my-hook = {
      enable = true;
      entry = "my-hook";
    };
  }
}

Type: string

Default: "the attribute name the hook submodule is bound to"

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.language

The language of the hook - tells pre-commit how to install the hook.

Type: string

Default: "system"

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.name

The name of the hook. Shown during hook execution.

Type: string

Default: the attribute name the hook submodule is bound to, same as id

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.pass_filenames

Whether to pass filenames as arguments to the entry point.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.raw

Raw fields of a pre-commit hook. This is mostly for internal use but exposed in case you need to work around something.

Default: taken from the other hook options.

Type: attribute set of unspecified value

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.require_serial

if true this hook will execute using a single process instead of in parallel.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.settings.configData

Serialized YAML object describing the configuration.

Type: string

Default: ""

Example: "{extends: relaxed, rules: {line-length: {max: 120}}}"

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.settings.configPath

Path to a custom configuration file.

Type: string

Default: ""

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.settings.configuration

Multiline-string configuration passed as config file. If set, configuration file set in yamllint.settings.configPath gets ignored.

Type: string

Default: ""

Example:

''
  ---
  
  extends: relaxed
  
  rules:
    indentation: enable
''

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.settings.format

Format for parsing output.

Type: one of “parsable”, “standard”, “colored”, “github”, “auto”

Default: "auto"

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.settings.preset

The configuration preset to use.

Type: one of “default”, “relaxed”

Default: "default"

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.settings.strict

Return non-zero exit code on warnings as well as errors.

Type: boolean

Default: true

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.stages

Confines the hook to run at a particular stage.

Type: list of (one of “commit-msg”, “post-checkout”, “post-commit”, “post-merge”, “post-rewrite”, “pre-commit”, “pre-merge-commit”, “pre-push”, “pre-rebase”, “prepare-commit-msg”, “manual”, “commit”, “push”, “merge-commit”)

Default: default_stages

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.types

List of file types to run on. See Filtering files with types.

Type: list of string

Default:

[
  "file"
]

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.types_or

List of file types to run on, where only a single type needs to match.

Type: list of string

Default: [ ]

Declared by:

perSystem.pre-commit.settings.hooks.yamllint.verbose

forces the output of the hook to be printed even when the hook passes.

Type: boolean

Default: false

Declared by:

perSystem.pre-commit.settings.installationScript

A bash snippet that installs nix-pre-commit-hooks in the current directory

Type: string (read only)

Declared by:

perSystem.pre-commit.settings.rootSrc

The source of the project to be checked.

This is used in the derivation that performs the check.

If you use the flakeModule, the default is self.outPath; the whole flake sources.

Type: path

Default: gitignoreSource config.src

Declared by:

perSystem.pre-commit.settings.run

A derivation that tests whether the pre-commit hooks run cleanly on the entire project.

Type: package (read only)

Default: <derivation>

Declared by:

perSystem.pre-commit.settings.settings.rust.cargoManifestPath

Path to Cargo.toml

Type: null or string

Default: null

Declared by:

perSystem.pre-commit.settings.settings.rust.check.cargoDeps

Cargo dependencies needed to run the checks.

Type: null or (attribute set)

Default: null

Example: "pkgs.rustPlatform.importCargoLock { lockFile = ./Cargo.lock; }"

Declared by:

perSystem.pre-commit.settings.src

Root of the project. By default this will be filtered with the gitignoreSource function later, unless rootSrc is specified.

If you use the flakeModule, the default is self.outPath; the whole flake sources.

Type: path

Declared by:

perSystem.pre-commit.settings.tools

Tool set from which nix-pre-commit-hooks will pick binaries.

nix-pre-commit-hooks comes with its own set of packages for this purpose.

Type: lazy attribute set of (null or package)

Default: git-hooks.nix-pkgs.callPackage tools-dot-nix { inherit (pkgs) system; }

Declared by: