about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2019-09-03 Support allowSubstitutes attribute in structured attribute derivationsEelco Dolstra6-10/+11
Hopefully fixes #3081 (didn't test).
2019-09-03 gc-auto.sh: Add some more instrumentationEelco Dolstra1-4/+6
2019-09-03 Add some noexceptsEelco Dolstra11-18/+19
This is to assert that callback functions should never throw (since the context in which they're called may not be able to handle the exception).
2019-09-03 Ensure that Callback is called only onceEelco Dolstra5-17/+36
Also, make Callback movable but uncopyable.
2019-09-03 Downloader: Remove a possible double call to CallbackEelco Dolstra1-8/+2
2019-09-03 Merge pull request #3066 from matthewbauer/wait4pathEelco Dolstra1-2/+6
Use wait4path on org.nixos.nix-daemon.plist
2019-09-02 Fix launchd program argsMatthew Bauer1-2/+1
launchd has some weird syntx. Apparently the program needs to be in the ProgramArguments, as Program appears to be ignored.
2019-08-29 Merge pull request #3069 from matthewbauer/max-nameEelco Dolstra1-0/+4
Set maximum name length in Nix
2019-08-29 Merge pull request #3048 from toonn/nix-env_docEelco Dolstra1-4/+7
Fix nix-env documentation for --delete-generations
2019-08-29 Don't rely on st_blocksEelco Dolstra3-7/+6
It doesn't seem very reliable on ZFS.
2019-08-29 Reword to clarify newer generations are left alonetoonn1-1/+4
My attempt at clarifying the docs resulted in a false explanation. This is now fixed and I added an example to eliminate all possible confusion.
2019-08-29 Maybe fix #3058Eelco Dolstra1-4/+4
2019-08-29 Add some more instrumentationEelco Dolstra1-0/+3
2019-08-29 CleanupEelco Dolstra1-2/+2
2019-08-28 gc-auto.sh: Increase verbosityEelco Dolstra1-2/+2
2019-08-28 Fix macOS buildEelco Dolstra1-1/+1
https://hydra.nixos.org/build/99500938
2019-08-28 Merge pull request #2921 from matthewbauer/handle-sigwinchEelco Dolstra1-0/+9
Handle SIGWINCH in main thread
2019-08-28 Set maximum name length in NixMatthew Bauer1-0/+4
Previously we allowed any length of name for Nix derivations. This is bad because different file systems have different max lengths. To make things predictable, I have picked a max. This was done by trying to build this derivation: derivation { name = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; builder = "/no-such-path"; system = "x86_64-linux"; } Take off one a and it will not lead to file name too long. That ends up being 212 a’s. An even smaller max could be picked if we want to support more file systems. Working backwards, this is why: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-${name}.drv.chroot > 255 - 32 - 1 - 4 - 7 = 211
2019-08-28 Don't send certain setting overrides to the daemonEelco Dolstra1-0/+7
These are already handled separately. This fixes warnings like warning: ignoring the user-specified setting 'max-jobs', because it is a restricted setting and you are not a trusted user when using the -j flag.
2019-08-28 Merge pull request #2745 from samueldr/install/detect-systemd-separatelyEelco Dolstra1-3/+7
install-multi-user: Detect and fail lack of systemd separately
2019-08-28 Merge pull request #3054 from matthewbauer/nix-dir-macosEelco Dolstra1-1/+1
Allow empty /nix directory in multi-user installer
2019-08-27 Update the libboost hackEelco Dolstra1-1/+6
This cuts about 46 MiB from the closure.
2019-08-27 Compress binary tarballs using xzEelco Dolstra2-7/+6
Fixes https://github.com/NixOS/nix/issues/240. Apparently 'tar -xf' can decompress xz files on macOS nowadays.
2019-08-27 Merge branch 'master' of github.com:NixOS/nixEelco Dolstra1-8/+95
2019-08-27 Update release notesEelco Dolstra1-0/+5
2019-08-27 Merge branch 'test-sandboxing' of https://github.com/matthewbauer/nixEelco Dolstra3-4/+31
2019-08-27 Merge pull request #3056 from grahamc/operatorsEelco Dolstra1-8/+95
operators: document exact precedence, split up similar operators
2019-08-27 Hopefully fix post-hook test on macOSEelco Dolstra1-1/+1
https://hydra.nixos.org/build/99262744
2019-08-27 Add 2.3 release notesEelco Dolstra1-2/+68
2019-08-27 Use wait4path on org.nixos.nix-daemon.plistMatthew Bauer1-1/+6
When using a volume, the nix-daemon path may not exist. To avoid this issue, we must use the wait4path tool. This should solve one of the issues in multi-user on macOS Catalina.
2019-08-27 docs: operators: Make OR and AND capitalizedGraham Christensen1-2/+2
2019-08-27 Merge pull request #3064 from pszubiak/systemd-unit-service-fixEelco Dolstra1-0/+3
nix-daemon.service: add install section.
2019-08-27 nix-daemon.service: add install section.Piotr Szubiakowski1-0/+3
Signed-off-by: Piotr Szubiakowski <pszubiak@eso.org>
2019-08-24 Merge pull request #2946 from vmandela/proxyGraham Christensen2-0/+52
installer: handle network proxy in systemd multi-user install
2019-08-24 docs: document the installer's use of proxy env varsGraham Christensen1-0/+18
2019-08-24 installer: handle network proxy in systemd installVenkateswara Rao Mandela1-0/+34
If a network proxy configuration is detected, setup an override systemd unit file for nix-daemon service with the non-empty proxy variables. Proxy detection is performed by looking for http/https/ftp proxy and no proxy variables in user environment
2019-08-23 Reset tmpDirInSandbox for unsandboxedMatthew Bauer1-0/+1
2019-08-23 operators: document exact precedenc, split up similar operatorsGraham Christensen1-8/+95
2019-08-22 Allow empty /nix directory in multi-user installerMatthew Bauer1-1/+1
With macOS catalina, we can no longer modify the root system volume (#2925). macOS provides a system configuration file in synthetic.conf(5) to create empty root directories. This can be used to mount /nix to a separate volume. As a result, this directory will need to already exist prior to installation. Instead, check for /nix/store and /nix/var for a live Nix installation.
2019-08-17 Fix nix-env documentation for --delete-generationsToon Nolten1-4/+4
The documentation for `--delete-generations` had an erroneous fullstop and as it turns out inaccurate information on the `+No.` syntax.
2019-08-16 Merge pull request #3041 from zimbatm/nix-store-error-13Eelco Dolstra2-2/+40
Fix for `unknown serve command 13`
2019-08-16 nix-store: fix out of sync protocolzimbatm1-2/+10
If a NAR is already in the store, addToStore doesn't read the source which makes the protocol go out of sync. This happens for example when two client try to nix-copy-closure the same derivation at the same time.
2019-08-16 libutil: add SizedSourcezimbatm1-0/+30
Introduce the SizeSource which allows to bound how much data is being read from a source. It also contains a drainAll() function to discard the rest of the source, useful to keep the nix protocol in sync.
2019-08-15 Merge pull request #2945 from danidiaz/doc001Eelco Dolstra1-9/+31
Expanded documentation for .nix-defexpr
2019-08-15 Merge pull request #2782 from grahamc/flamesEelco Dolstra7-3/+189
Track function start and end
2019-08-15 Expanded documentation for .nix-defexprDaniel Diaz1-9/+31
2019-08-14 Track function start and ends for flame graphsGraham Christensen7-3/+189
With this patch, and this file I called `log.py`: #!/usr/bin/env nix-shell #!nix-shell -i python3 -p python3 --pure import sys from pprint import pprint stack = [] timestack = [] for line in open(sys.argv[1]): components = line.strip().split(" ", 2) if components[0] != "function-trace": continue direction = components[1] components = components[2].rsplit(" ", 2) loc = components[0] _at = components[1] time = int(components[2]) if direction == "entered": stack.append(loc) timestack.append(time) elif direction == "exited": dur = time - timestack.pop() vst = ";".join(stack) print(f"{vst} {dur}") stack.pop() and: nix-instantiate --trace-function-calls -vvvv ../nixpkgs/pkgs/top-level/release.nix -A unstable > log.matthewbauer 2>&1 ./log.py ./log.matthewbauer > log.matthewbauer.folded flamegraph.pl --title matthewbauer-post-pr log.matthewbauer.folded > log.matthewbauer.folded.svg I can make flame graphs like: http://gsc.io/log.matthewbauer.folded.svg --- Includes test cases around function call failures and tryEval. Uses RAII so the finish is always called at the end of the function.
2019-08-08 Merge pull request #3031 from grahamc/low-speed-limitEelco Dolstra3-3/+12
conf: stalled-download-timeout: make tunable
2019-08-08 conf: stalled-download-timeout: make tunableGraham Christensen3-3/+12
Make curl's low speed limit configurable via stalled-download-timeout. Before, this limit was five minutes without receiving a single byte. This is much too long as if the remote end may not have even acknowledged the HTTP request.
2019-08-08 tests/post-hook.sh: Don't put result link in cwdEelco Dolstra1-1/+1