aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-07-14Address feedback around printf & execGraham Christensen
2017-07-14Don't install a second nix after the initial installation, and the rsync ↵Graham Christensen
change fixes a bug hidden by the nix replacement where the store files were being owned by the installing user due to rsync's -a implying -og.
2017-07-14Clean up issues around uninstall directions, and only showGraham Christensen
relevant directions
2017-07-14Prompt for sudo before validating assumptions, and check ourselves for ↵Graham Christensen
root-owned files instead of making a scary warning.
2017-07-14multi-user install: move the profile in to the nix etc/profiles.d outputGraham Christensen
2017-07-14Switch to a fancy multi-user installer on DarwinGraham Christensen
2017-07-14Shellcheck the existing installerGraham Christensen
2017-07-14nix: Show help when no arguments are givenEelco Dolstra
Fixes #1464.
2017-07-14Tarball job: Include libseccomp on Linux onlyEelco Dolstra
2017-07-14Shut up a memory leak warningEelco Dolstra
2017-07-11replaceSymlink(): Handle the case where the temporary file already existsEelco Dolstra
Not really necessary anymore for #849, but still nice to have.
2017-07-11fetchTarball: Prevent concurrent downloads of the same fileEelco Dolstra
Fixes #849.
2017-07-10Merge pull request #1422 from nh2/fix-potential-hash-comparison-crashEelco Dolstra
Fix potential crash/wrong result two hashes of unequal length are compared
2017-07-10Merge branch 'man2' of git://github.com/robx/nixShea Levy
2017-07-10fix buggy nix-shell man pageRobert Vollmert
2017-07-10Merge pull request #1428 from rimmington/clearer-regex-space-errorEelco Dolstra
Clearer error message when regex exceeds space limit
2017-07-10Clearer error message when regex exceeds space limitRhys
2017-07-07man page (nix-shell): Fix grouping of -p optionRobert Vollmert
Not sure about the raw ellipsis.
2017-07-07man page (nix-prefetch-url): Add some missing optionsRobert Vollmert
2017-07-07man page (nix-instantiate): -E is optionalRobert Vollmert
2017-07-07man page (nix-instantiate): Add --json to synopsis, order variablesRobert Vollmert
2017-07-07man page (nix-instantiate): Remove non-existent nix-build argument -rRobert Vollmert
2017-07-07man pages: Consistently separate alternatives by /Robert Vollmert
2017-07-07man pages: Argument for --max-jobsRobert Vollmert
2017-07-07man pages: Grouping for option alternativesRobert Vollmert
2017-07-07glossary: Fix word orderRobert Vollmert
2017-07-07Merge pull request #1445 from matthewbauer/macos-skip-hardlinkEelco Dolstra
Don’t hardlink disallowed paths in OS X.
2017-07-07Merge pull request #1444 from robx/manEelco Dolstra
Fix nix-instantiate manpage indentation
2017-07-06Don’t hardlink disallowed paths in OS X.Matthew Bauer
Fixes #1443
2017-07-06Remove unused variable from test scriptRobert Vollmert
2017-07-06Fix nix-instantiate manpage indentationRobert Vollmert
The second command variant is now its own cmdsynopsis, which ensures it's not indented as was the case using sbrk.
2017-07-04Add X32 to the seccomp filterEelco Dolstra
Fixes #1432.
2017-07-04Sort substituters by priorityEelco Dolstra
Fixes #1438.
2017-07-04getDefaultSubstituters(): Simplify initialisationEelco Dolstra
As shlevy pointed out, static variables in C++11 have thread-safe initialisation.
2017-07-04Add allow-new-privileges optionEelco Dolstra
This allows builds to call setuid binaries. This was previously possible until we started using seccomp. Turns out that seccomp by default disallows processes from acquiring new privileges. Generally, any use of setuid binaries (except those created by the builder itself) is by definition impure, but some people were relying on this ability for certain tests. Example: $ nix build '(with import <nixpkgs> {}; runCommand "foo" {} "/run/wrappers/bin/ping -c 1 8.8.8.8; exit 1")' --no-allow-new-privileges builder for ‘/nix/store/j0nd8kv85hd6r4kxgnwzvr0k65ykf6fv-foo.drv’ failed with exit code 1; last 2 log lines: cannot raise the capability into the Ambient set : Operation not permitted $ nix build '(with import <nixpkgs> {}; runCommand "foo" {} "/run/wrappers/bin/ping -c 1 8.8.8.8; exit 1")' --allow-new-privileges builder for ‘/nix/store/j0nd8kv85hd6r4kxgnwzvr0k65ykf6fv-foo.drv’ failed with exit code 1; last 6 log lines: PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=46 time=15.2 ms Fixes #1429.
2017-07-04Fix handling of expression installables with a / in themEelco Dolstra
2017-07-04Support base-64 hashesEelco Dolstra
Also simplify the Hash API. Fixes #1437.
2017-07-04<nix/fetchurl.nix>: Support sha512 argumentEelco Dolstra
2017-07-03nix-shell: Respect --dry-runEelco Dolstra
Fixes #824.
2017-07-03Replace a few bool flags with enumsEelco Dolstra
Functions like copyClosure() had 3 bool arguments, which creates a severe risk of mixing up arguments. Also, implement copyClosure() using copyPaths().
2017-07-03processGraph(): Call getEdges in parallelEelco Dolstra
2017-06-30Merge pull request #1417 from corngood/cygwin-fixEelco Dolstra
Call SetDllDirectory("") after sqlite3 init on cygwin
2017-06-24Fix potential crash/wrong result two hashes of unequal length are comparedNiklas Hambüchen
2017-06-20Call SetDllDirectory("") after sqlite3 init on cygwinDavid McFarland
Cygwin sqlite3 is patched to call SetDllDirectory("/usr/bin") on init, which affects the current process and is inherited by child processes. It causes DLLs to be loaded from /usr/bin/ before $PATH, which breaks all sorts of things. A typical failures would be header/lib version mismatches (e.g. openssl when running checkPhase on openssh). We'll just set it back to the default value. Note that this is a problem with the cygwin version of sqlite3 (currently 3.18.0). nixpkgs doesn't have the problematic patch.
2017-06-20Restore thunks on any exceptionEelco Dolstra
There's no reason to restrict this to Error exceptions. This shouldn't matter to #1407 since the repl doesn't catch non-Error exceptions anyway, but you never know...
2017-06-19Let hydra choose an alternate list of systemsShea Levy
2017-06-19Disable use of virtual hosting in aws-sdk-cppEelco Dolstra
Recently aws-sdk-cpp quietly switched to using S3 virtual host URIs (https://github.com/aws/aws-sdk-cpp/commit/69d9c53882), i.e. it sends requests to http://<bucket>.<region>.s3.amazonaws.com rather than http://<region>.s3.amazonaws.com/<bucket>. However this interacts badly with curl connection reuse. For example, if we do the following: 1) Check whether a bucket exists using GetBucketLocation. 2) If it doesn't, create it using CreateBucket. 3) Do operations on the bucket. then 3) will fail for a minute or so with a NoSuchBucket exception, presumably because the server being hit is a fallback for cases when buckets don't exist. Disabling the use of virtual hosts ensures that 3) succeeds immediately. (I don't know what S3's consistency guarantees are for bucket creation, but in practice buckets appear to be available immediately.)
2017-06-19Support creating S3 caches in other regions than us-east-1Eelco Dolstra
2017-06-19Handle S3Errors::RESOURCE_NOT_FOUND from aws-sdk-cppEelco Dolstra
This is returned by recent versions. Also handle NO_SUCH_KEY even though the library doesn't actually return that at the moment.
2017-06-19Suppress "will retry in N ms" for non-retriable errorsEelco Dolstra
Newer versions of aws-sdk-cpp call CalculateDelayBeforeNextRetry() even for non-retriable errors (like NoSuchKey) whih causes log spam in hydra-queue-runner.