aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2018-02-28Actually fix nixDataDir in non-canonical pathShea Levy
2018-02-26libexpr: 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. First attempt of this was reverted in e2d71bd1862cdda because it caused another infinite loop, which is fixed now and a test added.
2018-02-26nix run: Fix segfault on macOSEelco Dolstra
Note that clearenv() is not available on macOS. Fixes #1907.
2018-02-23Fix downloadCached() with a chroot storeEelco Dolstra
E.g. nix run --store ~/my-nix -f channel:nixos-17.03 hello -c hello This problem was mentioned in #1897.
2018-02-22Merge branch 'data-dir-non-canon' of https://github.com/shlevy/nixEelco Dolstra
2018-02-22Revert "Enable sandbox builds on Linux by default"Eelco Dolstra
This reverts commit ddc58e789636e1b94149c342575d92583251fbf6. https://hydra.nixos.org/eval/1435322
2018-02-22Fix restricted mode when installing in non-canonical data dirShea Levy
2018-02-22Enable sandbox builds on Linux by defaultEelco Dolstra
The overhead of sandbox builds is a problem on NixOS (since building a NixOS configuration involves a lot of small derivations) but not for typical non-NixOS use cases. So outside of NixOS we can enable it. Issue #179.
2018-02-22Merge branch 'fix/dry-run-partially' of https://github.com/dtzWill/nixEelco 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-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-19Update release notesEelco Dolstra
Also add some examples to nix --help.
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-14monitor-fds: Fix on macOS.Shea Levy
Fixes #1871.
2018-02-14Add splitVersion primop.Shea Levy
Fixes #1868.
2018-02-13Allow plugins to define new settings.Shea Levy
2018-02-13Merge pull request #1863 from shlevy/conf-includesEelco Dolstra
Allow includes from nix.conf
2018-02-13Enable specifying directories in plugin-files.Shea Levy
2018-02-13Allow includes from nix.confShea Levy
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
2018-02-11compression: make parallel sink separate classWill Dietz
2018-02-11compression: print warning if parallel requested but not supportedWill Dietz
2018-02-11Nix stats: flatten statisticsFrederik Rietdijk
Flattens the list of statistics as suggested in https://github.com/NixOS/ofborg/issues/67. This makes it easier to work with.
2018-02-09configure.ac: check if lzma has MT support, fix deb build/etc.Will Dietz