summary refs log tree commit diff
AgeCommit message (Collapse)Author
2015-05-11Build derivations in a more predictable orderEelco Dolstra
Derivations are now built in order of derivation name, so a package named "aardvark" is built before "baboon". Fixes #399.
2015-05-11Don't create unnecessary substitution goals for derivationsEelco Dolstra
2015-05-11Disable vacuuming the DB after garbage collectionEelco Dolstra
Especially in WAL mode on a highly loaded machine, this is not a good idea because it results in a WAL file of approximately the same size ad the database, which apparently cannot be deleted while anybody is accessing it.
2015-05-11nix-daemon: Call exit(), not _exit()Eelco Dolstra
This was preventing destructors from running. In particular, it was preventing the deletion of the temproot file for each worker process. It may also have been responsible for the excessive WAL growth on Hydra (due to the SQLite database not being closed properly). Apparently broken by accident in 8e9140cfdef9dbd1eb61e4c75c91d452ab5e4a74.
2015-05-11Clean up temp roots in a more C++ wayEelco Dolstra
2015-05-11Fix messageEelco Dolstra
2015-05-11Don't use ADDR_LIMIT_3GBEelco Dolstra
This gives 32-bit builds on x86_64-linux more memory.
2015-05-11Make ~DerivationGoal more reliableEelco Dolstra
2015-05-11nix-store --gc: Don't warn about missing manifests directoryEelco Dolstra
2015-05-11Improve error message if the daemon worker fails to startEelco Dolstra
2015-05-11Fix build on gcc < 4.7Shea Levy
2015-05-11Improved error message when encountering unsupported file typesEelco Dolstra
Fixes #269.
2015-05-11Remove some duplicate codeEelco Dolstra
2015-05-11createDirs(): Handle ‘path’ being a symlinkEelco Dolstra
In particular, this fixes "nix-build -o /tmp/result" on Mac OS X (where /tmp is a symlink).
2015-05-11nix-daemon: Close unnecessary fdEelco Dolstra
2015-05-11Remove bogus commentEelco Dolstra
2015-05-11On Linux, disable address space randomizationEelco Dolstra
2015-05-11Settings: Add bool get()Eelco Dolstra
2015-05-11Add an 'optimiseStore' remote procedure call.Ludovic Courtès
2015-05-11Add disallowedReferences / disallowedRequisitesEelco Dolstra
For the "stdenv accidentally referring to bootstrap-tools", it seems easier to specify the path that we don't want to depend on, e.g. disallowedRequisites = [ bootstrapTools ];
2015-05-11Introduce allowedRequisites featureGergely Risko
2015-05-11fix disappearing bash argumentsJoel Taylor
2015-05-11Make hook shutdown more reliableEelco Dolstra
2015-05-11DohEelco Dolstra
2015-05-11Reduce verbosityEelco Dolstra
2015-05-11Propagate remote timeouts properlyEelco Dolstra
2015-05-11Use regular file GC roots if possibleEelco Dolstra
This makes hydra-eval-jobs create roots as regular files. See 1c208f2b7ef8ffb5e6d435d703dad83223a67bd6.
2015-05-11Remove unnecessary call to addTempRoot()Eelco Dolstra
2015-05-11DohEelco Dolstra
2015-05-11Move some options out of globalsEelco Dolstra
2015-05-11RefactorEelco Dolstra
2015-05-11Add option ‘build-extra-chroot-dirs’Eelco Dolstra
This is useful for extending (rather than overriding) the default set of chroot paths.
2015-05-11Get rid of "killing <pid>" message for unused build hooksEelco Dolstra
2015-05-11Remove ugly hack for detecting build environment setup errorsEelco Dolstra
2015-05-11Call commonChildInit() before doing chroot initEelco Dolstra
This ensures that daemon clients see error messages from the chroot setup.
2015-05-11Eliminate redundant copyEelco Dolstra
2015-05-11findRoots(): Prevent a call to lstat()Eelco Dolstra
This means that getting the roots from /nix/var/nix/.../hydra-roots doesn't need any I/O other than reading the directory.
2015-05-11Make readDirectory() return inode / file typeEelco Dolstra
2015-05-11Allow regular files as GC rootsEelco Dolstra
If a root is a regular file, then its name must denote a store path. For instance, the existence of the file /nix/var/nix/gcroots/per-user/eelco/hydra-roots/wzc3cy1wwwd6d0dgxpa77ijr1yp50s6v-libxml2-2.7.7 would cause /nix/store/wzc3cy1wwwd6d0dgxpa77ijr1yp50s6v-libxml2-2.7.7 to be a root. This is useful because it involves less I/O (no need for a readlink() call) and takes up less disk space (the symlink target typically takes up a full disk block, while directory entries are packed more efficiently). This is particularly important for hydra.nixos.org, which has hundreds of thousands of roots, and where reading the roots can take 25 minutes.
2015-05-11Remove some dead codeEelco Dolstra
2015-05-11nix-daemon: Less verbosityEelco Dolstra
2015-05-11nix-daemon: Simplify stderr handlingEelco Dolstra
2015-05-11Merge commit 'fdee1ced43fb495d612a29e955141cdf6b9a95ba' into nixLudovic Courtès
2015-05-06Merge commit '8e9140cfdef9dbd1eb61e4c75c91d452ab5e4a74' into nixLudovic Courtès
Conflicts: Makefile.config.in configure.ac dev-shell doc/manual/builtins.xml doc/manual/conf-file.xml doc/manual/local.mk doc/manual/nix-instantiate.xml doc/manual/nix-store.xml doc/manual/writing-nix-expressions.xml misc/emacs/nix-mode.el perl/lib/Nix/CopyClosure.pm release.nix scripts/nix-build.in scripts/nix-copy-closure.in src/download-via-ssh/download-via-ssh.cc src/libexpr/common-opts.cc src/libexpr/common-opts.hh src/libexpr/eval.cc src/libexpr/eval.hh src/libexpr/local.mk src/libexpr/nixexpr.cc src/libexpr/nixexpr.hh src/libexpr/parser.y src/libexpr/primops.cc src/libexpr/symbol-table.hh src/libmain/shared.cc src/libstore/local.mk src/nix-env/nix-env.cc src/nix-instantiate/nix-instantiate.cc src/nix-store/local.mk src/nix-store/nix-store.cc src/nix-store/serve-protocol.hh tests/lang.sh tests/lang/eval-okay-context.nix tests/lang/eval-okay-search-path.exp tests/lang/eval-okay-search-path.nix tests/local.mk tests/nix-copy-closure.nix
2015-01-04Merge commit '8d5f472f2c49c79a0d3ae2e506f4d4d76224b328' into nixLudovic Courtès
Conflicts: .gitignore Makefile doc/manual/installation.xml doc/manual/introduction.xml doc/manual/local.mk doc/manual/manual.xml doc/manual/nix-collect-garbage.xml doc/manual/nix-env.xml doc/manual/nix-install-package.xml doc/manual/nix-store.xml doc/manual/quick-start.xml doc/manual/release-notes.xml local.mk misc/emacs/nix-mode.el mk/functions.mk mk/install.mk mk/lib.mk mk/libraries.mk mk/patterns.mk mk/programs.mk nix.spec.in release.nix scripts/install-nix-from-closure.sh scripts/nix-build.in src/libexpr/eval-inline.hh src/libexpr/eval.cc src/libexpr/eval.hh src/libexpr/get-drvs.cc src/libexpr/nixexpr.cc src/libexpr/nixexpr.hh src/libexpr/parser.y src/libexpr/primops.cc src/libstore/local.mk src/nix-daemon/local.mk src/nix-env/nix-env.cc src/nix-env/user-env.cc src/nix-instantiate/nix-instantiate.cc src/nix-store/nix-store.cc tests/init.sh tests/nix-copy-closure.nix tests/remote-builds.nix version
2014-12-17nix: Adjust code for Guix.Ludovic Courtès
* nix/libstore/gc.cc (addAdditionalRoots): Refer to 'list-runtime-roots' instead of 'find-runtime-roots.pl'. * nix/libutil/hash.cc, nix/libutil/hash.hh: Change 'union Ctx' to 'struct Ctx', like 'nix/sync-with-upstream' did. * nix/AUTHORS: New file. * nix/COPYING: New file, from upstream Nix. * nix/libutil/md32_common.h, nix/libutil/md5.c, nix/libutil/md5.h, nix/libutil/sha1.c, nix/libutil/sha1.h, nix/libutil/sha256.c, nix/libutil/sha256.h: Remove.
2014-12-17Keep only libstore, nix-daemon, and related stuff.Ludovic Courtès
2014-07-23startProcess: Make writing error messages from the child more robustEelco Dolstra
2014-07-23Remove dead codeEelco Dolstra
2014-07-19Revert old useBuildHook behaviourEelco Dolstra