-
-
Notifications
You must be signed in to change notification settings - Fork 13.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
minimal-bootstrap: use recursive FOD to make nix unpack bootstrap sources #241001
minimal-bootstrap: use recursive FOD to make nix unpack bootstrap sources #241001
Conversation
pkgs/os-specific/linux/minimal-bootstrap/stage0-posix/bootstrap-sources.nix
Outdated
Show resolved
Hide resolved
pkgs/os-specific/linux/minimal-bootstrap/stage0-posix/bootstrap-sources.nix
Outdated
Show resolved
Hide resolved
pkgs/os-specific/linux/minimal-bootstrap/stage0-posix/bootstrap-sources.nix
Outdated
Show resolved
Hide resolved
1. Advice for manually assembling the bootstrap sources is restored. 2. Hash is no longer duplicated 3. More informative store path using `builtins.placeholder` is provided.
It builds again, but unfortunately I get a segfault building glibc. |
I'm not sure we fully understand the implications of this change. It's effectively changing the position of cache.nixos.org from being a cache to being a source for bootstrapping nixpkgs. The advantage is pretty obvious, but I think there is a downside where bootstrapping becomes harder if cache.nixos.org were to disappear or lost those files. |
I would say it's probably better to worry about such things when we're ready to switch over to this. tarballs.nixos.org can be a substituter for fixed output things with a little bit of work, native git hashing support should hopefully make fetching these sources easier, etc. |
If that happens, the build will fail with an error message which tells the user that they can resume the build without It's impossible to give instructions like this for our current binary-bootstrap scheme. That's one of the major benefits of the minimal-bootstrap work. Ultimately, this will allow |
Isn't |
Keep reading.... nixpkgs/pkgs/os-specific/linux/minimal-bootstrap/stage0-posix/bootstrap-sources.nix Lines 95 to 97 in 4179372
Of course, it would be better if we actually printed those lines, so the user could copy-paste them into the terminal:
... but we would need a way to make sure these instructions stay "in sync" with the |
Description of changes
This is an addendum to work done in #238357. Investigating it seems like the contents of the narball wasn't being unpacked, causing hex0 to not find sources for hex1 and hang. Switching to a recursive FOD seems like a solution?
Related #227914
Things done
sandbox = true
set innix.conf
? (See Nix manual)nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)