A modern, delicious implementation of the Nix package manager, focused on correctness, usability, and growth — and committed to doing right by its community
Go to file
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
corepkgs Lower xz compression level 2013-09-02 13:32:51 +02:00
doc Rename "attribute sets" to "sets" 2013-10-24 16:41:04 +02:00
misc Rename nix-worker to nix-daemon 2012-10-03 17:59:23 -04:00
perl Fix segfault on Darwin 2013-10-24 19:15:52 +02:00
scripts Fix segfault on Darwin 2013-10-24 19:15:52 +02:00
src Rename "attribute sets" to "sets" 2013-10-24 16:41:04 +02:00
tests Rename "attribute sets" to "sets" 2013-10-24 16:41:04 +02:00
.gitignore Rename nix-worker to nix-daemon 2012-10-03 17:59:23 -04:00
AUTHORS * Put something in here. 2004-11-07 20:30:02 +00:00
bootstrap.sh bootstrap: Simplify & make more robust. 2011-09-06 12:11:05 +00:00
build.nix Add an experimental nix-make file 2012-05-21 09:43:01 -04:00
configure.ac Turn on -Wall 2013-08-19 11:41:15 +02:00
COPYING * Change this to LGPL to keep the government happy. 2006-04-25 16:41:06 +00:00
dev-shell Hack to clean up tests/test-tmp 2013-08-21 12:53:46 +02:00
INSTALL * Autoconf / Automake configuration and building. 2003-04-04 16:14:56 +00:00
Makefile.am Garbage collector: Don't follow symlinks arbitrarily 2013-07-12 14:03:36 +02:00
nix.spec.in Add gzip support for channel unpacking 2013-07-12 11:29:37 +02:00
README * Install documentation in $(docdir) (i.e. share/doc/nix). 2008-11-19 13:19:09 +00:00
release.nix Add rpm_fedora19i386 to the release-critical builds 2013-10-24 15:54:23 +02:00
substitute.mk Prevent config.h from being clobbered 2013-03-08 01:27:04 +01:00
version Bump version number 2013-09-10 17:41:49 +02:00

Nix is a purely functional package manager.  For installation and
usage instructions, please read the manual, which can be found in
`docs/manual/manual.html', and additionally at the Nix website at
<http://nixos.org/>.


Acknowledgments

This product includes software developed by the OpenSSL Project for
use in the OpenSSL Toolkit (http://www.OpenSSL.org/).