StackPanel

checks

Configuration options for stackpanel.checks

Checks Options

moduleChecks

Structured module checks organized by module ID. These are derivations that run during nix flake check and in CI.

Each module can define checks in standard categories:

For simple flake checks, use stackpanel.checks instead. This option provides structured metadata for certification.

PropertyValue
Typeattribute set of (submodule)
Default{ }

Example:

{
  oxlint = {
    eval = {
      description = "OxLint module evaluates correctly";
      required = true;
      derivation = pkgs.runCommand "oxlint-eval" {} "touch $out";
    };
    packages = {
      description = "OxLint package is available";
      required = true;
      derivation = pkgs.runCommand "oxlint-packages" {
        nativeBuildInputs = [ pkgs.oxlint ];
      } "oxlint --version > $out";
    };
  };
}

moduleChecks.<name>.config

Configuration check - verifies config generation works correctly. Recommended for modules that generate config files.

PropertyValue
Typenull or (submodule)
Defaultnull

moduleChecks.<name>.config.derivation

The derivation that runs this check (must succeed to pass)

PropertyValue
Typepackage
Defaultnone

moduleChecks.<name>.config.description

Human-readable description of what this check verifies

PropertyValue
Typestring
Defaultnone

moduleChecks.<name>.config.required

Whether this check is required for module certification

PropertyValue
Typeboolean
Defaultfalse

moduleChecks.<name>.config.timeout

Timeout in seconds for this check

PropertyValue
Typesigned integer
Default300

moduleChecks.<name>.custom

Custom module-specific checks. Use this for checks that don't fit the standard categories.

PropertyValue
Typeattribute set of (submodule)
Default{ }

moduleChecks.<name>.custom.<name>.derivation

The derivation that runs this check (must succeed to pass)

PropertyValue
Typepackage
Defaultnone

moduleChecks.<name>.custom.<name>.description

Human-readable description of what this check verifies

PropertyValue
Typestring
Defaultnone

moduleChecks.<name>.custom.<name>.required

Whether this check is required for module certification

PropertyValue
Typeboolean
Defaultfalse

moduleChecks.<name>.custom.<name>.timeout

Timeout in seconds for this check

PropertyValue
Typesigned integer
Default300

moduleChecks.<name>.eval

Evaluation check - verifies the module evaluates without errors. Required for module certification.

PropertyValue
Typenull or (submodule)
Defaultnull

moduleChecks.<name>.eval.derivation

The derivation that runs this check (must succeed to pass)

PropertyValue
Typepackage
Defaultnone

moduleChecks.<name>.eval.description

Human-readable description of what this check verifies

PropertyValue
Typestring
Defaultnone

moduleChecks.<name>.eval.required

Whether this check is required for module certification

PropertyValue
Typeboolean
Defaultfalse

moduleChecks.<name>.eval.timeout

Timeout in seconds for this check

PropertyValue
Typesigned integer
Default300

moduleChecks.<name>.integration

Integration check - verifies module works with a sample project. Recommended for complex modules.

PropertyValue
Typenull or (submodule)
Defaultnull

moduleChecks.<name>.integration.derivation

The derivation that runs this check (must succeed to pass)

PropertyValue
Typepackage
Defaultnone

moduleChecks.<name>.integration.description

Human-readable description of what this check verifies

PropertyValue
Typestring
Defaultnone

moduleChecks.<name>.integration.required

Whether this check is required for module certification

PropertyValue
Typeboolean
Defaultfalse

moduleChecks.<name>.integration.timeout

Timeout in seconds for this check

PropertyValue
Typesigned integer
Default300

moduleChecks.<name>.lint

Lint check - verifies the module's code passes linting. Optional.

PropertyValue
Typenull or (submodule)
Defaultnull

moduleChecks.<name>.lint.derivation

The derivation that runs this check (must succeed to pass)

PropertyValue
Typepackage
Defaultnone

moduleChecks.<name>.lint.description

Human-readable description of what this check verifies

PropertyValue
Typestring
Defaultnone

moduleChecks.<name>.lint.required

Whether this check is required for module certification

PropertyValue
Typeboolean
Defaultfalse

moduleChecks.<name>.lint.timeout

Timeout in seconds for this check

PropertyValue
Typesigned integer
Default300

moduleChecks.<name>.packages

Packages check - verifies required packages are available. Required for module certification.

PropertyValue
Typenull or (submodule)
Defaultnull

moduleChecks.<name>.packages.derivation

The derivation that runs this check (must succeed to pass)

PropertyValue
Typepackage
Defaultnone

moduleChecks.<name>.packages.description

Human-readable description of what this check verifies

PropertyValue
Typestring
Defaultnone

moduleChecks.<name>.packages.required

Whether this check is required for module certification

PropertyValue
Typeboolean
Defaultfalse

moduleChecks.<name>.packages.timeout

Timeout in seconds for this check

PropertyValue
Typesigned integer
Default300

moduleChecksCertification

Certification status for each module. Shows which required checks are present/missing.

PropertyValue
Typeattribute set of unspecified value
Default{ }
Read Onlytrue

moduleChecksFlattened

Flattened module check derivations for use in flake checks output. Keys are "-" (e.g., "oxlint-eval").

PropertyValue
Typeattribute set of package
Default{ }
Read Onlytrue

On this page