f10b935f84
Usuage: Add breakpointHook to your `buildInputs` like this: stdenv.mkDerivation rec { # ... buildInputs = [ breakpointHook ]; }); When the build fails as show in this example: pkgs.hello.overrideAttrs (old: { buildInputs = [ breakpointHook ]; postPatch = '' false ''; }); It will halt execution printing the following message: build failed in patchPhase with exit code 1 To attach to this build run the following command as root: cntr attach -t command cntr-/nix/store/ynyb4n82x2r7sldd58pbb405jdqh5f00-hello-2.10 Installing cntr and running the command will provide shell access to the build sandbox of failed build: sudo cntr attach -t command cntr-/nix/store/ynyb4n82x2r7sldd58pbb405jdqh5f00-hello-2.10 WARNING: bad ownership on /nix/var/nix/profiles/per-user/root, should be 1000 [nixbld@localhost:/var/lib/cntr]$ At /var/lib/cntr the sandbox filesystem is mounted. All commands and files of the system are still accessible within the shell. To execute commands from the sandbox use the `cntr exec` subcommand. |
||
---|---|---|
.. | ||
audit-tmpdir.sh | ||
auto-patchelf.sh | ||
autoreconf.sh | ||
breakpoint-hook.sh | ||
compress-man-pages.sh | ||
die.sh | ||
enable-coverage-instrumentation.sh | ||
find-xml-catalogs.sh | ||
fix-darwin-dylib-names.sh | ||
gog-unpack.sh | ||
keep-build-tree.sh | ||
ld-is-cc-hook.sh | ||
make-coverage-analysis-report.sh | ||
make-wrapper.sh | ||
move-docs.sh | ||
move-lib64.sh | ||
move-sbin.sh | ||
multiple-outputs.sh | ||
patch-shebangs.sh | ||
prune-libtool-files.sh | ||
role.bash | ||
separate-debug-info.sh | ||
set-java-classpath.sh | ||
set-source-date-epoch-to-latest.sh | ||
setup-debug-info-dirs.sh | ||
strip.sh | ||
update-autotools-gnu-config-scripts.sh | ||
use-old-cxx-abi.sh | ||
win-dll-link.sh | ||
wrap-gapps-hook.sh |