aboutsummaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
2020-01-21Convert fetchMercurial to a input typeEelco Dolstra
This enables Mercurial flakes. It also fixes a bug in pure mode where you could use a branch/tag name rather than a revision.
2020-01-21Pluggable fetchersEelco Dolstra
Flakes are now fetched using an extensible mechanism. Also lots of other flake cleanups.
2020-01-21Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2020-01-21Fix derivation computation with __structuredAttrs and multiple outputsEelco Dolstra
Fixes error: derivation '/nix/store/klivma7r7h5lndb99f7xxmlh5whyayvg-zlib-1.2.11.drv' has incorrect output '/nix/store/fv98nnx5ykgbq8sqabilkgkbc4169q05-zlib-1.2.11-dev', should be '/nix/store/adm7pilzlj3z5k249s8b4wv3scprhzi1-zlib-1.2.11-dev'
2020-01-07Add support for \u escape in fromJSONNikola Knezevic
As fromTOML supports \u and \U escapes, bring fromJSON on par. As JSON defaults to UTF-8 encoding (every JSON parser must support UTF-8), this change parses the `\u hex hex hex hex` sequence (\u followed by 4 hexadecimal digits) into an UTF-8 representation. Add a test to verify correct parsing, using all escape sequences from json.org.
2020-01-06Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2020-01-02passAsFile: leave out the hash prefixedef
Having a colon in the path may cause issues, and having the hash function indicated isn't actually necessary. We now verify the path format in the tests to prevent regressions.
2019-12-18Fix tests.githubFlakesEelco Dolstra
2019-12-18Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2019-12-16Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2019-12-16nix-store -r: Handle symlinks to store pathsEelco Dolstra
Fixes #3270.
2019-12-13Validate tarball componentsEelco Dolstra
2019-12-13Simplify tarball testEelco Dolstra
2019-12-13Initial gzip supportTom Bereknyei
Closes #3256
2019-12-11Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2019-12-10Add base32 encoder/decoderEelco Dolstra
2019-12-04Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2019-12-03Disable recursive Nix test on macOSEelco Dolstra
https://hydra.nixos.org/build/107724274
2019-12-02Merge remote-tracking branch 'origin/recursive-nix'Eelco Dolstra
2019-11-27nix: Add --expr flagEelco Dolstra
This replaces the '(...)' installable syntax, which is not very discoverable. The downside is that you can't have multiple expressions or mix expressions and other installables.
2019-11-26Remove most of <nix/config.nix>Eelco Dolstra
This is no longer needed.
2019-11-26Merge pull request #3238 from puckipedia/attrset-overrides-dynamicEelco Dolstra
Ensure enough space in attrset bindings
2019-11-26Disallow empty store path namesEelco Dolstra
Fixes #3239.
2019-11-25Add testcase for attrset using __overrides and dynamic attrsPuck Meerburg
2019-11-20Fix 'nix flake init' testEelco Dolstra
2019-11-08Replace $TMPDIR with $TEST_ROOT in tests/fetchurl.shEric Culp
$TMPDIR isn't necessarily set and would cause this test to fail.
2019-11-06Fix GitHub testEelco Dolstra
2019-11-06Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2019-11-06Enable recursive Nix using a featureEelco Dolstra
Derivations that want to use recursion should now set requiredSystemFeatures = [ "recursive-nix" ]; to make the daemon socket appear. Also, Nix should be configured with "experimental-features = recursive-nix".
2019-11-06Add a test for recursive NixEelco Dolstra
2019-11-05Fix VM testsEelco Dolstra
2019-11-04Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2019-10-27Merge branch 'issue-3147-inNixShell-arg' of https://github.com/hercules-ci/nixEelco Dolstra
2019-10-27Add inNixShell = true to nix-shell auto-callRobert Hensing
This is an alternative to the IN_NIX_SHELL environment variable, allowing the expression to adapt itself to nix-shell without triggering those adaptations when used as a dependency of another shell. Closes #3147
2019-10-27Merge branch 'tojson-tostring-fix' of https://github.com/mayflower/nixEelco Dolstra
2019-10-27builtins.toJSON: fix __toString usageRobin Gloster
2019-10-21Add experimental-features settingEelco Dolstra
Experimental features are now opt-in. There is currently one experimental feature: "nix-command" (which enables the "nix" command. This will allow us to merge experimental features more quickly, without committing to supporting them indefinitely. Typical usage: $ nix build --experimental-features 'nix-command flakes' nixpkgs#hello (cherry picked from commit 8e478c234100cf03ea1b777d4bd42a9be7be9e8c, without the "flakes" feature)
2019-10-16Add experimental-features settingEelco Dolstra
Experimental features are now opt-in. There are currently two experimental features: "nix-command" (which enables the "nix" command), and "flakes" (which enables support for flakes). This will allow us to merge experimental features more quickly, without committing to supporting them indefinitely. Typical usage: $ nix build --experimental-features 'nix-command flakes' nixpkgs#hello
2019-10-16Fix repeated fetchGit.sh testEelco Dolstra
2019-10-15Fix 'nix flake init'Eelco Dolstra
2019-10-15Support non-x86_64-linux system types in flakesEelco Dolstra
A command like $ nix run nixpkgs#hello will now build the attribute 'packages.${system}.hello' rather than 'packages.hello'. Note that this does mean that the flake needs to export an attribute for every system type it supports, and you can't build on unsupported systems. So 'packages' typically looks like this: packages = nixpkgs.lib.genAttrs ["x86_64-linux" "i686-linux"] (system: { hello = ...; }); The 'checks', 'defaultPackage', 'devShell', 'apps' and 'defaultApp' outputs similarly are now attrsets that map system types to derivations/apps. 'nix flake check' checks that the derivations for all platforms evaluate correctly, but only builds the derivations in 'checks.${system}'. Fixes #2861. (That issue also talks about access to ~/.config/nixpkgs and --arg, but I think it's reasonable to say that flakes shouldn't support those.) The alternative to attribute selection is to pass the system type as an argument to the flake's 'outputs' function, e.g. 'outputs = { self, nixpkgs, system }: ...'. However, that approach would be at odds with hermetic evaluation and make it impossible to enumerate the packages provided by a flake.
2019-10-10Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2019-10-09nix-env: Create ~/.nix-profile automaticallyEelco Dolstra
2019-10-09nix-profile.sh: Don't create .nix-channelsEelco Dolstra
This is already done by the installer, so no need to do it again.
2019-10-09Remove world-writability from per-user directoriesEelco Dolstra
'nix-daemon' now creates subdirectories for users when they first connect. Fixes #509 (CVE-2019-17365). Should also fix #3127.
2019-10-08uri -> url for consistencyEelco Dolstra
2019-10-04Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2019-10-04Merge release.nix, shell.nix and release-common.nix into flake.nixEelco Dolstra
Also provide a Nixpkgs overlay, memoize Nixpkgs evaluation and fit the githubFlakes test.
2019-09-20Use '#' instead of ':' to separate flakeref and attrpathEelco Dolstra
This is less ambiguous.
2019-09-18function-trace: always show the tracezimbatm
If the user invokes nix with --trace-function-calls it means that they want to see the trace.