Théophane Hufschmitt
8cac451fce
Fix why-depends for CA derivations (again)
...
This has the same goal as b13fd4c58e81b2b2b0d72caa5ce80de861622610,but
achieves it in a different way in order to not break
`nix why-depends --derivation`.
2023-01-02 17:42:22 +01:00
Théophane Hufschmitt
105d74eb81
Revert "Fix why-depends for CA derivations"
...
This reverts commit b13fd4c58e
.
2023-01-02 15:44:04 +01:00
Valentin Gagarin
9cdf8ededb
remove redundant re-definition of store derivations
2023-01-02 13:37:59 +01:00
Théophane Hufschmitt
cfd6c7fc9b
Merge pull request #7485 from fricklerhandwerk/doc-store-derivation
...
define "store derivation"
2023-01-02 13:26:41 +01:00
Eelco Dolstra
c164d304f3
nix develop: Set personality
...
This makes 'nix develop' set the Linux personality in the same way
that the actual build does, allowing a command like 'nix develop
nix#devShells.i686-linux.default' on x86_64-linux to work correctly.
2022-12-23 16:33:55 +01:00
Valentin Gagarin
7797661a70
link "store derivation" to glossary definition
2022-12-21 11:42:50 +01:00
Valentin Gagarin
3a66d82e1d
update description of "store derivation" in installables section
...
a store derivation is not a store path itself, it has a store path.
2022-12-21 11:42:22 +01:00
Timothy DeHerrera
94cf0da7b2
fix(develop): make nix develop
drv recreatable
2022-12-19 13:16:06 -07:00
Eelco Dolstra
46b3c026fc
Merge pull request #7455 from rapenne-s/documentation_fix
...
Add anchors and links to definition
2022-12-13 17:26:52 +01:00
Solène Rapenne
09860c16ce
documentation: use sections instead of list items
2022-12-13 11:47:44 +01:00
John Ericson
32ae715db1
Fix typos in the docs
...
Thanks!
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-12-12 17:37:45 -05:00
John Ericson
dabb03b8d0
Merge remote-tracking branch 'upstream/master' into indexed-store-path-outputs
2022-12-12 17:36:02 -05:00
John Ericson
d8c1c24c78
Adjust docs
2022-12-12 17:32:24 -05:00
John Ericson
dc075dcdd0
Apply suggestions from code review
...
Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
2022-12-12 16:26:10 -05:00
John Ericson
1879c7c95e
Merge branch 'master' into indexed-store-path-outputs
2022-12-12 07:33:36 -05:00
Eelco Dolstra
703d863a48
Trivial changes from the lazy-trees branch
2022-12-07 14:06:34 +01:00
Eelco Dolstra
f1e1ba9fe0
Really fix 'nix store make-content-addressed --json'
...
https://hydra.nixos.org/log/mcgypcf9vj4n8vdmw7lj3l05c899v73w-nix-2.12.0pre20221201_16b03f0-x86_64-unknown-linux-musl.drv
2022-12-01 16:29:09 +01:00
Eelco Dolstra
0b092bd87f
nix store make-content-addressed: Fix JSON construction
...
Fixes
error: [json.exception.type_error.301] cannot create object from initializer list
in tests/fetchClosure.sh.
2022-11-30 13:46:33 +01:00
Eelco Dolstra
fbc53e97ed
Merge pull request #3600 from NixOS/auto-uid-allocation
...
Automatic UID allocation
2022-11-29 14:01:42 +01:00
Eelco Dolstra
dbf78a7ada
Merge pull request #7313 from yorickvP/nlohmann-everywhere
...
Replace src/libutil/json.cc with nlohmann
2022-11-28 15:03:48 +01:00
John Ericson
26534f141c
Merge branch 'master' into indexed-store-path-outputs
2022-11-25 08:14:32 -05:00
Théophane Hufschmitt
bc9692a6b7
Merge pull request #7337 from Radvendii/why-depends-ca
...
Fix why-depends for CA derivations
2022-11-23 20:16:14 +01:00
Taeer Bar-Yam
bd8571a5c3
add explanation and test
2022-11-23 12:06:47 -05:00
Taeer Bar-Yam
b13fd4c58e
Fix why-depends for CA derivations
...
why-depends assumed that we knew the output path of the second argument.
For CA derivations, we might not know until it's built. One way to solve
this would be to build the second installable to get the output path.
In this case we don't need to, though. If the first installable (A)
depends on the second (B), then getting the store path of A will
necessitate having the store path B. The contrapositive is, if the store
path of B is not known (i.e. it's a CA derivation which hasn't been
built), then A does not depend on B.
2022-11-23 11:39:50 -05:00
Eelco Dolstra
f0baa5c128
nix build --json: Include build statistics
...
Example:
# nix build -L --extra-experimental-features cgroups --impure --expr 'with import <nixpkgs> {}; runCommand "foo" {} "dd if=/dev/urandom bs=1M count=1024 | md5sum; mkdir $out"' --json
[
{
"cpuSystem": 1.911431,
"cpuUser": 1.214249,
"drvPath": "/nix/store/xzdqz67xba18hljhycp0hwfigzrs2z69-foo.drv",
"outputs": {
"out": "/nix/store/rh9mc9l2gkpq8kn2sgzndr6ll7ffjh6l-foo"
},
"startTime": 1669024076,
"stopTime": 1669024079
}
]
2022-11-21 12:06:01 +01:00
Eelco Dolstra
e7a5b76844
Rename derivedPathsWithHintsToJSON -> builtPathsToJSON
2022-11-21 11:56:20 +01:00
Eelco Dolstra
653b32a78f
Merge remote-tracking branch 'origin/master' into auto-uid-allocation
2022-11-21 11:33:23 +01:00
Eelco Dolstra
300753d594
nix build --json: Include build statistics
...
Example:
# nix build -L --extra-experimental-features cgroups --impure --expr 'with import <nixpkgs> {}; runCommand "foo" {} "dd if=/dev/urandom bs=1M count=1024 | md5sum; mkdir $out"' --json
[
{
"cpuSystem": 1.911431,
"cpuUser": 1.214249,
"drvPath": "/nix/store/xzdqz67xba18hljhycp0hwfigzrs2z69-foo.drv",
"outputs": {
"out": "/nix/store/rh9mc9l2gkpq8kn2sgzndr6ll7ffjh6l-foo"
},
"startTime": 1669024076,
"stopTime": 1669024079
}
]
2022-11-21 10:49:01 +01:00
Eelco Dolstra
f538ee4342
Rename derivedPathsWithHintsToJSON -> builtPathsToJSON
2022-11-21 09:38:08 +01:00
Yorick
09f00dd4d0
Replace src/libutil/json.cc with nlohmann json generation
2022-11-16 16:50:50 +01:00
Et7f3
efadeee8fd
build: use pkg-config for lowdown
2022-11-12 23:04:58 +01:00
Valentin Gagarin
f7ab93b068
manual: build action -> build task
...
after discussing this with multiple people, I'm convinced that "build
task" is more precise: a derivation is not an action, but inert until it
is built. also it's easier to pronounce.
proposal: use "build task" for the generic concept "description of how
to derive new files from the contents of existing files". then it will
be easier to distinguish what we mean by "derivation" (a specific data
structure and Nix language value type) and "store derivation" (a
serialisation of a derivation into a file in the Nix store).
2022-11-06 13:28:18 +01:00
Eelco Dolstra
0edba4cc1e
Merge pull request #7231 from jfroche/fix/savedArgv-access
...
Move savedArgv into libmain
2022-10-31 16:35:08 +01:00
John Ericson
13f2a6f38d
Merge branch 'master' into indexed-store-path-outputs
2022-10-28 23:22:18 +01:00
Jean-François Roche
cd86eeb693
Move savedArgv into libmain
...
`savedArgv` is not accessible by plugins when defined in main binary.
Moving it into one of the nix lib fix the problem.
2022-10-28 12:19:37 +02:00
Eelco Dolstra
b7e8a3bf4c
Merge pull request #7217 from NixOS/restore-nix-build-remote
...
Fix `nix __build-remote`
2022-10-27 13:33:51 +02:00
Théophane Hufschmitt
9bff7e8ee2
Fix nix __build-remote
...
Because of a wrong index, `nix __build-remote` wasn't working.
Fix the index to restore the command (and the build hook).
2022-10-26 11:53:46 +02:00
Yorick
aff6d10934
nix run: fix "'defaultApp.x86_64-linux' should have type 'derivation'"
2022-10-26 10:05:27 +02:00
Eelco Dolstra
95331cb9c9
Merge pull request #7183 from n8henrie/patch-1
...
Fix typo -- dashes not underscores
2022-10-19 11:21:52 +02:00
Eelco Dolstra
61f89e954a
Add command 'nix store path-from-hash-part'
...
This exposes the Store::queryPathFromHashPart() interface in the CLI.
2022-10-18 16:51:12 +02:00
Nathan Henrie
af9c9504ca
Fix typo -- dashes not underscores
2022-10-17 14:15:32 -06:00
Eelco Dolstra
eba610956b
Move some options into a misc category
...
This unclutters the per-command options a bit by moving out some
global options.
2022-10-12 15:09:17 +02:00
Ana Hobden
069409d167
Print common flags in --help
2022-10-07 09:07:22 -07:00
Théophane Hufschmitt
371013c08d
Merge pull request #7010 from edolstra/ignore-shell
...
nix develop: Ignore stdenv's $SHELL
2022-09-24 12:55:53 +02:00
John Ericson
60e23c8bae
Apply suggestions from code review
...
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
Co-authored-by: Rune K. Svendsen <runesvend@gmail.com>
2022-09-23 13:57:57 -04:00
John Ericson
a2a8cb10ac
Dodge "trusted" vs "trustworthy" by being explicit
...
Hopefully this is best!
2022-09-22 14:37:52 -04:00
John Ericson
752f967c0f
"valid signature" -> "trustworthy signature"
...
I just had a colleague get confused by the previous phrase for good
reason. "valid" sounds like an *objective* criterion, e.g. and *invalid
signature* would be one that would be trusted by no one, e.g. because it
misformatted or something.
What is actually going is that there might be a signature which is
perfectly valid to *someone else*, but not to the user, because they
don't trust the corresponding public key. This is a *subjective*
criterion, because it depends on the arbitrary and personal choice of
which public keys to trust.
I therefore think "trustworthy" is a better adjective to use. Whether
something is worthy of trust is clearly subjective, and then "trust"
within that word nicely evokes `trusted-public-keys` and friends.
2022-09-22 10:49:31 -04:00
Eelco Dolstra
d365cced4f
Trim option descriptions
...
This removes unintended blank lines in Markdown when the description
is a multiline string literal.
2022-09-13 16:58:32 +02:00
Valentin Gagarin
dceb4f9dbb
Merge pull request #6825 from rapenne-s/nix_shell_example
...
nix shell: document how to invoke multiple commands from the command …
2022-09-09 13:35:23 +02:00
Eelco Dolstra
27be54ca53
nix develop: Ignore stdenv's $SHELL
...
Stdenv sets this to a bash that doesn't have readline/completion
support, so running 'nix (develop|shell)' inside a 'nix develop' gives
you a crippled shell. So let's just ignore the derivation's $SHELL.
This could break interactive use of build phases that use $SHELL, but
they appear to be fairly rare.
2022-09-06 18:27:39 +02:00