> ## Documentation Index
> Fetch the complete documentation index at: https://flox.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# flox build update catalogs

## NAME

flox-build-update-catalogs - Update catalog lockfile for Nix expression
builds

## SYNOPSIS

```text theme={null}
flox [<general-options>] build update-catalogs
     [-d=<path>]
```

## DESCRIPTION

Read the catalog configuration from `.flox/nix-builds.toml` and generate
(or regenerate) the lockfile at `.flox/nix-builds.lock`.

Each catalog entry in [`nix-builds.toml`](/man/nix-builds.toml) is
resolved and pinned: Nix source-type catalogs are locked with
`nix flake prefetch`, and FloxHub catalogs are locked against the
FloxHub API. The resulting lockfile pins every catalog to a specific
revision, ensuring reproducible builds.

Both `.flox/nix-builds.toml` and `.flox/nix-builds.lock` should be
committed to version control so that all collaborators build against
identical catalog inputs.

This command only works with path (local) environments. It cannot be
used with managed or remote environments.

If no `.flox/nix-builds.toml` file exists, the command prints a warning
with the expected file path and exits without error.

## OPTIONS

### Environment Options

If no environment is specified for an environment command, the
environment in the current directory or the active environment that was
last activated is used.

`-d`, `--dir`\
Path containing a .flox/ directory.

### General Options

`-h`, `--help`\
Prints help information.

The following options can be passed when running any `flox` subcommand
but must be specified *before* the subcommand.

`-v`, `--verbose`\
Increase logging verbosity. Invoke multiple times for increasing detail.

`-q`, `--quiet`\
Silence logs except for errors.

## EXAMPLES

### Lock catalog inputs

```console theme={null}
$ flox build update-catalogs
```

## SEE ALSO

[`nix-builds.toml`](/man/nix-builds.toml)
[`flox-build`](/man/flox-build)
[`manifest.toml`](/man/manifest.toml)
