aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-02-22Merge branch 'fix/dry-run-partially' of https://github.com/dtzWill/nixEelco Dolstra
2018-02-21Manual: Put configuration options in sorted orderEelco Dolstra
2018-02-21Manual: Update chapter on remote buildsEelco Dolstra
Alos add a command "nix ping-store" to make it easier to see if Nix can connect to a remote builder (e.g. 'nix ping-store --store ssh://mac').
2018-02-21Revert "libexpr: Fix prim_replaceStrings() to work on an empty source string"Eelco Dolstra
This reverts commit 4ea9707591beceacf9988b3c185faf50da238403. It causes an infinite loop in Nixpkgs evaluation, e.g. "nix-instantiate -A hello" hung. PR #1886.
2018-02-20Merge branch 'nix-copy' of git://github.com/Mic92/nix-1Shea Levy
2018-02-21nix-copy: fix examplesJörg Thalheim
maybe a left-over from nix-store -r ?
2018-02-20Merge remote-tracking branch 'dezgeg/afl-fixes'Shea Levy
2018-02-20Release notes: Add contributorsEelco Dolstra
2018-02-20Fix evaluation of binaryTarball.aarch64-linuxEelco Dolstra
2018-02-19libutil: Fix invalid assert on decoding base64 hashesTuomas Tynkkynen
The assertion is broken because there is no one-to-one mapping from length of a base64 string to the length of the output. E.g. "1q69lz7Empb06nzfkj651413n9icx0njmyr3xzq1j9q=" results in a 32-byte output. "1q69lz7Empb06nzfkj651413n9icx0njmyr3xzq1j9qy" results in a 33-byte output. To reproduce, evaluate: builtins.derivationStrict { name = "0"; builder = "0"; system = "0"; outputHashAlgo = "sha256"; outputHash = "1q69lz7Empb06nzfkj651413n9icx0njmyr3xzq1j9qy"; } Found by afl-fuzz.
2018-02-19libexpr: Fix prim_replaceStrings() to work on an empty source stringTuomas Tynkkynen
Otherwise, running e.g. nix-instantiate --eval -E --strict 'builtins.replaceStrings [""] ["X"] "abc"' would just hang in an infinite loop. Found by afl-fuzz.
2018-02-19libutil: Fix infinite loop in filterANSIEscapes on '\r'Tuomas Tynkkynen
E.g. nix-instantiate --eval -E 'abort "\r"' hangs. Found by afl-fuzz.
2018-02-19libexpr: Don't create lots of temporary strings in Bindings::lexicographicOrderTuomas Tynkkynen
Avoids ~180,000 string temporaries created when evaluating a headless NixOS system.
2018-02-19Fix incorrect (and unnecessary) format stringEelco Dolstra
https://hydra.nixos.org/eval/1434547#tabs-now-fail
2018-02-19Remove macOS multi-user instructionsEelco Dolstra
This is already handled by the installer.
2018-02-19Update release notesEelco Dolstra
Also add some examples to nix --help.
2018-02-19configure.ac: define HAVE_SECCOMP macro when using seccomp, fix build/testsWill Dietz
Happily the failing tests should prevent anyone from using such a Nix in situations where they expect sandboxing to be on, which would otherwise be a risk.
2018-02-19Merge pull request #1882 from shlevy/no-seccomp-no-filterSyscallsEelco Dolstra
Don't silently succeed seccomp setup when !HAVE_SECCOMP.
2018-02-19Merge branch 'perf-fixes' of git://github.com/dezgeg/nixShea Levy
2018-02-19Don't silently succeed seccomp setup when !HAVE_SECCOMP.Shea Levy
Running Nix with build users without seccomp on Linux is dangerous, and administrators should very explicitly opt-in to it.
2018-02-19Config::handleUnknownSettings(): Remove unused 'fatal' argumentEelco Dolstra
2018-02-19Merge branch 'register-settings' of https://github.com/shlevy/nixEelco Dolstra
2018-02-19Merge pull request #1857 from dtzWill/fix/check-for-lzma-mtEelco Dolstra
configure.ac: check if lzma has MT support, fix deb build/etc.
2018-02-18configure: Add a flag to disable seccomp.Shea Levy
This is needed for new arches where libseccomp support doesn't exist yet. Fixes #1878.
2018-02-17libexpr: Avoid an unnecessary string copy in prim_derivationStrictTuomas Tynkkynen
2018-02-17libexpr: Remove unnecessary drvName assignment in prim_derivationStrictTuomas Tynkkynen
drvName is already assigned to the same value right at the start of the function.
2018-02-17libexpr: Optimize prim_derivationStrict by using more symbol comparisonsTuomas Tynkkynen
2018-02-17libexpr: Rely on Boehm returning zeroed memory in EvalState::allocEnv()Tuomas Tynkkynen
Boehm guarantees that memory returned by GC_malloc() is zeroed, so take advantage of that.
2018-02-17libexpr: Optimize prim_attrNames a bitTuomas Tynkkynen
Instead of having lexicographicOrder() create a temporary sorted array of Attr*:s and copying attr names from that, copy the attr names first and then sort that.
2018-02-16libexpr: Pre-reserve space in string in unescapeStr()Tuomas Tynkkynen
Avoids some malloc() traffic.
2018-02-15Merge pull request #1873 from matthewbauer/fix-manpathEelco Dolstra
Set MANPATH in case man path isn’t set correctly.
2018-02-15Set backup MANPATH in case man path isn’t set correctly.Matthew Bauer
Previously, this would fail at startup for non-NixOS installs: nix-env --help The fix for this is to just use "nixManDir" as the value for MANPATH when spawning "man". To test this, I’m using the following: $ nix-build release.nix -A build $ MANPATH= ./result/bin/nix-env --help Fixes #1627
2018-02-15Merge pull request #1872 from shlevy/macOS-poll-fixEelco Dolstra
monitor-fds: Fix on macOS.
2018-02-14monitor-fds: Fix on macOS.Shea Levy
Fixes #1871.
2018-02-14Merge pull request #1870 from shlevy/split-versionEelco Dolstra
Add splitVersion primop.
2018-02-14Add splitVersion primop.Shea Levy
Fixes #1868.
2018-02-13Allow plugins to define new settings.Shea Levy
2018-02-13Fix plugin tests on darwinShea Levy
2018-02-13Merge pull request #1863 from shlevy/conf-includesEelco Dolstra
Allow includes from nix.conf
2018-02-13Merge pull request #1862 from shlevy/plugin-dirsEelco Dolstra
Enable specifying directories in plugin-files.
2018-02-13Enable specifying directories in plugin-files.Shea Levy
2018-02-13Fix #1762Linus Heckemann
nix-store --export, nix-store --dump, and nix dump-path would previously fail silently if writing the data out failed, because a) FdSink::write ignored exceptions, and b) the commands relied on FdSink's destructor, which ignores exceptions, to flush the data out. This could cause rather opaque issues with installing nixos, because nix-store --export would happily proceed even if it couldn't write its data out (e.g. if nix-store --import on the other side of the pipe failed). This commit adds tests that expose these issues in the nix-store commands, and fixes them for all three.
2018-02-13Allow includes from nix.confShea Levy
2018-02-13Merge pull request #1775 from LnL7/darwin-build-usersEelco Dolstra
installer: create 'enough' build users
2018-02-13Merge branch 'register-constant' of https://github.com/shlevy/nixEelco Dolstra
2018-02-13Merge branch 'plugins' of https://github.com/shlevy/nixEelco Dolstra
2018-02-13Merge pull request #1859 from FRidh/flattenEelco Dolstra
Nix stats: flatten statistics
2018-02-12Fix hang in build-remoteEelco Dolstra
2018-02-12Fix 'deadlock: trying to re-acquire self-held lock'Eelco Dolstra
This was caused by derivations with 'allowSubstitutes = false'. Such derivations will be built locally. However, if there is another SubstitionGoal that has the output of the first derivation in its closure, then the path will be simultaneously built and substituted. There was a check to catch this situation (via pathIsLockedByMe()), but it no longer worked reliably because substitutions are now done in another thread. (Thus the comment 'It can't happen between here and the lockPaths() call below because we're not allowing multi-threading' was no longer valid.) The fix is to handle the path already being locked in both SubstitutionGoal and DerivationGoal.
2018-02-12toBuildables -> buildEelco Dolstra