Skip to content

lib/systems: revert #221707 if stdenv.hostPlatform.isPower#244436

Closed
ghost wants to merge 1 commit intomasterfrom
unknown repository
Closed

lib/systems: revert #221707 if stdenv.hostPlatform.isPower#244436
ghost wants to merge 1 commit intomasterfrom
unknown repository

Conversation

@ghost
Copy link

@ghost ghost commented Jul 20, 2023

Description of changes

#221707 broke the build on powerpc64 by creating circular outpath dependencies.

This commit fixes the breakage on powerpc by reverting it if stdenv.hostPlatform.isPower.

Closes #224694

Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 23.11 Release Notes (or backporting 23.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

#221707 broke the build on
powerpc64 by creating circular outpath dependencies.

This commit fixes the breakage on powerpc by reverting it if
stdenv.hostPlatform.isPower.

Closes #224694
@github-actions github-actions bot added the 6.topic: kernel The Linux kernel label Jul 20, 2023
@ghost ghost marked this pull request as ready for review July 20, 2023 03:44
@ghost ghost mentioned this pull request Jul 20, 2023
12 tasks
@K900
Copy link
Contributor

K900 commented Jul 20, 2023

Maybe we should just keep this unconditionally and add a note about why it's important? Also, do you know why the built kernel includes the sources path at all? That sounds like a reproducibility nightmare for more conventional distros...

@ghost
Copy link
Author

ghost commented Jul 20, 2023

Maybe we should just keep this unconditionally

The conditional fixes #224694

Also, do you know why the built kernel includes the sources path at all?

It's normal. The problem is that #221707 changed us from building source that was unpacked into $NIX_BUILD_TOP (which is always /build/ for sandboxed builds, and is outside of /nix/store so it doesn't generate references) to building from source that is already unpacked into /nix/store.

It's pretty weird to unpack the source into /nix/store and build from there. That's not how the standard builder works.

That sounds like a reproducibility nightmare for more conventional distros...

Modern conventional distros build in a sandbox just like we do, and their source is unpacked into exactly the same path within that sandbox for every build. Basically inside the sandbox, the path to the source is always /build/source or something like that.

@ghost ghost marked this pull request as draft July 20, 2023 05:43
@ofborg ofborg bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 2501-5000 This PR causes many rebuilds on Linux and should target the staging branches. labels Jul 20, 2023
@ghost
Copy link
Author

ghost commented Jul 25, 2023

This PR still doesnt fix pkgsCross.powernv.linux.

Current best hope is #245449

@ghost ghost closed this Jul 25, 2023
@ghost ghost deleted the pr/fix/powerpc-kernel-cycles branch January 23, 2024 06:47
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: kernel The Linux kernel 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 2501-5000 This PR causes many rebuilds on Linux and should target the staging branches.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Build failure: linux (powerpc)

1 participant