logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

nix bundle - bundle an application so that it works outside of the Nix store

Bundlers

       A bundler is specified by a flake output attribute named bundlers.<system>.<name>. It looks like this:

       bundlers.x86_64-linux = rec {
         identity = drv: drv;

         blender_2_79 = drv: self.packages.x86_64-linux.blender_2_79;

         default = identity;
       };

       A bundler must be a function that accepts an arbitrary value (typically a derivation or  app  definition)
       and returns a derivation.

Description

       nix  bundle,  by  default, packs the closure of the installable into a single self-extracting executable.
       See the bundlers homepage for more details.

              Note

              This command only works on Linux.

Examples

       •  Bundle Hello:

       # nix bundle nixpkgs#hello
       # ./hello
       Hello, world!

       •  Bundle a specific version of Nix:

       # nix bundle github:NixOS/nix/e3ddffb27e5fc37a209cfd843c6f7f6a9460a8ec
       # ./nix --version
       nix (Nix) 2.4pre20201215_e3ddffb

       •  Bundle a Hello using a specific bundler:

       # nix bundle --bundler github:NixOS/bundlers#toDockerImage nixpkgs#hello
       # docker load < hello-2.10.tar.gz
       # docker run hello-2.10:latest hello
       Hello, world!

Flake Output Attributes

       If no flake output attribute is given, nix bundle tries the following flake output attributes:

       •  bundlers.<system>.default

       If an attribute name is given, nix bundle tries the following flake output attributes:

       •  bundlers.<system>.<name>

Name

       nix bundle - bundle an application so that it works outside of the Nix store

Options

       •  --bundler flake-url

          Use a custom bundler instead of the default (github:NixOS/bundlers).

       •  --out-link / -o path

          Override the name of the symlink to the build result. It defaults to the base name of the app.

   Commonevaluationoptions
       •  --arg nameexpr

          Pass the value expr as the argument name to Nix functions.

       •  --arg-from-file namepath

          Pass the contents of file path as the argument name to Nix functions.

       •  --arg-from-stdin name

          Pass the contents of stdin as the argument name to Nix functions.

       •  --argstr namestring

          Pass the string string as the argument name to Nix functions.

       •  --debugger

          Start an interactive environment if evaluation fails.

       •  --eval-store store-url

          The  URL of the Nix store  to  use  for  evaluation, i.e. to store derivations (.drv files) and inputs
          referenced by them.

       •  --impure

          Allow access to mutable paths and repositories.

       •  --include / -I path

          Add path to search path entries used to resolve lookup paths

          This option may be given multiple times.

          Paths added through -I take  precedence  over  the  nix-path configuration setting  and  the  NIX_PATH
          environment variable.

       •  --override-flake original-refresolved-ref

          Override the flake registries, redirecting original-ref to resolved-ref.

   Commonflake-relatedoptions
       •  --commit-lock-file

          Commit changes to the flake’s lock file.

       •  --inputs-from flake-url

          Use the inputs of the specified flake as registry entries.

       •  --no-registries

          Don’t allow lookups in the flake registries.

                 DEPRECATED

                 Use --no-use-registries instead.

       •  --no-update-lock-file

          Do not allow any updates to the flake’s lock file.

       •  --no-write-lock-file

          Do not write the flake’s newly generated lock file.

       •  --output-lock-file flake-lock-path

          Write the given lock file instead of flake.lock within the top-level flake.

       •  --override-input input-pathflake-url

          Override a specific flake input (e.g. dwarffs/nixpkgs). This implies --no-write-lock-file.

       •  --recreate-lock-file

          Recreate the flake’s lock file from scratch.

                 DEPRECATED

                 Use nix flake update instead.

       •  --reference-lock-file flake-lock-path

          Read the given lock file instead of flake.lock within the top-level flake.

       •  --update-input input-path

          Update a specific flake input (ignoring its previous entry in the lock file).

                 DEPRECATED

                 Use nix flake update instead.

   Logging-relatedoptions
       •  --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.

   Miscellaneousglobaloptions
       •  --help

          Show usage information.

       •  --offline

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

       •  --option namevalue

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

       •  --refresh

          Consider all previously downloaded files out-of-date.

       •  --repair

          During  evaluation,  rewrite  missing  or  corrupted  files in the Nix store. During building, rebuild
          missing or corrupted store paths.

       •  --version

          Show version information.

   Optionsthatchangetheinterpretationofinstallables
       •  --expr expr

          Interpret installables as attribute paths relative to the Nix expression expr.

       •  --file / -f file

          Interpret installables as attribute paths relative to the Nix expression stored in file.  If  file  is
          the character -, then a Nix expression will be read from standard input. Implies --impure.

          Note

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

                                                                                                  nix3-bundle(1)

Synopsis

       nix bundle [option…] installable

See Also