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

# nix-store-import(1)

import Nix Archive ⟨@docroot@/store/file-system-object/content-address.md#serial-nix-archive⟩ into the store

## Name

`nix-store --import` - import Nix Archive ⟨@docroot@/store/file-system-object/content-address.md#serial-nix-archive⟩ into the store

## Synopsis

`nix-store` `--import`

## Description

The operation `--import` reads a serialisation of a set of store objects ⟨@docroot@/glossary.md#gloss-store-object⟩ produced by `nix-store --export` ⟨./export.md⟩ from standard input, and adds those store objects to the specified Nix store ⟨@docroot@/store/index.md⟩\\c . Paths that already exist in the target Nix store are ignored. If a path refers ⟨@docroot@/glossary.md#gloss-reference⟩ to another path that doesn’t exist in the target Nix store, the import fails.

**Note**

For efficient transfer of closures to remote machines over SSH, use `nix-copy-closure` ⟨@docroot@/command-ref/nix-copy-closure.md⟩\\c .

{{#include ./opt-common.md}}

{{#include ../opt-common.md}}

{{#include ../env-common.md}}

## Examples

**Example**

Given a closure of GNU Hello as a file:

```
$ storePath="$(nix-build '<nixpkgs>' -I nixpkgs=channel:nixpkgs-unstable -A hello --no-out-link)"
$ nix-store --export $(nix-store --query --requisites $storePath) > hello.closure
```

Import the closure into a remote SSH store ⟨@docroot@/store/types/ssh-store.md⟩ using the `--store` ⟨@docroot@/command-ref/conf-file.md#conf-store⟩ option:

```
$ nix-store --import --store ssh://alice@itchy.example.org < hello.closure
```
