Skip to content

gn: 2020-03-09 -> 2024-05-13#221306

Merged
alyssais merged 1 commit intoNixOS:stagingfrom
skeuchel:bump-gn
Sep 4, 2024
Merged

gn: 2020-03-09 -> 2024-05-13#221306
alyssais merged 1 commit intoNixOS:stagingfrom
skeuchel:bump-gn

Conversation

@skeuchel
Copy link
Copy Markdown

Description of changes

This updates gn to a version which includes support for riscv64 builds. The revision used for gn is the one specified for the current chromium stable version (111.0.5563.64).

Things done
  • Built on platform(s)
    • x86_64-linux
      I've build the package and chromium which overrides this package on staging.
    • 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.05 Release Notes (or backporting 22.11 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.

@ofborg ofborg bot added 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 2501-5000 This PR causes many rebuilds on Darwin and should target the staging branches. 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 Mar 15, 2023
@skeuchel
Copy link
Copy Markdown
Author

To reproduce the build failure on the current master branch you can run

nix build nixpkgs#pkgsCross.riscv64.gn

@skeuchel skeuchel mentioned this pull request Mar 31, 2023
@SeTSeR
Copy link
Copy Markdown
Contributor

SeTSeR commented Jul 12, 2023

There is already gn of 2021-08-08 in nixpkgs, and this version already includes risc-v support. https://github.com/NixOS/nixpkgs/blob/b4fc1d4a6f6cfdebf711fd00be7a5f13ace2af1b/pkgs/development/tools/build-managers/gn/rev1924.nix

Bump of default gn version may introduce breakage in dependent packages, as gn provides no guarantees for backwards compatibility. Maybe just explicitly use gn1924 for dependencies needed in RISC-V?

@nyabinary
Copy link
Copy Markdown
Contributor

Any news on this happening?

@SeTSeR
Copy link
Copy Markdown
Contributor

SeTSeR commented Aug 29, 2023

Any news on this happening?

There seem to be four packages, depending on gn, namely skia, v8, oni2 and chromium:
https://github.com/search?q=repo%3ANixOS%2Fnixpkgs+gn%2C&type=code

If this bump doesn’t break them, it should be safe to make it. However, I currently don’t know how to do it, I don’t have access to x86 machine with Nix.

@SeTSeR
Copy link
Copy Markdown
Contributor

SeTSeR commented Aug 31, 2023

@ofborg build envoy v8 oni chromium libsForQt5.qtwebengine libsForQt6.qtwebengine neovide python3Packages.skia-pathops aseprite

@nyabinary
Copy link
Copy Markdown
Contributor

@SeTSeR Did ofbrog ever attempt to build?

@SeTSeR
Copy link
Copy Markdown
Contributor

SeTSeR commented Oct 28, 2023

@SeTSeR Did ofbrog ever attempt to build?

I don't have much experience with ofborg myself, as I don't run it much, but it seems something was run as we can see from the checks:
https://logs.ofborg.org/?key=nixos/nixpkgs.221306&attempt_id=bff6c52c-bccf-4e1c-b620-ac54cd863f29
However, I can't access logs now, maybe the check is too old and I have to start it again.

@SeTSeR
Copy link
Copy Markdown
Contributor

SeTSeR commented Dec 17, 2023

@ofborg build envoy v8 oni chromium libsForQt5.qtwebengine libsForQt6.qtwebengine neovide python3Packages.skia-pathops aseprite

@skeuchel
Copy link
Copy Markdown
Author

I have rebased this PR and changed it to bump to the gn version (2024-01-22) used in the current chromium stable version. Only a handful of packages use gn, and some always override it. The exhaustive list is

non-override uses

override uses

I have successfully built all of them on x86_64-linux. The package oni2 was removed from nixpkgs since opening this PR.

@skeuchel skeuchel changed the title gn: 2020-03-09 -> 2022-12-12 gn: 2020-03-09 -> 2024-01-22 Feb 24, 2024
@skeuchel skeuchel requested a review from JamieMagee February 24, 2024 14:27
@ofborg ofborg bot added 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches. and removed 10.rebuild-darwin: 2501-5000 This PR causes many rebuilds on Darwin and should target the staging branches. 10.rebuild-linux: 2501-5000 This PR causes many rebuilds on Linux and should target the staging branches. labels Feb 24, 2024
@skeuchel
Copy link
Copy Markdown
Author

skeuchel commented Mar 6, 2024

Pinging maintainers of the maintainers of the direct reverse deps: skia-pathops (@barinov274), qt5.qtwebengine (@matthewbauer) and of qt-6 modules (@milahu, @NickCao). Can you take a look at this as well?

@AndersonTorres AndersonTorres mentioned this pull request Aug 2, 2024
47 tasks
@skeuchel skeuchel changed the title gn: 2020-03-09 -> 2024-01-22 gn: 2020-03-09 -> 2024-05-13 Aug 20, 2024
@skeuchel
Copy link
Copy Markdown
Author

Bumped to gn used in chromium 126. I decided not to bump to gn 2024-06-06 (revnum 2174) from chromium 127 because it requires relaxing hardening flags.

I have again successfully built the following direct reverse dependencies on x86_64-linux:

  • skia-aseprite
  • neovide
  • libsForQt5.qt5.qtwebengine
  • qt6.qtwebengine
  • chromium
  • v8
  • python31XPackages.skia-pathops

@alyssais alyssais merged commit e6d3c8b into NixOS:staging Sep 4, 2024
@skeuchel skeuchel deleted the bump-gn branch September 5, 2024 10:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants