aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2018-10-31Fix typo in commentsJan Path
2018-10-31Merge pull request #2501 from mayflower/xdg_config_dirsEelco Dolstra
config: use all of XDG_CONFIG_DIRS
2018-10-31config: use all of XDG_CONFIG_DIRSLinus Heckemann
Previously, config would only be read from XDG_CONFIG_HOME. This change allows reading config from additional directories, which enables e.g. per-project binary caches or chroot stores with the help of direnv.
2018-10-30Remove redundant messageEelco Dolstra
2018-10-30S3BinaryCacheStore: Allow disabling multipart uploadsEelco Dolstra
The use of TransferManager has several issues, including that it doesn't allow setting a Content-Encoding without a patch, and it doesn't handle exceptions in worker threads (causing termination on memory allocation failure). Fixes #2493.
2018-10-30Fix broken uploadProgressCallback closureEelco Dolstra
Since the callback is global we can't refer to 'path' in it. This could cause a segfault or printing of arbitrary data.
2018-10-29Merge pull request #2494 from FPtje/fix-copy-from-oldEelco Dolstra
copyStorePath: Fix hash errors when copying from older store
2018-10-29copyStorePath: Fix hash errors when copying from older storeFalco Peijnenburg
This commit partially reverts 48662d151bdf4a38670897beacea9d1bd750376a. When copying from an older store (in my case a store running Nix 1.11.7), nix would throw errors about there being no hash. This is fixed by recalculating the hash.
2018-10-29nix doctor: return nonzero exitcode if a check failsDaiderd Jordan
This makes it easier to use this when testing the installer or when running the checks with other automated tooling.
2018-10-27Restore old (dis)allowedRequisites behaviour for self-referencesEelco Dolstra
stdenv relies on this. So ignore self-references (but only in legacy non-structured attributes mode).
2018-10-27Merge branch 'simplify-lexer' of https://github.com/layus/nixEelco Dolstra
2018-10-27Fix signedness warningEelco Dolstra
2018-10-27Merge branch 'nix-doctor' of https://github.com/LnL7/nixEelco Dolstra
2018-10-27Merge pull request #2488 from dtzWill/fix/struct-class-minorEelco Dolstra
remote-store.hh: ConnectionHandle is struct, minor fix warning
2018-10-27simplify handling of extra '}'Guillaume Maudoux
2018-10-26remote-store.hh: ConnectionHandle is struct, minor fix warningWill Dietz
2018-10-26src/nix/local.mk: fix typos in names of symlinksWill Dietz
2018-10-26Merge all nix-* binaries into nixEelco Dolstra
These are all symlinks to 'nix' now, reducing the installed size by about ~1.7 MiB.
2018-10-23Merge pull request #2483 from mayflower/tail-configEelco Dolstra
Promote verbose-build and log-lines
2018-10-23Promote log-lines to a fully-qualified optionLinus Heckemann
This allows commands like nix build --log-lines 30 nixpkgs.hello in order to obtain more information in case of a failure.
2018-10-23Merge pull request #2479 from nlewo/graphmlEelco Dolstra
Add --graphml option to the nix-store --query command
2018-10-23Per-output reference and closure size checksEelco Dolstra
In structured-attributes derivations, you can now specify per-output checks such as: outputChecks."out" = { # The closure of 'out' must not be larger than 256 MiB. maxClosureSize = 256 * 1024 * 1024; # It must not refer to C compiler or to the 'dev' output. disallowedRequisites = [ stdenv.cc "dev" ]; }; outputChecks."dev" = { # The 'dev' output must not be larger than 128 KiB. maxSize = 128 * 1024; }; Also fixed a bug in allowedRequisites that caused it to ignore self-references.
2018-10-20Remove the `--xml` query command optionAntoine Eiche
The `--graphml` option can be used instead.
2018-10-20Add --graphml option to the nix-store --query commandAntoine Eiche
This prints the references graph of the store paths in the graphML format [1]. The graphML format is supported by several graph tools such as the Python Networkx library or the Apache Thinkerpop project. [1] http://graphml.graphdrawing.org
2018-10-16Fix assertion failure in Store::queryPathInfo()Eelco Dolstra
$ nix-store -qR /nix/store/fnord nix-store: src/libstore/store-api.cc:80: std::__cxx11::string nix::storePathToHash(const Path&): Assertion `base.size() >= storePathHashLen' failed. Aborted
2018-10-16RemoteStore: Close connection if an exception occursEelco Dolstra
Fixes #2075.
2018-10-16Get rid of UDSRemoteStore::ConnectionEelco Dolstra
Since its superclass RemoteStore::Connection contains 'to' and 'from' fields that refer to the file descriptor maintained in the subclass, it was possible for the flush() call in Connection::~Connection() to write to a closed file descriptor (or worse, a file descriptor now referencing another file). So make sure that the file descriptor survives 'to' and 'from'.
2018-10-08Merge pull request #2452 from ElvishJerricco/verify-sigs-overflowEelco Dolstra
Fix overflow when verifying signatures of content addressable paths
2018-10-04Remove unnecessary typecastEelco Dolstra
2018-09-28Check requiredSystemFeatures for local buildsEelco Dolstra
For example, this prevents a "kvm" build on machines that don't have KVM. Fixes #2012.
2018-09-28Move structured attrs handling into a separate classEelco Dolstra
This is primarily because Derivation::{can,will}BuildLocally() depends on attributes like preferLocalBuild and requiredSystemFeatures, but it can't handle them properly because it doesn't have access to the structured attributes.
2018-09-28Remove obsolete check on system featuresEelco Dolstra
2018-09-28Support special attributes in structured attributes derivationsEelco Dolstra
E.g. __noChroot and allowedReferences now work correctly. We also now check that the attribute type is correct. For instance, instead of allowedReferences = "out"; you have to write allowedReferences = [ "out" ]; Fixes #2453.
2018-09-27S3BinaryCacheStore: Don't create bucketsEelco Dolstra
This meant that making a typo in an s3:// URI would cause a bucket to be created. Also it didn't handle eventual consistency very well. Now it's up to the user to create the bucket.
2018-09-27Merge pull request #2455 from grahamc/add-interactive-pathEelco Dolstra
nix-shell: add bashInteractive to the start of the PATH, set SHELL
2018-09-27nix-shell: add bashInteractive to the start of the PATH, set SHELLGraham Christensen
Tools which re-exec `$SHELL` or `$0` or `basename $SHELL` or even just `bash` will otherwise get the non-interactive bash, providing a broken shell for the same reasons described in https://github.com/NixOS/nixpkgs/issues/27493. Extends c94f3d5575d7af5403274d1e9e2f3c9d72989751
2018-09-27Don't talk about a "current folder build output"Eelco Dolstra
Presumably this refers to ./default.nix but the support for that in 'nix' is tenuous. Also folders are a Mac thing.
2018-09-26nix doctor: reimplement profile warning without gcroot checkDaiderd Jordan
Calculating roots seems significantly slower on darwin compared to linux. Checking for /profile/ links could show some false positives but should still catch most issues.
2018-09-26Ensure download thread livenessEelco Dolstra
* Don't wait forever for the client to remove data from the buffer. This does mean that the buffer can grow without bounds (e.g. when downloading is faster than writing to disk), but meh. * Don't hold the state lock while calling the sink. The sink could take any amount of time to process the data (in particular when it's actually a coroutine), so we don't want to block the download thread.
2018-09-26UntabifyEelco Dolstra
2018-09-26sinkToSource(): Start the coroutine lazilyEelco Dolstra
In particular this causes copyStorePath() from HttpBinaryCacheStore to only start a download if needed. E.g. if the destination LocalStore goes to sleep waiting for the path lock and another process creates the path, then LocalStore::addToStore() will never read from the source so we don't have to do the download.
2018-09-26Make NAR header check more robustEelco Dolstra
Changes std::bad_alloc into bad archive: input doesn't look like a Nix archive
2018-09-25Fix overflow when verifying signatures of content addressable pathsWill Fancher
2018-09-25nix-daemon: allow setting builders to "" by any user (untrusted)Will Dietz
(cherry picked from commit a94a2eb1cb1c81e90a7529be5fecac27899a3442)
2018-09-24Merge pull request #2312 from ↵Eelco Dolstra
dtzWill/fix/matched-names-should-still-print-version search: include version for matches too!
2018-09-17nix-env: Fix segfault if -f argument is not a directory or a Nix expressionEelco Dolstra
Fixes #2425.
2018-09-17Fix build failure if parallel xz is not availableEelco Dolstra
2018-09-13Merge branch 'dirOf-relative' of https://github.com/lheckemann/nixEelco Dolstra
2018-09-10auto args on replDing Xiang Fei
2018-09-07If fallback is enabled, temporarily disable substituters after a failureEelco Dolstra
Otherwise, we just keep asking the substituter for other .narinfo files, which can take a very long time due to retries/timeouts.