Warning
This program is experimental and its interface is subject to change.

Name

nix store add - Add a file or directory to the Nix store

Synopsis

nix store add [option...] path

Description

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

    Show what this command would do without doing it.

  • --hash-algo hash-algo

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

  • --mode content-address-method

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

    • nar (the default): Serialises the input as an archive (following the Nix Archive Format) and passes that to the hash function.

    • flat: Assumes that the input is a single file and directly passes it to the hash function;

    • text: Like flat, but used for derivations serialized in store object and builtins.toFile. For advanced use-cases only; for regular usage prefer nar and `flat.

  • --name / -n name

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

  • --debug

    Set the logging verbosity level to 'debug'.

  • --log-format format

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

  • --print-build-logs / -L

    Print full build logs on standard error.

  • --quiet

    Decrease the logging verbosity level.

  • --verbose / -v

    Increase the logging verbosity level.

Miscellaneous global options

  • --help

    Show usage information.

  • --offline

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

  • --option name value

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

  • --refresh

    Consider all previously downloaded files out-of-date.

  • --version

    Show version information.

Note

See man nix.conf for overriding configuration settings with command line flags.