about summary refs log tree commit diff
path: root/tests/local.mk
AgeCommit message (Collapse)AuthorFilesLines
2018-01-19 Add a test for --check / --repeatEelco Dolstra1-1/+2
2018-01-16 Add pure evaluation modeEelco Dolstra1-1/+2
In this mode, the following restrictions apply: * The builtins currentTime, currentSystem and storePath throw an error. * $NIX_PATH and -I are ignored. * fetchGit and fetchMercurial require a revision hash. * fetchurl and fetchTarball require a sha256 attribute. * No file system access is allowed outside of the paths returned by fetch{Git,Mercurial,url,Tarball}. Thus 'nix build -f ./foo.nix' is not allowed. Thus, the evaluation result is completely reproducible from the command line arguments. E.g. nix build --pure-eval '( let nix = fetchGit { url = https://github.com/NixOS/nixpkgs.git; rev = "9c927de4b179a6dd210dd88d34bda8af4b575680"; }; nixpkgs = fetchGit { url = https://github.com/NixOS/nixpkgs.git; ref = "release-17.09"; rev = "66b4de79e3841530e6d9c6baf98702aa1f7124e4"; }; in (import (nix + "/release.nix") { inherit nix nixpkgs; }).build.x86_64-linux )' The goal is to enable completely reproducible and traceable evaluation. For example, a NixOS configuration could be fully described by a single Git commit hash. 'nixos-rebuild' would do something like nix build --pure-eval '( (import (fetchGit { url = file:///my-nixos-config; rev = "..."; })).system ') where the Git repository /my-nixos-config would use further fetchGit calls or Git externals to fetch Nixpkgs and whatever other dependencies it has. Either way, the commit hash would uniquely identify the NixOS configuration and allow it to reproduced.
2017-12-30 use libbrotli directly when availableWill Dietz1-1/+2
* Look for both 'brotli' and 'bro' as external command, since upstream has renamed it in newer versions. If neither are found, current runtime behavior is preserved: try to find 'bro' on PATH. * Limit amount handed to BrotliEncoderCompressStream to ensure interrupts are processed in a timely manner. Testing shows negligible performance impact. (Other compression sinks don't seem to require this)
2017-11-20 Add tests for "nix run"Eelco Dolstra1-1/+2
2017-11-14 Add tests for "nix verify", "nix sign-paths" etc.Eelco Dolstra1-1/+2
2017-11-14 Rename tests/nar-index -> tests/nar-accessEelco Dolstra1-1/+1
2017-11-03 fetchGit: Add a testEelco Dolstra1-0/+1
2017-11-01 Add fetchMercurial primopEelco Dolstra1-1/+2
E.g. $ nix eval '(fetchMercurial https://www.mercurial-scm.org/repo/hello)' { branch = "default"; outPath = "/nix/store/alvb9y1kfz42bjishqmyy3pphnrh1pfa-source"; rev = "82e55d328c8ca4ee16520036c0aaace03a5beb65"; revCount = 1; shortRev = "82e55d328c8c"; } $ nix eval '(fetchMercurial { url = https://www.mercurial-scm.org/repo/hello; rev = "0a04b987be5ae354b710cefeba0e2d9de7ad41a9"; })' { branch = "default"; outPath = "/nix/store/alvb9y1kfz42bjishqmyy3pphnrh1pfa-source"; rev = "0a04b987be5ae354b710cefeba0e2d9de7ad41a9"; revCount = 0; shortRev = "0a04b987be5a"; } $ nix eval '(fetchMercurial /tmp/unclean-hg-tree)' { branch = "default"; outPath = "/nix/store/cm750cdw1x8wfpm3jq7mz09r30l9r024-source"; rev = "0000000000000000000000000000000000000000"; revCount = 0; shortRev = "000000000000"; }
2017-10-25 Pass lists/attrsets to bash as (associative) arraysEelco Dolstra1-1/+2
2017-10-23 Pass all settings to build-remoteEelco Dolstra1-1/+1
This ensures that command line flags such as --builders get passed correctly.
2017-05-15 nar-archive.cc: add tests for the nar indexBenno Fünfstück1-1/+2
2017-05-02 build-remote: Add a basic testEelco Dolstra1-1/+2
This only runs on Linux because it requires a diverted store (which uses mount/user namespaces).
2017-05-02 Add a test for diverted storesEelco Dolstra1-1/+2
2017-01-03 tests: Add simple tests for nix-shellTuomas Tynkkynen1-1/+1
nix-shell -A, -p and -i are lightly tested.
2016-08-17 Add a mechanism for derivation attributes to reference the derivation's outputsEelco Dolstra1-1/+2
For example, you can now say: configureFlags = "--prefix=${placeholder "out"} --includedir=${placeholder "dev"}"; The strings returned by the ‘placeholder’ builtin are replaced at build time by the actual store paths corresponding to the specified outputs. Previously, you had to work around the inability to self-reference by doing stuff like: preConfigure = '' configureFlags+=" --prefix $out --includedir=$dev" ''; or rely on ad-hoc variable interpolation semantics in Autoconf or Make (e.g. --prefix=\$(out)), which doesn't always work.
2016-08-10 Nuke nix-push.Shea Levy1-1/+1
Rarely used, nix copy replaces it.
2016-08-10 Remove nix-install-package.Shea Levy1-1/+1
Refs #831
2016-04-29 Eliminate the substituter mechanismEelco Dolstra1-2/+1
Substitution is now simply a Store -> Store copy operation, most typically from BinaryCacheStore to LocalStore.
2016-04-14 Add tests for restricted eval modeEelco Dolstra1-1/+1
2016-04-11 Remove manifest supportEelco Dolstra1-2/+2
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 Dolstra1-1/+1
This feature was implemented for Hydra, but Hydra no longer uses it.
2016-02-01 Remove tests/lexer.shEelco Dolstra1-1/+1
"tests/lang.sh" can handle this.
2016-01-20 Revert "Revert "next try for "don't abort when given unmatched '}' with ↵Eelco Dolstra1-1/+1
'start-condition stack underflow'. This fixes #751""" This reverts commit b669d3d2e83d3c50238751b57cff3ed0ca39bc8a.
2016-01-20 Revert "next try for "don't abort when given unmatched '}' with ↵Eelco Dolstra1-1/+1
'start-condition stack underflow'. This fixes #751"" This reverts commit ed23c8568e10d15196bb4ff2b79fc14191d28109. Let's merge this *after* the 1.11.1 release.
2016-01-19 next try for "don't abort when given unmatched '}' with 'start-condition ↵Fabian Schmitthenner1-1/+1
stack underflow'. This fixes #751" This reverts commit 8120b6fb8a4924f8ae717bba9bbda4a2f89e2141 and fixes the regression introduced in 8d22b26448a091c76ab972c0b0603daac5e255e4.
2015-06-01 Add tarball testsEelco Dolstra1-1/+1
2015-02-17 Allow passing attributes via files instead of environment variablesEelco Dolstra1-1/+1
Closes #473.
2014-08-28 Introduce allowedRequisites featureGergely Risko1-1/+2
2014-07-16 Handle case collisions on case-insensitive systemsEelco Dolstra1-1/+1
When running NixOps under Mac OS X, we need to be able to import store paths built on Linux into the local Nix store. However, HFS+ is usually case-insensitive, so if there are directories with file names that differ only in case, then importing will fail. The solution is to add a suffix ("~nix~case~hack~<integer>") to colliding files. For instance, if we have a directory containing xt_CONNMARK.h and xt_connmark.h, then the latter will be renamed to "xt_connmark.h~nix~case~hack~1". If a store path is dumped as a NAR, the suffixes are removed. Thus, importing and exporting via a case-insensitive Nix store is round-tripping. So when NixOps calls nix-copy-closure to copy the path to a Linux machine, you get the original file names back. Closes #119.
2014-05-22 Disable parallel.sh testEelco Dolstra1-1/+2
It breaks randomly: http://hydra.nixos.org/build/11152871
2014-02-26 Add a test for nix-store --dump-db / --load-dbEelco Dolstra1-1/+1
2014-02-17 Add a test for repairing pathsEelco Dolstra1-2/+2
2014-02-01 Update Makefile variable namesEelco Dolstra1-3/+3
2014-01-30 Rename Makefile -> local.mkEelco Dolstra1-0/+21