about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2016-04-29 Add fetchgit builtinEelco Dolstra2-1/+78
The function builtins.fetchgit fetches Git repositories at evaluation time, similar to builtins.fetchTarball. (Perhaps the name should be changed, being confusing with respect to Nixpkgs's fetchgit function, with works at build time.) Example: (import (builtins.fetchgit git://github.com/NixOS/nixpkgs) {}).hello or (import (builtins.fetchgit { url = git://github.com/NixOS/nixpkgs-channels; rev = "nixos-16.03"; }) {}).hello Note that the result does not contain a .git directory.
2016-04-29 nix-store -l: Simplify implementationEelco Dolstra1-15/+2
2016-04-29 BinaryCacheStore: Support bzip2 compressionEelco Dolstra3-36/+121
2016-04-29 nix verify --all: Support local binary cachesEelco Dolstra2-2/+16
2016-04-29 Better error messageEelco Dolstra1-1/+6
2016-04-29 BinaryCacheStore: Support "none" compression methodEelco Dolstra5-31/+51
2016-04-29 BinaryCacheStore: Make the signing key a parameterEelco Dolstra7-36/+21
2016-04-29 BinaryCacheStore::queryPathInfo: Don't check signaturesEelco Dolstra2-10/+1
Other stores don't do this either. It's up to the caller to check signatures.
2016-04-29 Allow parameters in store URIsEelco Dolstra9-8/+56
This is to allow store-specific configuration, e.g. s3://my-cache?compression=bzip2&secret-key=/path/to/key.
2016-04-29 Eliminate the substituter mechanismEelco Dolstra9-455/+164
Substitution is now simply a Store -> Store copy operation, most typically from BinaryCacheStore to LocalStore.
2016-04-28 Really handle carriage returnEelco Dolstra1-4/+9
2016-04-28 Fix error messageEelco Dolstra1-1/+1
2016-04-25 Handle carriage returnEelco Dolstra1-12/+7
2016-04-25 nix: Disable verbose buildsEelco Dolstra1-0/+2
2016-04-25 Show the log tail when a build failsEelco Dolstra6-15/+54
If --no-build-output is given (which will become the default for the "nix" command at least), show the last 10 lines of the build output if the build fails.
2016-04-25 Remove --print-build-traceEelco Dolstra6-66/+3
This was added to support Hydra, but Hydra no longer uses it.
2016-04-25 Fix "path is not in the Nix store" during GCEelco Dolstra1-1/+1
2016-04-25 Remove nix-log2xmlEelco Dolstra3-292/+0
2016-04-25 Improved logging abstractionEelco Dolstra25-381/+391
This also gets rid of --log-type, since the nested log type isn't useful in a multi-threaded situation, and nobody cares about the "pretty" log type.
2016-04-22 Factor out parallel processing of work items that have dependenciesEelco Dolstra2-55/+78
2016-04-22 nix copy: ParalleliseEelco Dolstra4-20/+59
2016-04-22 ThreadPool: Start doing work as soon as work items are enqueuedEelco Dolstra2-59/+84
2016-04-22 Make compression interruptibleEelco Dolstra1-1/+3
2016-04-22 Fold "nix query-path-sigs" into "nix path-info"Eelco Dolstra2-31/+10
2016-04-22 Add "nix copy" commandEelco Dolstra1-0/+87
This replaces nix-push. For example, $ nix copy --to file:///tmp/cache -r $(type -p firefox) copies the closure of firefox to the specified binary cache. And $ nix copy --from file:///tmp/cache --to s3://my-cache /nix/store/abcd... copies between two binary caches. It will also replace nix-copy-closure, once we have an SSHStore class, e.g. $ nix copy --from ssh://alice@machine /nix/store/abcd...
2016-04-22 BinaryCacheStore: When adding a path, ensure the references are validEelco Dolstra1-0/+11
This prevents copying a partial closure to a binary cache.
2016-04-21 Fix test failuresEelco Dolstra2-1/+2
2016-04-21 Implement S3BinaryCacheStore::queryAllValidPaths()Eelco Dolstra9-54/+113
This allows commands like "nix verify --all" or "nix path-info --all" to work on S3 caches. Unfortunately, this requires some ugly hackery: when querying the contents of the bucket, we don't want to have to read every .narinfo file. But the S3 bucket keys only include the hash part of each store path, not the name part. So as a special exception queryAllValidPaths() can now return store paths *without* the name part, and queryPathInfo() accepts such store paths (returning a ValidPathInfo object containing the full name).
2016-04-21 Move S3BinaryCacheStore from HydraEelco Dolstra3-1/+253
This allows running arbitrary Nix commands against an S3 binary cache. To do: make this a compile time option to prevent a dependency on aws-sdk-cpp.
2016-04-21 nix path-info: AddEelco Dolstra1-0/+75
Forgot to commit this earlier...
2016-04-21 nix --help: Show usage examplesEelco Dolstra3-0/+41
2016-04-21 nix --help: Show short flagsEelco Dolstra2-4/+6
2016-04-20 RemoteStore: Propagate InvalidPath exceptions from the daemonEelco Dolstra3-9/+28
2016-04-20 BinaryCacheStore: Insert new paths into the disk cacheEelco Dolstra1-0/+4
2016-04-20 Cache path info lookups in SQLiteEelco Dolstra18-36/+380
This re-implements the binary cache database in C++, allowing it to be used by other Store backends, in particular the S3 backend.
2016-04-19 Move path info caching from BinaryCacheStore to StoreEelco Dolstra20-344/+310
Caching path info is generally useful. For instance, it speeds up "nix path-info -rS /run/current-system" (i.e. showing the closure sizes of all paths in the closure of the current system) from 5.6s to 0.15s. This also eliminates some APIs like Store::queryDeriver() and Store::queryReferences().
2016-04-16 Print out all bad references/requisites at onceDan Peebles1-2/+13
Also updates tests to check for new information. Fixes #799
2016-04-15 Make the .narinfo cache biggerEelco Dolstra1-1/+1
2016-04-15 BinaryCacheStore: Do negative caching of .narinfo lookupsEelco Dolstra2-3/+12
2016-04-15 BinaryCacheStore::readFile(): Return a shared_ptr to a stringEelco Dolstra11-28/+52
This allows readFile() to indicate that a file doesn't exist, and might eliminate some large string copying.
2016-04-15 Unify "nix verify-paths" and "nix verify-store"Eelco Dolstra3-60/+31
"verify-store" is now simply an "--all" flag to "nix verify". This flag can be used for any other store path command as well (e.g. "nix path-info", "nix copy-sigs", ...).
2016-04-14 Merge pull request #815 from vcunat/p/outputsToInstallEelco Dolstra3-7/+24
nix-env: respect meta.outputsToInstall
2016-04-14 Make $NIX_PATH parsing more robustEelco Dolstra1-5/+32
2016-04-14 Support channel:<channel-name> URIsEelco Dolstra1-5/+14
For convenience, you can now say $ nix-env -f channel:nixos-16.03 -iA hello instead of $ nix-env -f https://nixos.org/channels/nixos-16.03/nixexprs.tar.xz -iA hello Similarly, $ nix-shell -I channel:nixpkgs-unstable -p hello $ nix-build channel:nixos-15.09 -A hello Abstracting over the NixOS/Nixpkgs channels location also allows us to use a more efficient transport (e.g. Git) in the future.
2016-04-14 Make the search path lazier with non-fatal errorsEelco Dolstra4-34/+69
Thus, -I / $NIX_PATH entries are now downloaded only when they are needed for evaluation. An error to download an entry is a non-fatal warning (just like non-existant paths). This does change the semantics of builtins.nixPath, which now returns the original, rather than resulting path. E.g., before we had [ { path = "/nix/store/hgm3yxf1lrrwa3z14zpqaj5p9vs0qklk-nixexprs.tar.xz"; prefix = "nixpkgs"; } ... ] but now [ { path = "https://nixos.org/channels/nixos-16.03/nixexprs.tar.xz"; prefix = "nixpkgs"; } ... ] Fixes #792.
2016-04-14 Set RLIMIT_CORE to 0, infinity in buildersEelco Dolstra1-0/+7
This prevents the builder from being affected by whatever the host system limits happen to be.
2016-04-14 Make primop registration pluggableEelco Dolstra4-3/+33
This way we don't have to put all primops in one giant file.
2016-04-14 Fix std::atomic_flag build failureEelco Dolstra1-0/+1
http://hydra.nixos.org/build/34453794
2016-04-11 Remove manifest supportEelco Dolstra7-775/+0
Manifests have been superseded by binary caches for years. This also gets rid of nix-pull, nix-generate-patches and bsdiff/bspatch.
2016-04-08 Remove failed build cachingEelco Dolstra12-200/+11
This feature was implemented for Hydra, but Hydra no longer uses it.