nix3-store-add(1)

nix3-store-add1

Add a file or directory to the nix store

Usage

nix store add [option…] path

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

Overview

Copy path to the Nix store, and print the resulting store path on standard output.

Warning

The resulting store path is not registered as a garbage collector root, so it could be deleted before you have a chance to register it.

Examples

Add a directory to the store:

# mkdir dir
# echo foo > dir/bar
# nix store add ./dir
/nix/store/6pmjx56pm94n66n4qw1nff0y1crm8nqg-dir
# cat /nix/store/6pmjx56pm94n66n4qw1nff0y1crm8nqg-dir/bar
foo

Options

•

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

Show what this command would do without doing it.

•

--hash-algo ⟨#opt-hash-algo⟩ hash-algo

Hash algorithm (md5, sha1, sha256, or sha512).

•

--mode ⟨#opt-mode⟩ content-address-method

How to compute the content-address of the store object. One of:

•

nar ⟨@docroot@/store/store-object/content-address.md#method-nix-archive⟩ (the default): Serialises the input as a Nix Archive ⟨@docroot@/store/file-system-object/content-address.md#serial-nix-archive⟩ and passes that to the hash function.

•

flat ⟨@docroot@/store/store-object/content-address.md#method-flat⟩\c : Assumes that the input is a single file and directly passes ⟨@docroot@/store/file-system-object/content-address.md#serial-flat⟩ it to the hash function.

•

text ⟨@docroot@/store/store-object/content-address.md#method-text⟩\c : Like flat, but used for derivations ⟨@docroot@/glossary.md#store-derivation⟩ serialized in store object and builtins.toFile ⟨@docroot@/language/builtins.html#builtins-toFile⟩\c . For advanced use-cases only; for regular usage prefer nar and flat.

•

--name ⟨#opt-name⟩ / -n name

Override the name component of the store path. It defaults to the base name of path.

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.

From nix-bin 2.26.3+dfsg-1 in Debian 13 (Trixie). Parsed by carta from the page's man source.