aboutsummaryrefslogtreecommitdiff
path: root/src/libstore
AgeCommit message (Collapse)Author
2018-05-30Move some Download-specific settings to download.ccEelco Dolstra
2018-05-30Modularize config settingsEelco Dolstra
Allow global config settings to be defined in multiple Config classes. For example, this means that libutil can have settings and evaluator settings can be moved out of libstore. The Config classes are registered in a new GlobalConfig class to which config files etc. are applied. Relevant to https://github.com/NixOS/nix/issues/2009 in that it removes the need for ad hoc handling of useCaseHack, which was the underlying cause of that issue.
2018-05-30Fix assertion failure in storePathToHash()Eelco Dolstra
Fixes https://github.com/NixOS/nix/issues/2015.
2018-05-30Make 'nix copy --to daemon' run in constant memory (daemon side)Eelco Dolstra
Continuation of 97002b684c902dadcd351a67208f9c2a88ff8f8f. This makes the daemon use constant memory. For example, it reduces the daemon's maximum RSS on $ nix copy --from ~/my-nix --to daemon /nix/store/1n7x0yv8vq6zi90hfmian84vdhd04bgp-blender-2.79a from 264 MiB to 7 MiB. We now use a TunnelSource to prevent the connection from ending up in an undefined state if an exception is thrown while the NAR is being sent. Issue https://github.com/NixOS/nix/issues/1681.
2018-05-30LocalStore::addToStore: Throw an exception if no hash is givenEelco Dolstra
2018-05-30Use extended SQLite error codesEelco Dolstra
2018-05-25libstore/download: remove unused function "getTime()"Will Dietz
2018-05-15Merge pull request #2145 from serokell/uncached-channelEelco Dolstra
make sure not to use cached channels for nix-channel --update
2018-05-10Remove mention of default since we already know the defaultEelco Dolstra
2018-05-10Merge branch 's3-multipart-uploads' of https://github.com/AmineChikhaoui/nixEelco Dolstra
2018-05-09make sure not to use cached channels for nix-channel --updateYorick van Pelt
fixes #1964
2018-05-07share the executor between multiple copy threads.AmineChikhaoui
2018-05-07add a FIXME note to find a way to abort the multipart uploads inAmineChikhaoui
case the nix command is interrupted.
2018-05-07Support multi-part uploads for large NARs that exceed the size ofAmineChikhaoui
5Gb.
2018-05-03Don't set a CA assertion for paths with referencesEelco Dolstra
Really fixes #2133.
2018-05-03LocalStore::addValidPath(): Throw error when the CA assertion is wrongEelco Dolstra
Closes #2133.
2018-05-02Fix some random -Wconversion warningsEelco Dolstra
2018-04-23globals.hh: don't use '==' to compare string literalsWill Dietz
Saw this in logs, also reported here: https://github.com/NixOS/nix/commit/8e6108ff71caae180d764ab9e9bff5593724655c#r28707288
2018-04-23Merge branch 'aarch64-armv7' of git://github.com/lheckemann/nixShea Levy
Support extra compatible architectures (#1916)
2018-04-23Merge branch 'hash-mismatch' of git://github.com/LnL7/nixShea Levy
2018-04-21Merge pull request #1707 from dtzWill/fix/issue-1692Peter Simons
ignore "interrupted" exception in progress callback
2018-04-20download: make hash mismatch error consistent with fetchurlDaiderd Jordan
2018-04-20build.cc: fix bind-mount of /dev/{pts,ptmx} fallbackWill Dietz
Don't bind-mount these to themselves, mount them into the chroot directory. Fixes pty issues when using sandbox on CentOS 7.4. (build of perlPackages.IOTty fails before this change)
2018-04-17exportReferences: Check whether the path is in the input closureEelco Dolstra
Fixes #2082.
2018-04-13Fix #1921Eelco Dolstra
2018-04-11initPlugins: Fix dlopen error message.Shea Levy
2018-04-10Fix perl-bindingsEelco Dolstra
https://hydra.nixos.org/build/72636781
2018-04-09Export required C++ version in pkgconfig.Shea Levy
2018-04-06rename the options to mention it's a narinfo TTL as disk cache is used all ↵AmineChikhaoui
over the place for other operations
2018-04-06add documentation for the local disk cache TTL configAmineChikhaoui
2018-04-06Make the TTL for disk cache configurable, we can now completely disableAmineChikhaoui
disk cache lookup for example by doing: nix copy --from <binary-cahe> <store-path> --option \ positive-disk-cache-ttl 0 Issues: #1885 #2035
2018-04-05<nix/buildenv.nix>: Ignore dangling symlinksEelco Dolstra
Fixes error: getting status of '/nix/store/j8p0vv89k1pf0cn7kmfsdcs7bshwga1i-firefox-52.7.2esr/share/icons/hicolor/48x48/apps/firefox.png': No such file or directory https://github.com/NixOS/nix/issues/1934 Also improve error message on directory/non-directory collisions.
2018-04-05<nix/buildenv.nix>: Skip non-directory top-level pathsEelco Dolstra
Fixes https://github.com/NixOS/nix/issues/1934 (at least the "error: opening directory '/nix/store/...-linux-config-4.4.14': Not a directory" issue).
2018-03-29Process --option use-case-hack properlyEelco Dolstra
Fixes https://github.com/NixOS/nix/issues/2009.
2018-03-29ValidPathInfo::isContentAddressed(): Ensure there are no referencesEelco Dolstra
2018-03-22download: improve error for hash mismatch ("store mismatch")Will Dietz
Fixes #1905
2018-03-22download.cc: fix path for cached filesWill Dietz
2018-03-22Merge branch 'fix/avoid-large-stack-buffers' of https://github.com/dtzWill/nixEelco Dolstra
2018-03-21Also make the backwards compatible case of RemoteStore::addToStore run in ↵Eelco Dolstra
constant memory Just because we can.
2018-03-21Make 'nix copy --to daemon' run in constant memoryEelco Dolstra
2018-03-21Make 'nix copy --to ssh://...' run in constant memoryEelco Dolstra
2018-03-21Make 'nix copy --from ssh://...' run in constant memoryEelco Dolstra
For instance, this reduced the memory consumption of $ nix copy --from ssh://localhost --to ~/my-nix /nix/store/1n7x0yv8vq6zi90hfmian84vdhd04bgp-blender-2.79a from 632 MiB to 16 MiB.
2018-03-21LegacySSHStore: Allow overriding the path to nix-storeEelco Dolstra
2018-03-20Make <nix/buildenv.nix> a builtin builderEelco Dolstra
This avoids sandbox annoyances.
2018-03-20Move builtinFetchurl to its own fileEelco Dolstra
2018-03-20Slight simplificationEelco Dolstra
2018-03-20SSHMaster: Optionally pass -v to sshEelco Dolstra
2018-03-20Hack to get SSH error messages from build-remoteEelco Dolstra
E.g. cannot build on 'ssh://mac1': cannot connect to 'mac1': bash: nix-store: command not found cannot build on 'ssh://mac2': cannot connect to 'mac2': Host key verification failed. cannot build on 'ssh://mac3': cannot connect to 'mac3': Received disconnect from 213... port 6001:2: Too many authentication failures Authentication failed.
2018-03-16rename build-extra-platforms -> extra-platformsLinus Heckemann
also document it
2018-03-16Reduce substitution memory consumptionEelco Dolstra
copyStorePath() now pipes the output of srcStore->narFromPath() directly into dstStore->addToStore(). The sink used by the former is converted into a source usable by the latter using boost::coroutine2. This is based on [1]. This reduces the maximum resident size of $ nix build --store ~/my-nix/ /nix/store/b0zlxla7dmy1iwc3g459rjznx59797xy-binutils-2.28.1 --substituters file:///tmp/binary-cache-xz/ --no-require-sigs from 418592 KiB to 53416 KiB. (The previous commit also reduced the runtime from ~4.2s to ~3.4s, not sure why.) A further improvement will be to download files into a Sink. [1] https://github.com/NixOS/nix/compare/master...Mathnerd314:dump-fix-coroutine#diff-dcbcac55a634031f9cc73707da6e4b18 Issue #1969.