about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2018-07-05 prim_mapAttrs: must be lazy to avoid infinite recursionvolth1-4/+5
2018-07-05 prim_concatMap: allocate intermediate list on stackvolth1-7/+15
2018-07-05 primops.cc: fix commentvolth1-1/+1
2018-07-05 lib.concatMap and lib.mapAttrs to be builtinsvolth5-0/+52
2018-07-04 Merge pull request #2268 from dtzWill/fix/search-ux-test-breakEelco Dolstra1-1/+1
tests/search.sh: minor fix to unbreak tests after search ux merge
2018-07-03 tests/search.sh: minor fix to unbreak tests after search ux mergeWill Dietz1-1/+1
2018-07-03 nix-daemon: Respect --storeEelco Dolstra1-3/+7
For example, this allows you to do run nix-daemon as a non-privileged user: eelco$ NIX_STATE_DIR=~/my-nix/nix/var nix-daemon --store ~/my-nix/ The NIX_STATE_DIR is still needed because settings.nixDaemonSocketFile is not derived from settings.storeUri (and we can't derive it from the store's state directory because we don't want to open the store in the parent process).
2018-07-03 Include cpptoml for build simplicityEelco Dolstra4-19/+3476
2018-07-03 Add a fromTOML primopEelco Dolstra4-0/+280
This is primarily useful for processing Cargo.lock files.
2018-07-03 Store floating point numbers in double precisionEelco Dolstra2-1/+2
Even on 32-bit systems, Value has enough space to hold a double.
2018-07-03 Merge pull request #2265 from Ma27/nix-why-depends-pagerEelco Dolstra1-0/+2
nix why-depends: render output into $PAGER
2018-07-03 nix why-depends: render output into $PAGERMaximilian Bosch1-0/+2
2018-07-02 Merge pull request #2158 from Ma27/improve-search-uxEelco Dolstra1-10/+20
search.cc: improve UX for `nix search`
2018-07-02 search.cc: improve UX for `nix search`Maximilian Bosch1-10/+20
As proposed in #1634 the `nix search` command could use some improvements. Initially 0413aeb35d6ee869a98b6565781c1cf47dc80080 added some basic sorting behavior using `std::map`, a next step would be an improvement of the output. This patch includes the following changes: * Use `$PAGER` for outputs with `RunPager` from `shared.hh`: The same behavior is defined for `nix-env --query`, furthermore it makes searching huge results way easier. * Simplified result blocks: The new output is heavily inspired by the output from `nox`, the first line shows the attribute path and the derivaiton name (`attribute path (derivation name)`) and the description in the second line.
2018-06-21 Merge pull request #2243 from peti/masterEelco Dolstra2-36/+0
docker: move the docker file to https://github.com/NixOS/docker
2018-06-21 docker: move the docker file to https://github.com/NixOS/dockerPeter Simons2-36/+0
We have automated builds at https://hub.docker.com/r/nixos/nix/ now. The master branch of the "docker" repository is available as "latest". Branches that match the regular expression "^[0-9.]+$" are pushed to the tag that corresponds to their branch name. Other branches are ignored.
2018-06-19 Merge pull request #2241 from dtzWill/feature/refresh-progress-barEelco Dolstra2-4/+5
progress-bar: refresh occasionally even if no updates are received
2018-06-18 Merge pull request #2240 from dtzWill/fix/use-utillinux-minimalShea Levy1-1/+1
release-common: prefer utillinuxMinimal to reduce compile-time deps
2018-06-18 progress-bar: re-draw last update if nothing new for 1sec.Will Dietz1-2/+3
Slightly nicer behavior when updates are somewhat far apart (during a long linking step, perhaps) ensuring things don't appear unresponsive. If we wait the maximum amount for the update, don't bother waiting another 50ms (for rate-limiting purposes) and just check if we should quit. This also ensures we'll notice the request to quit within 1s if quit is signalled but there is not an udpate. (I'm not sure if this happens or not)
2018-06-18 sync.hh: return cv_status instead of dropping it, in case useful.Will Dietz1-2/+2
2018-06-18 release-common: prefer utillinuxMinimal to reduce compile-time depsWill Dietz1-1/+1
Honestly could probably use busybox here instead, but at least with utillinuxMinimal there's no build-time dependency on systemd.
2018-06-18 Detect redirect loopsEelco Dolstra1-0/+2
Fixes #2225.
2018-06-18 Merge pull request #2234 from symphorien/esrch2Eelco Dolstra1-1/+1
libstore/gc.cc: ignore ESRCH when reading symlinks in /proc
2018-06-16 libstore/gc.cc: ignore ESRCH when reading symlinks in /procSymphorien Gibol1-1/+1
readlink is also affected by the problem fixed for regular files in c567afe355df
2018-06-14 Merge pull request #2230 from matthewbauer/patch-7Eelco Dolstra1-2/+1
Fix optimise-store.cc to skip more paths on macOS
2018-06-14 Fix optimise-store.cc to skip more paths on macOSMatthew Justin Bauer1-2/+1
I hate to make this such a large check but the lack of documentation means we really have no idea what's allowed. All of them reported so far have been within ".app/Contents" directories. That appears to be a safe starting point. However, I would not be surprised to also find more paths that are disallowed for instance in .framework or .bundle directories. Fixes #2031 Fixes #2229
2018-06-13 nix: Remove special handling of .drv filesEelco Dolstra1-22/+2
This makes 'nix copy' and 'nix path-info' work on .drv store paths. Removing special treatment of .drv files seems the most future-proof approach given the possible removal of .drv files in the future. Note that 'nix build' will still build (rather than substitute) .drv paths due to the unfortunate overloading in Store::buildPaths().
2018-06-13 hashDerivationModulo(): Handle chroot storesEelco Dolstra1-1/+1
This makes 'nix copy --to /mnt /nix/store/bla.drv' work.
2018-06-13 std::random_shuffle -> std::shuffleEelco Dolstra1-1/+3
The former is removed in C++17.
2018-06-12 Move EvalState from the stack to the heapEelco Dolstra5-46/+46
EvalState contains a few counters (e.g. nrValues) that increase quickly enough that they end up being interpreted as pointers by the garbage collector. Moving it to the heap makes them invisible to the garbage collector. This reduces the max RSS doing 100 evaluations of nixos.tests.firefox.x86_64-linux.drvPath from 455 MiB to 292 MiB. Note: ideally, allocations would be much further up in the 64-bit address space to reduce the odds of an integer being misinterpreted as a pointer. Maybe we can use some linker magic to move the .bss segment to a higher address.
2018-06-12 GC_malloc -> GC_MALLOCEelco Dolstra2-9/+3
This makes it possible to build with -DGC_DEBUG.
2018-06-12 Don't scan for roots in dynamic librariesEelco Dolstra1-0/+7
This reduces the risk of object liveness misdetection. For example, Glibc has an internal variable "mp_" that often points to a Boehm object, keeping it alive unnecessarily. Since we don't store any actual roots in global variables, we can just disable data segment scanning. With this, the max RSS doing 100 evaluations of nixos.tests.firefox.x86_64-linux.drvPath went from 718 MiB to 455 MiB.
2018-06-12 Add temporary statsEelco Dolstra2-1/+28
2018-06-12 Cache parse treesEelco Dolstra2-2/+19
This prevents EvalState::resetFileCache() from parsing everything all over again.
2018-06-12 Remove duplicate definition of allocBytes()Eelco Dolstra3-29/+15
2018-06-12 Merge pull request #2224 from serokell/getaddrinfo-preloadDaniel Peebles1-4/+8
Fix #2162: use getaddrinfo instead of curl to preload NSS
2018-06-12 Fix #2162: use getaddrinfo instead of curl to preload NSSYorick van Pelt1-4/+8
2018-06-11 Merge pull request #2223 from symphorien/esrchEelco Dolstra1-10/+13
libstore/gc.cc: ignore ESRCH when reading /proc
2018-06-11 libstore/gc.cc: ignore ESRCH when reading /procSymphorien Gibol1-10/+13
If a process disappears between the time /proc/[pid]/maps is opened and the time it is read, the read() syscall will return ESRCH. This should be ignored.
2018-06-11 Merge pull request #2211 from unsatcore/masterEelco Dolstra2-6/+4
tests: more robust check for user namespaces availability (canUseSand…
2018-06-10 Merge pull request #2220 from 7c6f434c/doc-floatsShea Levy1-2/+1
manual: builtins.fromJSON: remove the claim that floats are not allowed
2018-06-10 manual: builtins.fromJSON: remove the claim that floats are not allowedMichael Raskin1-2/+1
floating-point numbers are supported now, including the fromJSON builtin. Reported on IRC by inquisitiv3
2018-06-08 pr-2211: cleanupAleksandr Pashkov1-1/+1
2018-06-08 Merge pull request #2215 from AmineChikhaoui/s3-multipart-debugEelco Dolstra1-1/+1
use debug instead of printTalkative to avoid spamming hydra queue-runner
2018-06-08 use debug instead of printTalkative to avoid spamming hydra queueAmineChikhaoui1-1/+1
runner logs.
2018-06-07 pr-2211: cleanupAleksandr Pashkov1-1/+1
2018-06-06 Merge pull request #2212 from asymmetric/patch-2Eelco Dolstra1-2/+2
Dockerfile: 2.0.4
2018-06-06 Dockerfile: 2.0.4Lorenzo Manacorda1-2/+2
2018-06-06 tests: more robust check for user namespaces availability (canUseSandbox)Aleksandr Pashkov2-6/+4
Issue https://github.com/NixOS/nix/issues/2165
2018-06-05 Don't require --fallback to recover from disappeared binary cache NARsEelco Dolstra4-16/+40