Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
This makes the statically linked nix binary just work, without needing
any additional files.
|
|
|
|
For each known realisation, store:
- its output
- its output path
This comes with a set of needed changes:
- New `realisations` module declaring the types needed for describing
these mappings
- New `Store::registerDrvOutput` method registering all the needed informations
about a derivation output (also replaces `LocalStore::linkDeriverToPath`)
- new `Store::queryRealisation` method to retrieve the informations for a
derivations
This introcudes some redundancy on the remote-store side between
`wopQueryDerivationOutputMap` and `wopQueryRealisation`.
However we might need to keep both (regardless of backwards compat)
because we sometimes need to get some infos for all the outputs of a
derivation (where `wopQueryDerivationOutputMap` is handy), but all the
stores can't implement it − because listing all the outputs of a
derivation isn't really possible for binary caches where the server
doesn't allow to list a directory.
|
|
Fix the `nix` command with CA derivations
|
|
Prevents a crash because most `nix` subcommands assumed that derivations
know their output path, which isn't the case for CA derivations
|
|
Otherwise https://cache.nixos.org is chosen by default, causing the OSX
testsuite to hang inside the sandbox.
(In a way, this is probably rugging an actual bug under the carpet as
Nix should be able to gracefully timeout in such a case, but that's
beyond mac OSX-fu)
|
|
Regression test for #4245
|
|
This makes it consistent with 'nix hash <path|file>'.
|
|
|
|
|
|
From the 'nix' UX review.
|
|
Properly test the early cutoff for CA derivations
|
|
Build things with a different seed each time to make sure that it works
despite the different drvs
|
|
This is useful for generating the nix manpages, but it may have other
applications (like generating configuration files without a Nix store).
|
|
Allow fixed-output derivations to depend on (floating) content-addressed ones
|
|
Fix an overlook of https://github.com/NixOS/nix/pull/4056
|
|
|
|
|
|
Without setting HGPLAIN, the user's environment leaks into
hg invocations, which means that the output may not be in the
expected format.
HGPLAIN is the Mercurial-recommended solution for this in that
it's intended for uses by scripts and programs which are looking
to parse Mercurial's output in a consistent manner.
|
|
This was causing a failure on macOS.
https://hydra.nixos.org/build/130354318
|
|
Print built derivations as json for build
|
|
Fixes #4235.
|
|
|
|
|
|
|
|
Co-authored-by: Théophane Hufschmitt <regnat@users.noreply.github.com>
|
|
|
|
Creates test coverage for #4210 and 7cf874c17d466d5cffdb0eb6215fcfe8930ed757
|
|
Allow non-CA derivations to depend on CA ones
|
|
Although the non-resolved derivation will never get a cache-hit (it
doesn't have an output path to query the cache for anyways), we might
get one on the resolved derivation.
|
|
|
|
|
|
|
|
|
|
Having vm-test-run-unnamed for all the test derivation doesn't look very
nice, so in order to better distinguish them from their store path,
let's actually give them proper names.
Signed-off-by: aszlig <aszlig@nix.build>
|
|
Perl-based tests are deprecated since NixOS 20.03 and subsequently got
removed in NixOS 20.09, which effectively means that tests are going to
fail as soon as we build it with NixOS 20.09 or anything newer.
I've put "# fmt: off" at the start of every testScript, because
formatting with Black really messes up indentation and I don't think it
really adds anything in value or readability for inlined Python scripts.
Signed-off-by: aszlig <aszlig@nix.build>
|
|
CA derivations that depend on other CA derivations
|
|
|
|
tar(1) on FreeBSD does not use standard output or input when the -f flag
is not provided. Instead, it defaults to /dev/sa0 on FreeBSD.
Make this tar invocation a bit more robust and explicitly tell tar(1) to
use standard output.
This is one of the issues discovered while porting Nix to FreeBSD. It has
been tested and committed locally to FreeBSD ports:
https://svnweb.freebsd.org/ports/head/sysutils/nix/Makefile?revision=550026&view=markup#l108
|
|
|
|
|
|
Remove storetype delegate reg store -- contains #3736
|
|
Fix garbage collection of CA derivations
|
|
Fix #4026
|
|
This isn't used anywhere except in the configure script of the Perl
bindings. I've changed the latter to use the C++ API's Settings object
at runtime.
|
|
remove-storetype-delegate-regStore
|
|
|