Eelco Dolstra
9d43a02382
* Let --disable-gc work.
2012-01-04 12:45:40 +00:00
Eelco Dolstra
39d45a6b09
* Add a test for nix-channel.
...
* Refactor the nix-channel unpacker a bit.
2012-01-03 01:51:38 +00:00
Eelco Dolstra
4de3e2a0db
* Doh.
2011-11-21 13:22:34 +00:00
Eelco Dolstra
23e933b3b3
* Put back the "sys_name" variable which got removed somewhere. This
...
broke building on Cygwin and Solaris.
2011-11-21 12:23:48 +00:00
Eelco Dolstra
a6abade8e8
* Escape the [ and ] characters in the sed call, otherwise autoconf
...
will eat them.
2011-11-21 12:18:26 +00:00
Eelco Dolstra
964399c079
* "sed" on FreeBSD doesn't know the "+" operator.
2011-11-20 19:23:50 +00:00
Eelco Dolstra
b92f76374f
* In the platform, canonicalise "amd64" to "x86_64". FreeBSD 8.2's
...
uname reports amd64.
* Drop the FreeBSD version number, e.g. "i686-freebsd" instead of
"i686-freebsd8.2".
2011-11-18 17:25:40 +00:00
Ludovic Courtès
42164d6de4
configure: Change i*86 to i686 as has always been done.
2011-11-16 20:58:21 +00:00
Ludovic Courtès
45ec69cbdf
configure: Rely on `AC_CANONICAL_HOST' to determine the Nix system name.
...
This should be more robust and also plays better with
cross-compilation---it uses the host name, instead of using the build
name.
2011-11-16 20:39:59 +00:00
Eelco Dolstra
c0b706213d
* Boldly make SQLite WAL mode the default again. Hopefully the
...
intermittent problems are gone by now. WAL mode is preferrable
because it does way fewer fsyncs.
2011-11-07 21:11:59 +00:00
Eelco Dolstra
6fcdbcac20
* Install NixManifest.pm, NixConfig.pm and GeneratePatches.pm under
...
the Nix:: namespace.
2011-10-10 21:11:08 +00:00
Eelco Dolstra
73fe6871c4
* Include the Nix Perl bindings in Nix itself. This will allow the
...
bindings to be used in Nix's own Perl scripts.
The only downside is that Perl XS and Automake/libtool don't really
like each other, so building is a bit tricky.
2011-10-10 18:12:40 +00:00
Eelco Dolstra
d9a5959139
* Show the default for --with-store-dir (Nix/211).
2011-07-13 15:57:44 +00:00
Eelco Dolstra
34f4b91820
2011-07-04 14:44:53 +00:00
Eelco Dolstra
9c99aa2620
2011-06-27 09:01:09 +00:00
Eelco Dolstra
e4d8148585
2011-06-27 08:04:54 +00:00
Eelco Dolstra
4891b21f34
* Use SQLite 3.7.6.2.
2011-05-03 16:17:24 +00:00
Eelco Dolstra
3cbf680f5d
* configure: detect whether DBD::SQLite is present. If necessary the
...
location to DBI and DBD::SQLite can be passed with --with-dbi and
--with-dbd-sqlite.
2011-04-11 10:13:53 +00:00
Eelco Dolstra
538b7caab0
* Don't allocate a big initial GC address space on machines with
...
little RAM. Even if the memory isn't actually used, it can cause
problems with the overcommit heuristics in the kernel. So use a VM
space of 25% of RAM, up to 384 MB.
2011-02-10 14:31:04 +00:00
Ludovic Courtès
f1462c208b
Use $BDW_GC_LIBS instead of a custom variable.
2011-02-09 21:23:13 +00:00
Eelco Dolstra
1876ab764f
* A better fix. $boehmgc isn't set anywhere, we should use the flags
...
returned by pkg-config.
2011-02-09 14:13:09 +00:00
Eelco Dolstra
c0340eec5a
2011-02-08 12:30:28 +00:00
Eelco Dolstra
c931a7aec5
* Do a short sleep after SQLITE_BUSY.
2010-12-17 17:23:15 +00:00
Eelco Dolstra
4d57776813
* Use SQLite 3.7.4.
2010-12-10 11:45:56 +00:00
Eelco Dolstra
fb9368b5a0
* Sync with the trunk.
2010-11-16 12:49:47 +00:00
Eelco Dolstra
3d71c8013e
* Use pkgconfig to locate the Boehm GC (as suggested by Ludo), if
...
--enable-gc is given.
2010-10-29 14:00:47 +00:00
Eelco Dolstra
64c3325b0b
* Make building against the Boehm GC a configure option.
2010-10-22 13:39:15 +00:00
Eelco Dolstra
95f4f2cf61
* If std::tr1::unordered_set is unavailable, use std::set.
2010-10-04 16:16:19 +00:00
Eelco Dolstra
e41ecbf730
2010-08-27 11:09:04 +00:00
Eelco Dolstra
5fb824e896
* Urgh, this was supposed to go in the trunk...
2010-08-12 13:36:56 +00:00
Eelco Dolstra
5c5ab2bc12
* Don't link against pthreads. This was added way back in r211
...
because Berkeley DB needed it on some platforms, but we don't use
BDB anymore.
On FreeBSD, if you link against pthreads, then the main thread gets
a 2 MB stack which cannot be overriden (it ignores "ulimit -s"):
http://www.mail-archive.com/freebsd-hackers@freebsd.org/msg62445.html
This is not enough for Nix. For instance, the garbage collector can
fail if there is a pathologically deep chain of references
(http://hydra.nixos.org/build/556199 ). 2 MB is also not enough for
many Nix expressions.
Arguably the garbage collector shouldn't use recursion, because in
NixOS unprivileged users can DOS the garbage collector by creating a
sufficiently deeply nested chain of references. But getting rid of
recursion is a bit harder.
2010-08-12 13:34:34 +00:00
Eelco Dolstra
d7875d1648
* Use SQLite 3.7.0.1.
2010-08-06 07:51:27 +00:00
Eelco Dolstra
587dc8aa00
* Sync with the trunk.
2010-08-04 17:48:29 +00:00
Eelco Dolstra
fd9c77dfc7
* Use SQLite 3.7.0's write-ahead logging (WAL mode). This is a lot
...
faster than the old mode when fsyncs are enabled, because it only
performs an fsync() when doing a checkpoint, rather than at every
commit. Some timings for doing a "nix-instantiate /etc/nixos/nixos
-A system" after modifying the stdenv setup script:
42.5s - SQLite 3.6.23 with truncate mode and fsync
3.4s - SQLite 3.6.23 with truncate mode and no fsync
32.1s - SQLite 3.7.0 with truncate mode and fsync
16.8s - SQLite 3.7.0 with WAL mode and fsync, auto-checkpoint
every 1000 pages
8.3s - SQLite 3.7.0 with WAL mode and fsync, auto-checkpoint
every 8192 pages
1.7s - SQLite 3.7.0 with WAL mode and no fsync
The default is now to use WAL mode with fsyncs. Because WAL doesn't
work on remote filesystems such as NFS (as it uses shared memory),
truncate mode can be re-enabled by setting the "use-sqlite-wal"
option to false.
2010-08-04 17:35:59 +00:00
Peter Simons
a0d29040f7
Revert "configure.ac: make flex and bison required programs"
...
This reverts commit 22405. Apparently, these programs aren't necessarily
required when building from a release archive.
2010-06-24 22:22:24 +00:00
Peter Simons
af09fe12dd
Fix build of bsdiff-4.3 on machines that don't have <err.h>, such as Solaris.
2010-06-24 17:51:31 +00:00
Peter Simons
d63375d529
configure.ac: Incredibly enough, tr(1) on Solaris doesn't understand A-Z syntax for ranges.
2010-06-24 17:51:24 +00:00
Peter Simons
4c21c016c5
configure.ac: make flex and bison required programs
...
The build fails if these tools aren't available.
2010-06-24 17:51:19 +00:00
Eelco Dolstra
aa45027818
* Sync with the trunk.
2010-05-12 22:13:09 +00:00
Eelco Dolstra
d66ea83a76
* Sync with the trunk.
2010-04-20 09:20:29 +00:00
Eelco Dolstra
f3b8833a48
* Drop the dependency on the ATerm library.
2010-04-19 14:51:58 +00:00
Eelco Dolstra
f71ea9c911
* Use SQLite 3.6.23.
2010-03-23 10:38:59 +00:00
Lluís Batlle i Rossell
13cce8ec45
Making 'bin2c' to be built with the compiler for the local system.
...
I copied the configure.ac code about CC_FOR_BUILD from libX11.
2010-03-11 20:56:25 +00:00
Eelco Dolstra
070057c1b9
* Sync with the trunk.
2010-03-11 10:52:52 +00:00
Eelco Dolstra
05fbf61f0e
* nix-prefetch-url depends on sed (see
...
http://hydra.nixos.org/build/311170 ).
2010-03-05 18:26:47 +00:00
Eelco Dolstra
d8c5745c41
* Support static builds.
2010-03-02 17:12:47 +00:00
Eelco Dolstra
5414b3b2db
* Remove the --enable-static-nix flag.
2010-03-02 16:40:40 +00:00
Eelco Dolstra
594eaddd11
* When using the included sqlite/aterm libraries, build with
...
--enable-shared.
* In libutil/libstore/libexpr etc., link against sqlite and aterm.
* Some more header file hygiene.
2010-03-02 15:58:13 +00:00
Eelco Dolstra
84a4dd5ff0
* Don't use fdatasync since it doesn't work on Snow Leopard.
...
* Don't refer to config.h in util.hh, because config.h is not
installed (http://hydra.nixos.org/build/303053 ).
2010-02-24 15:46:06 +00:00
Eelco Dolstra
fae0427324
* ADDITIONAL_NETWORK_LIBS -> LIBS.
2010-02-24 12:25:48 +00:00
Eelco Dolstra
5954eadf67
* Remove the fdatasync check since it's no longer needed.
2010-02-24 12:16:50 +00:00
Eelco Dolstra
b4e6d98fc3
* configure: flag --with-sqlite.
2010-02-23 22:12:46 +00:00
Eelco Dolstra
c1a07f9445
* Convert the Nix database to SQLite.
2010-02-18 13:16:59 +00:00
Eelco Dolstra
2723d9b56e
* If fdatasync() isn't available, use fsync().
2010-02-02 11:57:49 +00:00
Eelco Dolstra
327a232c85
* Remove support for old (before Nix 0.12pre12020) databases.
2009-11-06 01:15:44 +00:00
Sander van der Burg
53a4981fa2
Added optional parameter which adds -lnsl -lsocket to make the Nix package manager work on OpenSolaris
2009-10-08 14:50:37 +00:00
Peter Simons
18f0ff003d
configure.ac: use AC_SYS_LARGEFILE to determine how to enable 64-bit file size support
...
Defining -D_FILE_OFFSET_BITS=64 works on most platforms, but not on all (i.e.
Solaris). Also, the Autoconf macro offers the user a switch to disable the
functionality in case of problems.
2009-10-06 09:14:06 +00:00
Eelco Dolstra
51ad64cc07
* Use xmllint (>= 2.7.4) for RelaxNG validation instead of Jing.
2009-09-18 11:45:56 +00:00
Eelco Dolstra
6a5599fd01
* Typo.
2009-05-07 11:33:57 +00:00
Eelco Dolstra
9856efc7b0
* Support doing a fully static build. Statically linked Nix binaries
...
will be useful as a fallback on platforms for which there are no
RPMs/Debs available.
2009-03-26 12:22:08 +00:00
Eelco Dolstra
77d272623f
* NAR archives: handle files larger than 2^32 bytes. Previously it
...
would just silently store only (fileSize % 2^32) bytes.
* Use posix_fallocate if available when unpacking archives.
* Provide a better error message when trying to unpack something that
isn't a NAR archive.
2009-03-22 17:36:43 +00:00
Eelco Dolstra
be88248add
* Make the version available to release.nix.
2009-03-09 15:05:08 +00:00
Eelco Dolstra
c504d90c11
* Support i686-linux builds directly on x86_64-linux Nix
...
installations. This is implemented using the personality() syscall,
which causes uname to return "i686" in child processes.
2009-01-12 16:30:32 +00:00
Eelco Dolstra
ac36c6cd44
* Some hackery to make "make check" succeed on Cygwin.
2008-12-12 15:36:18 +00:00
Eelco Dolstra
2b70a8e7c9
* Detect whether unshare() is available.
2008-12-12 13:41:36 +00:00
Eelco Dolstra
7c54f1603f
* Do chroot builds in a private namespace. This means that all the
...
bind-mounts we do are only visible to the builder process and its
children. So accidentally doing "rm -rf" on the chroot directory
won't wipe out /nix/store and other bind-mounted directories
anymore. Also, the bind-mounts in the private namespace disappear
automatically when the builder exits.
2008-12-11 17:00:12 +00:00
Eelco Dolstra
5d4eb9dd07
* Moved the build farm job for building Nix to the Nix tree.
2008-11-26 01:13:29 +00:00
Eelco Dolstra
2ab09a55cf
* Bump the version number.
2008-11-20 21:51:58 +00:00
Eelco Dolstra
285d26374a
* Don't set the prefix to /nix by default, rather use the Autoconf
...
default of /usr/local. However, localstatedir and storedir are set
to /nix/var/nix and /nix/store respectively unless they're
explicitly overriden.
2008-11-20 14:14:35 +00:00
Eelco Dolstra
b0e92f6d47
* Merged the no-bdb branch (-r10900:HEAD
...
https://svn.nixos.org/repos/nix/nix/branches/no-bdb ).
2008-06-09 13:52:45 +00:00
Michael Raskin
b4bc8b7616
--proxy=proxy:3128
2008-05-07 14:18:28 +00:00
Eelco Dolstra
658816ddc9
* Make really sure that we use bash. The line
...
NEED_PROG(shell, bash)
actually uses the content of $shell if set, which often points at
/bin/sh.
2008-04-10 09:54:23 +00:00
Eelco Dolstra
895c953817
* Bumped the version number to 0.12.
2007-12-31 17:53:59 +00:00
Eelco Dolstra
df303666bc
* Use strsignal if available to give better error messages for
...
builders that fail due to a signal.
2007-12-14 14:49:35 +00:00
Eelco Dolstra
5f8a203b55
* A rule to make a PDF version of the manual.
2007-11-01 14:42:44 +00:00
Eelco Dolstra
0b95603595
* Depend on bash instead of sh (since we use a few bashisms).
2007-10-29 10:46:45 +00:00
Eelco Dolstra
42d80d1170
* On FreeBSD, sys/mount.h needs sys/param.h.
2007-10-29 10:03:07 +00:00
Eelco Dolstra
d91cd30563
* Detect whether chroot / bind-mount support is available.
2007-10-27 16:51:55 +00:00
Eelco Dolstra
93aefd9fc0
* Give unpacked channels more sensible names than 0, 1, ... They now
...
get the basename of the channel URL (e.g., nixpkgs-unstable). The
top-level Nix expression of the channel is now an attribute set, the
attributes of which are the individual channels (e.g.,
{nixpkgs_unstable = ...; strategoxt_unstable = ...}). This makes
attribute paths ("nix-env -qaA" and "nix-env -iA") more sensible,
e.g., "nix-env -iA nixpkgs_unstable.subversion".
2007-05-01 23:16:38 +00:00
Eelco Dolstra
2716f9bc5f
* It seems that svnversion prints a carriage return on Cygwin, so we
...
get a invalid #define VERSION. Use "svnversion -n" to leave out the
newline. Fix provided by Marc Weber.
2007-04-16 12:00:13 +00:00
Eelco Dolstra
db1973d012
* Look for the openssl program at compile time. If not found, call
...
openssl through $PATH at runtime.
2007-03-01 13:30:46 +00:00
Eelco Dolstra
d03f0d4117
* Check for lchown.
2006-12-07 18:51:11 +00:00
Eelco Dolstra
9f0efa6611
* Start of the setuid helper (the program that performs the operations
...
that have to be done as root: running builders under different uids,
changing ownership of build results, and deleting paths in the store
with the wrong ownership).
2006-12-06 01:24:02 +00:00
Eelco Dolstra
84d6459bd5
* Use setreuid if setresuid is not available.
2006-12-03 14:32:22 +00:00
Eelco Dolstra
40b3f64b55
* Skeleton of the privileged worker program.
...
* Some refactoring: put the NAR archive integer/string serialisation
code in a separate file so it can be reused by the worker protocol
implementation.
2006-11-30 19:19:59 +00:00
Eelco Dolstra
71e867c5f5
* Remove --enable-setuid, --with-nix-user and --with-nix-group.
...
Rather, setuid support is now always compiled in (at least on
platforms that have the setresuid system call, e.g., Linux and
FreeBSD), but it must enabled by chowning/chmodding the Nix
binaries.
2006-11-29 21:06:58 +00:00
Eelco Dolstra
e790404318
* Don't use the result of `uname -p' on x86_64 as it gives wacky
...
results on some machines. (NIX-69)
2006-11-13 14:54:18 +00:00
Eelco Dolstra
1d694eef4c
* Require Perl 5.8.0 or newer. I mean, it *is* more than four years
...
old...
2006-10-19 19:20:18 +00:00
Eelco Dolstra
7bada48b36
* Bumped the version number to 0.11.
2006-10-06 13:45:29 +00:00
Eelco Dolstra
4cab35d1a6
* Build with -D_FILE_OFFSET_BITS=64 to support files >= 2^31 bytes
...
(NIX-22).
2006-09-22 11:13:12 +00:00
Eelco Dolstra
22d13d6ec2
* Check for patch (NIX-59).
2006-09-20 15:28:47 +00:00
Eelco Dolstra
aab8812732
* Store the Nix libraries in ${libdir}/nix instead of ${libdir}.
2006-09-04 15:12:24 +00:00
Eelco Dolstra
e5678b3435
* Map "ppc" to "powerpc" so that Linux on PowerPC will be reported as
...
"powerpc-linux".
2006-08-25 16:23:42 +00:00
Eelco Dolstra
1a9a1f2768
* Convert to DocBook 5.
...
* Use Jing for RelaxNG validation, xmllint seems buggy.
2006-08-21 16:05:11 +00:00
Eelco Dolstra
2d456fc35a
* On Cygwin, set the system type to i686-cygwin, and disable dynamic
...
linking.
2006-05-31 11:50:14 +00:00
Eelco Dolstra
03162f8f47
* Unless --with-bzip2 is specified, use a copy of bzip2 in the
...
externals directory. This is in particular useful because though
most systems have bzip2/bunzip2, they don't always have libbz2,
which we need for bsdiff/bspatch.
2006-04-25 10:45:53 +00:00
Eelco Dolstra
a4c63c6e8e
* Make it easy to run individual tests from the command line.
2006-03-01 12:15:33 +00:00
Eelco Dolstra
ddb78dfc3d
* Check whether "nix-store -q --graph" generates a valid dot graph.
...
* Test "nix-store -q --tree" as well.
2006-02-22 13:55:41 +00:00
Eelco Dolstra
d6f586d0ea
* Optional switch "--with-openssl=<PATH>" to use OpenSSL's
...
implementations of MD5, SHA-1 and SHA-256. The main benefit is that
we get assembler-optimised implementations of MD5 and SHA-1 (though
not SHA-256 (at least on x86), unfortunately). OpenSSL's SHA-1
implementation on Intel is twice as fast as ours.
2006-02-13 19:52:43 +00:00
Eelco Dolstra
8291f6d968
* bsdiff updated to 4.3. This makes Nix depend on libbz2.
2006-02-01 16:48:49 +00:00