nix-gh/scripts
Eelco Dolstra 2d9bb56e55 Fix segfault on Darwin
Ever since SQLite in Nixpkgs was updated to 3.8.0.2, Nix has randomly
segfaulted on Darwin:

  http://hydra.nixos.org/build/6175515
  http://hydra.nixos.org/build/6611038

It turns out that this is because the binary cache substituter somehow
ends up loading two versions of SQLite: the one in Nixpkgs and the
other from /usr/lib/libsqlite3.dylib.  It's not exactly clear why the
latter is loaded, but it appears to be because WWW::Curl indirectly loads
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation,
which in turn seems to load /usr/lib/libsqlite3.dylib.  This leads to
a segfault when Perl exits:

  #0  0x00000001010375f4 in sqlite3_finalize ()
  #1  0x000000010125806e in sqlite_st_destroy ()
  #2  0x000000010124bc30 in XS_DBD__SQLite__st_DESTROY ()
  #3  0x00000001001c8155 in XS_DBI_dispatch ()
  ...
  #14 0x0000000100023224 in perl_destruct ()
  #15 0x0000000100000d6a in main ()
  ...

The workaround is to explicitly load DBD::SQLite before WWW::Curl.
2013-10-24 19:15:52 +02:00
..
build-remote.pl.in build-remote.pl: Don't use substituters on the remote 2013-09-18 14:04:03 +02:00
copy-from-other-stores.pl.in copy-from-other-stores.pl: Respect $NIX_BIN_DIR 2013-07-01 13:30:28 +02:00
copying-collector.pl * I said it couldn't be done. I was wrong. 2005-04-04 15:18:19 +00:00
download-from-binary-cache.pl.in Fix segfault on Darwin 2013-10-24 19:15:52 +02:00
download-using-manifests.pl.in Add support for uncompressed NARs in binary caches 2013-07-01 21:03:14 +02:00
find-runtime-roots.pl.in find-runtime-roots.pl: Don't hardcode /nix/store 2013-04-26 12:15:54 +02:00
install-nix-from-closure.sh Generate binary tarballs for installing Nix 2012-05-22 18:36:54 -04:00
Makefile.am Rename ‘nix-build --run-env’ to ‘nix-shell’ 2013-07-19 12:02:44 +02:00
nix-build.in Don't set $PS1 in non-interactive shells 2013-10-18 14:51:25 +02:00
nix-channel.in Support xz compression of nixexprs.tar in channels 2012-12-05 11:02:44 +01:00
nix-collect-garbage.in When ‘--help’ is given, just run ‘man’ to show the manual page 2012-10-03 16:40:09 -04:00
nix-copy-closure.in nix-copy-closure: Show a proper error message if no host name is given 2013-05-03 11:12:11 +02:00
nix-generate-patches.in nix-generate-patches: Optionally write new patches to $NIX_ALL_PATCHES 2012-04-04 20:46:18 +00:00
nix-http-export.cgi.in Replace wrong (w.r.t. PATH) sed call with in-shell substitution 2009-02-19 20:46:45 +00:00
nix-install-package.in When ‘--help’ is given, just run ‘man’ to show the manual page 2012-10-03 16:40:09 -04:00
nix-prefetch-url.in nix-prefetch-url: Improve option handling 2012-10-23 18:04:11 +02:00
nix-profile.sh.in Use a shorter Nixpkgs channel URL 2012-11-09 13:33:35 +01:00
nix-pull.in When ‘--help’ is given, just run ‘man’ to show the manual page 2012-10-03 16:40:09 -04:00
nix-push.in Add support for uncompressed NARs in binary caches 2013-07-01 21:03:14 +02:00
nix-reduce-build.in * Set the executable bit on scripts. 2011-10-10 22:40:17 +00:00
remove-patches.pl * Remove the localPaths feature in manifests since it's no longer used 2011-04-06 09:16:22 +00:00
show-duplication.pl * `show-duplication.pl', a small utility that shows the amount of 2006-09-19 13:53:35 +00:00