Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
nix3-flake-check(1)	    General Commands Manual	   nix3-flake-check(1)

	      Warning
	      This  program  is	 experimental <../../development/experimental-
	      features.md#xp-feature-nix-command> and its interface is subject
	      to change.

Name
       nix flake check - check whether the flake evaluates and run its tests

Synopsis
       nix flake check [option...] flake-url

Examples
         Evaluate the flake in	the current directory, and build its checks:

       # nix flake check

         Verify that the  patchelf  flake  evaluates,	but  don't  build  its
	  checks:

       # nix flake check --no-build github:NixOS/patchelf

Description
       This  command  verifies	that  the  flake  specified by flake reference
       flake-url can be	evaluated successfully (as detailed below),  and  that
       the  derivations	 specified  by	the flake's checks output can be built
       successfully.

       If the keep-going option	is set to true,	Nix will  keep	evaluating  as
       much  as	 it can	and report the errors as it encounters them. Otherwise
       it will stop at the first error.

Evaluation checks
       The following flake output attributes must be derivations:

         checks.system.name
         devShells.system.default
         devShells.system.name
         nixosConfigurations.name.config.system.build.toplevel
         packages.system.default
         packages.system.name

       The  following  flake  output  attributes  must	be   app   definitions
       <./nix3-run.md>:

         apps.system.default
         apps.system.name

       The  following  flake  output  attributes  must be template definitions
       <./nix3-flake-init.md>:

         templates.default
         templates.name

       The following flake output attributes must be Nixpkgs overlays:

         overlays.default
         overlays.name

       The following flake output attributes must be NixOS modules:

         nixosModules.default
         nixosModules.name

       The following flake output attributes  must  be	bundlers  <./nix3-bun-
       dle.md>:

         bundlers.default
         bundlers.name

       Old  default  attributes	 are  renamed,	they will work but will	emit a
       warning:

         defaultPackage.<system>  packages.system.default
         defaultApps.<system>	apps.system.default
         defaultTemplate  templates.default
         defaultBundler.<system>  bundlers.system.default
         overlay  overlays.default
         devShell.<system>  devShells.system.default
         nixosModule  nixosModules.default

       In addition, the	hydraJobs output is evaluated in the same way  as  Hy-
       dra's  hydra-eval-jobs  (i.e.  as a arbitrarily deeply nested attribute
       set of derivations). Similarly,	the  legacyPackages.system  output  is
       evaluated like nix-env --query --available.

Options
         --all-systems	<#opt-all-systems>

	  Check	the outputs for	all systems.

         --no-build <#opt-no-build>

	  Do not build checks.

   Common evaluation options
         --arg	<#opt-arg> name	expr

	  Pass the value expr as the argument name to Nix functions.

         --arg-from-file <#opt-arg-from-file> name path

	  Pass	the  contents  of  file	path as	the argument name to Nix func-
	  tions.

         --arg-from-stdin <#opt-arg-from-stdin> name

	  Pass the contents of stdin as	the argument name to Nix functions.

         --argstr <#opt-argstr> name string

	  Pass the string string as the	argument name to Nix functions.

         --debugger <#opt-debugger>

	  Start	an interactive environment if evaluation fails.

         --eval-store <#opt-eval-store> store-url

	  The URL  of  the  Nix	 store	<../../store/types/index.md#store-url-
	  format>  to  use  for	 evaluation,  i.e.  to store derivations (.drv
	  files) and inputs referenced by them.

         --impure <#opt-impure>

	  Allow	access to mutable paths	and repositories.

         --include <#opt-include> / -I	path

	  Add path to  search  path  entries  used  to	resolve	 lookup	 paths
	  <../../language/constructs/lookup-path.md>

	  This option may be given multiple times.

	  Paths	 added through -I take precedence over the nix-path configura-
	  tion setting <../../command-ref/conf-file.md#conf-nix-path> and  the
	  NIX_PATH  environment	variable <../../command-ref/env-common.md#env-
	  NIX_PATH>.

         --override-flake <#opt-override-flake> original-ref resolved-ref

	  Override the flake registries, redirecting original-ref to resolved-
	  ref.

   Common flake-related	options
         --commit-lock-file <#opt-commit-lock-file>

	  Commit changes to the	flake's	lock file.

         --inputs-from	<#opt-inputs-from> flake-url

	  Use the inputs of the	specified flake	as registry entries.

         --no-registries <#opt-no-registries>

	  Don't	allow lookups in the flake registries.

		 DEPRECATED

		 Use --no-use-registries <../../command-ref/conf-file.md#conf-
		 use-registries> instead.

         --no-update-lock-file	<#opt-no-update-lock-file>

	  Do not allow any updates to the flake's lock file.

         --no-write-lock-file <#opt-no-write-lock-file>

	  Do not write the flake's newly generated lock	file.

         --output-lock-file <#opt-output-lock-file> flake-lock-path

	  Write	the given lock file instead of flake.lock within the top-level
	  flake.

         --override-input <#opt-override-input> input-path flake-url

	  Override a specific flake input (e.g.	dwarffs/nixpkgs). This implies
	  --no-write-lock-file.

         --recreate-lock-file <#opt-recreate-lock-file>

	  Recreate the flake's lock file from scratch.

		 DEPRECATED

		 Use nix flake	update	<../../command-ref/new-cli/nix3-flake-
		 update.md> instead.

         --reference-lock-file	<#opt-reference-lock-file> flake-lock-path

	  Read	the given lock file instead of flake.lock within the top-level
	  flake.

         --update-input <#opt-update-input> input-path

	  Update a specific flake input	(ignoring its previous	entry  in  the
	  lock file).

		 DEPRECATED

		 Use  nix  flake update	<../../command-ref/new-cli/nix3-flake-
		 update.md> instead.

   Logging-related options
         --debug <#opt-debug>

	  Set the logging verbosity level to `debug'.

         --log-format <#opt-log-format> format

	  Set the format of log	output;	one of raw, internal-json, bar or bar-
	  with-logs.

         --print-build-logs <#opt-print-build-logs> / -L

	  Print	full build logs	on standard error.

         --quiet <#opt-quiet>

	  Decrease the logging verbosity level.

         --verbose <#opt-verbose> / -v

	  Increase the logging verbosity level.

   Miscellaneous global	options
         --help <#opt-help>

	  Show usage information.

         --offline <#opt-offline>

	  Disable substituters and consider all	 previously  downloaded	 files
	  up-to-date.

         --option <#opt-option> name value

	  Set	the  Nix  configuration	 setting  name	to  value  (overriding
	  nix.conf).

         --refresh <#opt-refresh>

	  Consider all previously downloaded files out-of-date.

         --repair <#opt-repair>

	  During evaluation, rewrite missing or	corrupted  files  in  the  Nix
	  store. During	building, rebuild missing or corrupted store paths.

         --version <#opt-version>

	  Show version information.

	  Note

	  See man nix.conf <../../command-ref/conf-file.md#command-line-flags>
	  for overriding configuration settings	with command line flags.

							   nix3-flake-check(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=nix3-flake-check&sektion=1&manpath=FreeBSD+Ports+15.0.quarterly>

home | help