-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Comparing changes
Open a pull request
base repository: NixOS/nix
base: eb7131bf8b3f
head repository: NixOS/nix
compare: 69326f3637f1
Commits on Oct 6, 2019
-
nix doctor: add more logging output to checks
When running nix doctor on a healthy system, it just prints the store URI and nothing else. This makes it unclear whether the system is in a good state and what check(s) it actually ran, since some of the checks are optional depending on the store type. This commit updates nix doctor to print an colored log message for every check that it does, and explicitly state whether that check was a PASS or FAIL to make it clear to the user whether the system passed its checkup with the doctor. Fixes #3084
Configuration menu - View commit details
-
Copy full SHA for c5bd564 - Browse repository at this point
Copy the full SHA c5bd564View commit details
Commits on Oct 23, 2019
-
This allows to have a repl-centric workflow to working on nixpkgs. Usage: :edit <package> - heuristic that find the package file path :edit <path> - just open the editor on the file path Once invoked, `nix repl` will open $EDITOR on that file path. Once the editor exits, `nix repl` will automatically reload itself.
1Configuration menu - View commit details
-
Copy full SHA for 73ff84f - Browse repository at this point
Copy the full SHA 73ff84fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 207a537 - Browse repository at this point
Copy the full SHA 207a537View commit details -
libexpr: add findDerivationFilename
extract the derivation to filename:lineno heuristic
Configuration menu - View commit details
-
Copy full SHA for 59c7249 - Browse repository at this point
Copy the full SHA 59c7249View commit details
Commits on Oct 25, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 70cab05 - Browse repository at this point
Copy the full SHA 70cab05View commit details
Commits on Oct 28, 2019
-
Configuration menu - View commit details
-
Copy full SHA for ec448f8 - Browse repository at this point
Copy the full SHA ec448f8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3774fe5 - Browse repository at this point
Copy the full SHA 3774fe5View commit details -
Configuration menu - View commit details
-
Copy full SHA for d407f4d - Browse repository at this point
Copy the full SHA d407f4dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9a25059 - Browse repository at this point
Copy the full SHA 9a25059View commit details
Commits on Oct 30, 2019
-
minor: fix mismatch of struct/class forward decl of 'Source'
Fixes the following warning and the indicate potential issue: src/libstore/worker-protocol.hh:66:1: warning: class 'Source' was previously declared as a struct; this is valid, but may result in linker errors under the Microsoft C++ ABI [-Wmismatched-tags] (cherry picked from commit 6e1bb04870b1b723282d32182af286646f13bf3c)
Configuration menu - View commit details
-
Copy full SHA for 0e9b72e - Browse repository at this point
Copy the full SHA 0e9b72eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 99aac72 - Browse repository at this point
Copy the full SHA 99aac72View commit details
Commits on Oct 31, 2019
-
Minor updates to inline comments
Add missing docstring on InstallableCommand. Also, some of these were wrapped when they're right next to a line longer than the unwrapped line, so we can just unwrap them to save vertical space.
Configuration menu - View commit details
-
Copy full SHA for 80d5ec6 - Browse repository at this point
Copy the full SHA 80d5ec6View commit details -
Merge pull request #3179 from dtzWill/fix/struct-class-mismatch-minor
minor: fix mismatch of struct/class forward decl of 'Source'
Configuration menu - View commit details
-
Copy full SHA for 4e840fc - Browse repository at this point
Copy the full SHA 4e840fcView commit details -
Merge pull request #3182 from bhipple/fixup/comments
Minor updates to inline comments
Configuration menu - View commit details
-
Copy full SHA for 6bff1aa - Browse repository at this point
Copy the full SHA 6bff1aaView commit details -
Also disable email to not notify the whole NixOS community about build failures
Configuration menu - View commit details
-
Copy full SHA for f178264 - Browse repository at this point
Copy the full SHA f178264View commit details -
Merge pull request #3187 from Mic92/travis
travis: enable linux builds
Configuration menu - View commit details
-
Copy full SHA for 6c8d013 - Browse repository at this point
Copy the full SHA 6c8d013View commit details
Commits on Nov 1, 2019
-
Configuration menu - View commit details
-
Copy full SHA for b811bd2 - Browse repository at this point
Copy the full SHA b811bd2View commit details -
Merge pull request #3192 from ng-0/ng0/issue3186
include netinet/in.h in src/nix/main.cc
Configuration menu - View commit details
-
Copy full SHA for 06f9364 - Browse repository at this point
Copy the full SHA 06f9364View commit details -
Configuration menu - View commit details
-
Copy full SHA for f1d4ba2 - Browse repository at this point
Copy the full SHA f1d4ba2View commit details
Commits on Nov 2, 2019
-
docs: xref doesn't render in title
The `post-build-hook` text currently appears in the index, but not on the actual title line of the section, this follows the pattern used in a previous section to get a reference into a title.
Configuration menu - View commit details
-
Copy full SHA for 808cb64 - Browse repository at this point
Copy the full SHA 808cb64View commit details
Commits on Nov 3, 2019
-
Configuration menu - View commit details
-
Copy full SHA for dcd7a26 - Browse repository at this point
Copy the full SHA dcd7a26View commit details -
Fix progress bar when nix-prefetch-url is piped.
The intent of the code was that if the window size cannot be determined, it would be treated as having the maximum possible size. Because of a missing assignment, it was actually treated as having a width of 0. The reason the width could not be determined was because it was obtained from stdout, not stderr, even though the printing was done to stderr. This commit addresses both issues.
Configuration menu - View commit details
-
Copy full SHA for c935ad3 - Browse repository at this point
Copy the full SHA c935ad3View commit details
Commits on Nov 4, 2019
-
Merge pull request #3203 from hvdijk/prefetch-progress
Fix progress bar when nix-prefetch-url is piped.
Configuration menu - View commit details
-
Copy full SHA for 8ec1b1e - Browse repository at this point
Copy the full SHA 8ec1b1eView commit details -
Merge pull request #3202 from kraem/master
Update nix eval --help msg to not include deprecated command
Configuration menu - View commit details
-
Copy full SHA for f5a46ef - Browse repository at this point
Copy the full SHA f5a46efView commit details -
Configuration menu - View commit details
-
Copy full SHA for cea05e5 - Browse repository at this point
Copy the full SHA cea05e5View commit details -
Merge pull request #3206 from kevinastock/patch-3
docs: correct default location of log directory
Configuration menu - View commit details
-
Copy full SHA for 3770f5c - Browse repository at this point
Copy the full SHA 3770f5cView commit details
Commits on Nov 5, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 1b600ec - Browse repository at this point
Copy the full SHA 1b600ecView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6b70871 - Browse repository at this point
Copy the full SHA 6b70871View commit details -
Configuration menu - View commit details
-
Copy full SHA for e1725ba - Browse repository at this point
Copy the full SHA e1725baView commit details -
Merge pull request #3199 from kevinastock/patch-2
docs: xref doesn't render in title
Configuration menu - View commit details
-
Copy full SHA for 376802c - Browse repository at this point
Copy the full SHA 376802cView commit details -
Merge pull request #3180 from kevinastock/patch-1
docs: fix upper bound on number of consumed cores
Configuration menu - View commit details
-
Copy full SHA for 78b8203 - Browse repository at this point
Copy the full SHA 78b8203View commit details -
Merge pull request #3193 from matthewbauer/patch-11
Update man to show that nix-shell allows --arg
Configuration menu - View commit details
-
Copy full SHA for 7876027 - Browse repository at this point
Copy the full SHA 7876027View commit details -
Configuration menu - View commit details
-
Copy full SHA for 852554b - Browse repository at this point
Copy the full SHA 852554bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 81a9b93 - Browse repository at this point
Copy the full SHA 81a9b93View commit details -
It's broken at the moment: https://hydra.nixos.org/build/105746055 Also it pulls in GHC which is a pretty big dependency.
Configuration menu - View commit details
-
Copy full SHA for b4e260d - Browse repository at this point
Copy the full SHA b4e260dView commit details -
Configuration menu - View commit details
-
Copy full SHA for d823381 - Browse repository at this point
Copy the full SHA d823381View commit details -
Configuration menu - View commit details
-
Copy full SHA for b874272 - Browse repository at this point
Copy the full SHA b874272View commit details -
This allows Nix builders to call Nix to build derivations, with some limitations. Example: let nixpkgs = fetchTarball channel:nixos-18.03; in with import <nixpkgs> {}; runCommand "foo" { buildInputs = [ nix jq ]; NIX_PATH = "nixpkgs=${nixpkgs}"; } '' hello=$(nix-build -E '(import <nixpkgs> {}).hello.overrideDerivation (args: { name = "hello-3.5"; })') $hello/bin/hello mkdir -p $out/bin ln -s $hello/bin/hello $out/bin/hello nix path-info -r --json $hello | jq . '' This derivation makes a recursive Nix call to build GNU Hello and symlinks it from its $out, i.e. # ll ./result/bin/ lrwxrwxrwx 1 root root 63 Jan 1 1970 hello -> /nix/store/s0awxrs71gickhaqdwxl506hzccb30y5-hello-3.5/bin/hello # nix-store -qR ./result /nix/store/hwwqshlmazzjzj7yhrkyjydxamvvkfd3-glibc-2.26-131 /nix/store/s0awxrs71gickhaqdwxl506hzccb30y5-hello-3.5 /nix/store/sgmvvyw8vhfqdqb619bxkcpfn9lvd8ss-foo This is implemented as follows: * Before running the outer builder, Nix creates a Unix domain socket '.nix-socket' in the builder's temporary directory and sets $NIX_REMOTE to point to it. It starts a thread to process connections to this socket. (Thus you don't need to have nix-daemon running.) * The daemon thread uses a wrapper store (RestrictedStore) to keep track of paths added through recursive Nix calls, to implement some restrictions (see below), and to do some censorship (e.g. for purity, queryPathInfo() won't return impure information such as signatures and timestamps). * After the build finishes, the output paths are scanned for references to the paths added through recursive Nix calls (in addition to the inputs closure). Thus, in the example above, $out has a reference to $hello. The main restriction on recursive Nix calls is that they cannot do arbitrary substitutions. For example, doing nix-store -r /nix/store/kmwd1hq55akdb9sc7l3finr175dajlby-hello-2.10 is forbidden unless /nix/store/kmwd... is in the inputs closure or previously built by a recursive Nix call. This is to prevent irreproducible derivations that have hidden dependencies on substituters or the current store contents. Building a derivation is fine, however, and Nix will use substitutes if available. In other words, the builder has to present proof that it knows how to build a desired store path from scratch by constructing a derivation graph for that path. Probably we should also disallow instantiating/building fixed-output derivations (specifically, those that access the network, but currently we have no way to mark fixed-output derivations that don't access the network). Otherwise sandboxed derivations can bypass sandbox restrictions and access the network. When sandboxing is enabled, we make paths appear in the sandbox of the builder by entering the mount namespace of the builder and bind-mounting each path. This is tricky because we do a pivot_root() in the builder to change the root directory of its mount namespace, and thus the host /nix/store is not visible in the mount namespace of the builder. To get around this, just before doing pivot_root(), we branch a second mount namespace that shares its /nix/store mountpoint with the parent. Recursive Nix currently doesn't work on macOS in sandboxed mode (because we can't change the sandbox policy of a running build) and in non-root mode (because setns() barfs).
1Configuration menu - View commit details
-
Copy full SHA for c4d7c76 - Browse repository at this point
Copy the full SHA c4d7c76View commit details -
Configuration menu - View commit details
-
Copy full SHA for c921074 - Browse repository at this point
Copy the full SHA c921074View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2af9561 - Browse repository at this point
Copy the full SHA 2af9561View commit details -
Enable recursive Nix using a feature
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".
Configuration menu - View commit details
-
Copy full SHA for c119ab9 - Browse repository at this point
Copy the full SHA c119ab9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 69326f3 - Browse repository at this point
Copy the full SHA 69326f3View commit details
There are no files selected for viewing