about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2016-02-24 Move BinaryCacheStore / LocalBinaryCacheStore from HydraEelco Dolstra7-5/+658
So you can now do: $ NIX_REMOTE=file:///tmp/binary-cache nix-store -qR /nix/store/...
2016-02-24 Merge pull request #816 from tsion/incomplete-parseEelco Dolstra3-1/+11
Throw a specific error for incomplete parse errors.
2016-02-24 std::condition_variable_any -> std::condition_variableEelco Dolstra2-11/+11
The latter is supposed to be more efficient.
2016-02-24 C++ templates are just a glorified macro facilityEelco Dolstra1-2/+2
2016-02-24 Remove bad daemon connections from the poolEelco Dolstra4-14/+55
This is necessary for long-running processes like hydra-queue-runner: if a nix-daemon worker is killed, we need to stop reusing that connection.
2016-02-24 Throw a specific error for incomplete parse errors.Scott Olson3-1/+11
`nix-repl` will use this for deciding whether to keep waiting for input or error out right away.
2016-02-23 Pool<T>: Allow a maximum pool sizeEelco Dolstra4-33/+74
2016-02-23 RemoteStore: Make thread-safeEelco Dolstra4-235/+414
This allows a RemoteStore object to be used safely from multiple threads concurrently. It will make multiple daemon connections if necessary. Note: pool.hh and sync.hh have been copied from the Hydra source tree.
2016-02-23 Move ref<t> into a separate headerEelco Dolstra2-59/+69
2016-02-22 DohEelco Dolstra1-1/+1
2016-02-22 Make OpenSSL usage thread-safeEelco Dolstra3-4/+26
OpenSSL can randomly segfault unless we register a callback function to do locking. https://www.openssl.org/docs/manmaster/crypto/threads.html
2016-02-22 curl: Set CURLOPT_NOSIGNALEelco Dolstra1-0/+2
Otherwise using curl is not safe in multi-threaded applications because it installs a SIGALRM handler.
2016-02-22 Merge branch 'docs' of git://github.com/joelmo/nixShea Levy1-0/+6
2016-02-22 Merge branch 'patch-1' of git://github.com/dckc/nixShea Levy1-3/+4
2016-02-19 Merge branch 'master' of git://github.com/stepcut/nixShea Levy1-1/+1
2016-02-19 JSONObject: Support floats and booleansEelco Dolstra1-1/+12
2016-02-18 context for introducing runtime dependenciesDan Connolly1-3/+4
The first occurrence of "runtime dependencies" wasn't related to the surrounding narrative.
2016-02-18 Document IN_NIX_SHELL variableJoel Moberg1-0/+6
2016-02-17 Drop all distros that are not down with C++11Eelco Dolstra1-10/+2
2016-02-17 Fix build without sodiumEelco Dolstra2-5/+11
http://hydra.nixos.org/build/32085949
2016-02-16 Add C++ functions for .narinfo processing / signingEelco Dolstra7-17/+304
This is currently only used by the Hydra queue runner rework, but like eff5021eaa6dc69f65ea1a8abe8f3ab11ef5eb0a it presumably will be useful for the C++ rewrite of nix-push and download-from-binary-cache. (@shlevy)
2016-02-16 Rename ValidPathInfo::hash -> narHash for consistencyEelco Dolstra8-32/+32
2016-02-16 nix-profile.sh.in: find ca-bundle.pem on openSUSE Tumbleweed machinesPeter Simons1-0/+2
2016-02-15 Add xz compression functionEelco Dolstra2-0/+42
This is used by the Hydra queue runner, but since it may also be useful for the C++ rewrite of nix-push, I'm putting it here.
2016-02-15 decompressXZ: Ensure that lzma_end() is calledEelco Dolstra1-12/+21
Otherwise we might leak memory.
2016-02-15 Fix nix-copy-closureEelco Dolstra1-0/+1
http://hydra.nixos.org/build/32005971
2016-02-15 Expose the export magic value and move LocalStore::queryReferences to StoreEelco Dolstra4-22/+19
2016-02-15 Fix broken number parsing in fromJSONEelco Dolstra2-5/+4
The call to tmp_number.append had its arguments mixed up. Also, JSON does not allow a trailing "," after array/object members.
2016-02-15 Fix test broken by #762Eelco Dolstra1-1/+1
2016-02-15 Add function to extract hash part of a store pathEelco Dolstra3-2/+15
2016-02-13 Merge branch 'patch-1' of https://github.com/tsion/nixShea Levy1-1/+1
Typo fix
2016-02-13 Fix typo in nix-shell command reference.Scott Olson1-1/+1
2016-02-12 nix-profile.sh.in: quote use of $HOME in shell argumentsPeter Simons1-2/+2
All other places in the script do this already, so let's be consistent.
2016-02-12 Merge pull request #762 from ctheune/ctheune-floatsEelco Dolstra27-37/+231
Implement floats
2016-02-11 Move addPermRoot into StoreEelco Dolstra5-16/+15
2016-02-11 ref<T>: Add cast operatorEelco Dolstra2-15/+8
2016-02-10 Check shell profile is writeable before modifyingAlex Cruice1-1/+1
The `set -e` at the top of the script causes the installation to fail to complete if the shell profile is not writeable. Checking file existence only is not enough.
2016-02-04 More of the sameEelco Dolstra5-13/+13
2016-02-04 StoreAPI -> StoreEelco Dolstra24-51/+51
Calling a class an API is a bit redundant...
2016-02-04 Eliminate the "store" global variableEelco Dolstra36-450/+503
Also, move a few free-standing functions into StoreAPI and Derivation. Also, introduce a non-nullable smart pointer, ref<T>, which is just a wrapper around std::shared_ptr ensuring that the pointer is never null. (For reference-counted values, this is better than passing a "T&", because the latter doesn't maintain the refcount. Usually, the caller will have a shared_ptr keeping the value alive, but that's not always the case, e.g., when passing a reference to a std::thread via std::bind.)
2016-02-01 Remove tests/lexer.shEelco Dolstra3-4/+1
"tests/lang.sh" can handle this.
2016-01-31 Add build mode to compute fixed-output derivation hashesEelco Dolstra3-7/+34
For example, $ nix-build --hash -A nix-repl.src will build the fixed-output derivation nix-repl.src (a fetchFromGitHub call), but instead of *verifying* the hash given in the Nix expression, it prints out the resulting hash, and then moves the result to its content-addressed location in the Nix store. E.g build produced path ‘/nix/store/504a4k6zi69dq0yjc0bm12pa65bccxam-nix-repl-8a2f5f0607540ffe56b56d52db544373e1efb980-src’ with sha256 hash ‘0cjablz01i0g9smnavhf86imwx1f9mnh5flax75i615ml71gsr88’ The goal of this is to make all nix-prefetch-* scripts unnecessary: we can just let Nix run the real thing (i.e., the corresponding fetch* derivation). Another example: $ nix-build --hash -E 'with import <nixpkgs> {}; fetchgit { url = "https://github.com/NixOS/nix.git"; sha256 = "ffffffffffffffffffffffffffffffffffffffffffffffffffff"; }' ... git revision is 9e7c1a4bbdbe6129dd9dc385776612c307d3d1bb ... build produced path ‘/nix/store/gmsnh9i7x4mb7pyd2ns7n3c9l90jfsi1-nix’ with sha256 hash ‘1188xb621diw89n25rifqg9lxnzpz7nj5bfh4i1y3dnis0dmc0zp’ (Having to specify a fake sha256 hash is a bit annoying...)
2016-01-31 Use the daemon when we don't have write access to the Nix databaseEelco Dolstra7-13/+57
2016-01-28 UntabifyEelco Dolstra1-16/+16
2016-01-28 UntabifyEelco Dolstra1-63/+63
2016-01-28 printMissing(): Propagate store argumentEelco Dolstra3-5/+5
2016-01-28 Add .dir-locals.el for EmacsEelco Dolstra1-0/+16
2016-01-27 Define HashType's size to allow it to be forward-declaredEelco Dolstra1-1/+1
2016-01-27 TriviaEelco Dolstra1-1/+2
2016-01-27 Make hashLength32() a method of HashEelco Dolstra2-12/+15