---
name: "nix3-upgrade-nix"
section: "1"
platform: "linux"
package: "nix-bin"
version: "2.26.3+dfsg-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/nix3-upgrade-nix"
---

# nix3-upgrade-nix(1)

upgrade Nix to the latest stable version

**Warning** \
 This program is **experimental** ⟨@docroot@/development/experimental-features.md#xp-feature-nix-command⟩ and its interface is subject to change.

## Name

`nix upgrade-nix` - upgrade Nix to the latest stable version

## Synopsis

`nix upgrade-nix` \[*option*…\]

## Examples

- •

  Upgrade Nix to the stable version declared in Nixpkgs:

```
# nix upgrade-nix
```

- •

  Upgrade Nix in a specific profile:

```
# nix upgrade-nix --profile ~alice/.local/state/nix/profiles/profile
```

## Description

This command upgrades Nix to the stable version.

By default, the latest stable version is defined by Nixpkgs, in nix-fallback-paths.nix ⟨https://github.com/NixOS/nixpkgs/raw/master/nixos/modules/installer/tools/nix-fallback-paths.nix⟩ and updated manually. It may not always be the latest tagged release.

By default, it locates the directory containing the `nix` binary in the `$PATH` environment variable. If that directory is a Nix profile, it will upgrade the `nix` package in that profile to the latest stable binary release.

You cannot use this command to upgrade Nix in the system profile of a NixOS system (that is, if `nix` is found in `/run/current-system`).

## Options

- •

  `--dry-run` ⟨#opt-dry-run⟩

-

  Show what this command would do without doing it.

- •

  `--nix-store-paths-url` ⟨#opt-nix-store-paths-url⟩ *url*

-

  The URL of the file that contains the store paths of the latest Nix release.

- •

  `--profile` ⟨#opt-profile⟩ / `-p` *profile-dir*

-

  The path to the Nix profile to upgrade.

### 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.

- •

  `--version` ⟨#opt-version⟩

-

  Show version information.

  **Note**

  See `man nix.conf` ⟨@docroot@/command-ref/conf-file.md#command-line-flags⟩ for overriding configuration settings with command line flags.
