Age | Commit message (Collapse) | Author |
|
|
|
Improve Rosetta detection
|
|
libmain: Make stack overflow handler configurable
|
|
|
|
|
|
We haven't parsed the '-v' command line flags yet when this code executes,
so we can't actually get debug output here.
|
|
|
|
Fix error display if execve() in the builder fails
|
|
After we've send "\2\n" to the parent, we can't send a serialized
exception anymore. It will show up garbled like
$ nix-build --store /tmp/nix --expr 'derivation { name = "foo"; system = "x86_64-linux"; builder = "/foo/bar"; }'
this derivation will be built:
/nix/store/xmdip0z5x1zqpp6gnxld3vqng7zbpapp-foo.drv
building '/nix/store/xmdip0z5x1zqpp6gnxld3vqng7zbpapp-foo.drv'...
ErrorErrorEexecuting '/foo/bar': No such file or directory
error: builder for '/nix/store/xmdip0z5x1zqpp6gnxld3vqng7zbpapp-foo.drv' failed with exit code 1
|
|
Turns out that one of those *.plist files can exist even if Rosetta is
not installed. So let's just try to run an x86_64-darwin binary
directly.
|
|
|
|
Make warning about chroot store location more accurate
|
|
While trying to use an alternate directory for my Nix installation, I
noticed that nix's output didn't reflect the updated state
directory. This patch corrects that and now prints the warning before
attempting to create the directory (if the directory creation fails,
it wouldn't have been obvious why nix was attempting to create the
directory in the first place).
With this patch, I now get the following warning:
warning: '/home/deck/.var/app/org.nixos.nix/var/nix' does not
exist, so Nix will use '/home/deck/.local/share/nix/root' as a
chroot store
|
|
Move some options into a misc category
|
|
This unclutters the per-command options a bit by moving out some
global options.
|
|
|
|
parseDrvName: remove doc/impl discrepancy, add test covering the gap
|
|
This commit adds a test covering the discrepancy between parseDrvName's
implementation and documentation (the discrepancy was eliminated in the previous
commit).
|
|
The documentation for `parseDrvName` does not agree with the implementation when
the derivation name contains a dash which is followed by something that is
neither a letter nor a digit. This commit corrects the documentation to agree
with the implementation.
|
|
|
|
|
|
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
|
|
amjoseph-nixpkgs/pr/doc/explain-local-remote-binary-substituter
|
|
refactor rendering command documentation to markdown
|
|
archive: check close errors when extracting nars
|
|
nix-copy-closure: improve wording
|
|
|
|
|
|
this allows readers to enter the code starting with what is visible from
the outside, instead of working themselves up from purely technical details.
|
|
|
|
it was quite a pain to manipulate strings just with `builtins`
|
|
idea:
- make document structure visible, like in a template
- order functions by descending abstraction
- avoid nested let bindings
|
|
|
|
tests/build-dry: re-enable some test
|
|
|
|
|
|
Use exit instead of return in /etc/profile.d/nix-daemon.fish
|
|
Older versions of Fish (such as those bundled with Ubuntu LTS 22.04) do
not support return outside of functions. We need to use the equivalent
exit instead.
|
|
nix-build: remove unused --add-root arg
|
|
Fixes #1982
|
|
Add an installer test
|
|
|
|
|
|
Mention `--accept-flake-config` in the related warning
|
|
src/libexpr/primops.cc: correct definition for intersectAttrs
|
|
The current definition of `intersectAttrs` is incorrect:
> Return a set consisting of the attributes in the set e2 that also exist in the
> set e1.
Recall that (Nix manual, section 5.1):
> An attribute set is a collection of name-value-pairs (called attributes)
According to the existing description of `intersectAttrs`, the following should
evaluate to the empty set, since no key-value *pair* (i.e. attribute) exists in
both sets:
```
builtins.intersectAttrs { x=3; } {x="foo";}
```
And yet:
```
nix-repl> builtins.intersectAttrs { x=3; } {x="foo";}
{ x = "foo"; }
```
Clearly the intent here was for the *names* of the resulting attribute set to be
the intersection of the *names* of the two arguments, and for the values of the
resulting attribute set to be the values from the second argument.
This commit corrects the definition, making it match the implementation and intent.
|
|
nix develop: Ignore stdenv's $SHELL
|
|
dockerImage: fix root shell
|
|
"valid signature" -> "signature by a trusted key"
|
|
Allow pass max-silent-time and build-poll-interval to daemon untrusted
|