Skip to content

Comments

chromium: fetch src from git instead of using release tarball, {ungoogled-,}chromium,chromedriver: 130.0.6723.116 -> 131.0.6778.69/85#357371

Merged
emilylange merged 5 commits intoNixOS:masterfrom
emilylange:chromium-src
Nov 20, 2024
Merged

chromium: fetch src from git instead of using release tarball, {ungoogled-,}chromium,chromedriver: 130.0.6723.116 -> 131.0.6778.69/85#357371
emilylange merged 5 commits intoNixOS:masterfrom
emilylange:chromium-src

Conversation

@emilylange
Copy link
Member

@emilylange emilylange commented Nov 19, 2024

Please refer to the commit message for details.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • 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/)
  • 25.05 Release Notes (or backporting 24.11 and 25.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.

This is no longer used as we only differentiate between stable and
ungoogled-chromium, which we already track in the "ungoogled" boolean.

Beta and dev channels are gone for good.
It's been a year since their removal in 59719f7.

There is, however, an additional channel mapping in nixos/tests/chromium
but that one is independent from this one here.
@emilylange emilylange added 1.severity: security Issues which raise a security issue, or PRs that fix one backport release-24.05 labels Nov 19, 2024
emilylange and others added 3 commits November 19, 2024 20:43
This builds upon Yureka's work to build electron from source.
A lot of the newly introduced changes to the chromium derivation and
update script are 1-to-1 copies or slight derivates of that work.

Especially the newly added depot_tools.py to resolve the DEPS files does
most of the heavy lifting and is an ever so slightly modified version of
that section Yureka implemented in electron's update.py.

Some coordination between the chromium and electron maintainers should
allow us to deduplicate a lot of the duplicated code fairly easily in
the future.

That just wasn't a goal with this commit, due to time constraints and
the urgency to switch away from the release tarballs.

Instead of taking just a few hours for a tarball to be available for
download after a release, it now takes multiple days at least.

At the time of writing, roughly a week after M131 was released, the
tarball is still not available. It's unclear if it will ever be.

Reason for this are CI issues on Google's side.

Note that virtually every release contains some security critical fixes.

Also note that this commit is written with a lot of conditionals so the
electron derivation doesn't change (just yet).

The new update.mjs update script is still very much work-in-progress but
gets the job done.

Co-Authored-By: Yureka <yuka@yuka.dev>
@emilylange emilylange changed the title chromium: fetch src from git instead of using release tarball, {ungoogled-,}chromium,chromedriver: 130.0.6723.116 -> 131.0.6778.69 chromium: fetch src from git instead of using release tarball, {ungoogled-,}chromium,chromedriver: 130.0.6723.116 -> 131.0.6778.69/85 Nov 20, 2024
@emilylange emilylange marked this pull request as ready for review November 20, 2024 01:13
@emilylange
Copy link
Member Author

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 357371


x86_64-linux

✅ 42 packages built:
  • aws-azure-login
  • chromedriver
  • chromium
  • chromium.sandbox
  • fast-cli
  • flaresolverr
  • gotenberg
  • grafana-kiosk
  • mermaid-cli
  • mermaid-filter
  • percollate
  • pinnwand
  • pinnwand.dist
  • playwright-test
  • puppeteer-cli
  • python311Packages.django-filingcabinet
  • python311Packages.django-filingcabinet.dist
  • python311Packages.great-tables
  • python311Packages.great-tables.dist
  • python311Packages.pytest-playwright
  • python311Packages.pytest-playwright.dist
  • python311Packages.shiny
  • python311Packages.shiny.dist
  • python312Packages.django-filingcabinet
  • python312Packages.django-filingcabinet.dist
  • python312Packages.great-tables
  • python312Packages.great-tables.dist
  • python312Packages.pytest-playwright
  • python312Packages.pytest-playwright.dist
  • python312Packages.shiny
  • python312Packages.shiny.dist
  • selendroid
  • selenium-server-standalone
  • sharedown
  • single-file-cli
  • sitespeed-io
  • undetected-chromedriver
  • ungoogled-chromium
  • ungoogled-chromium.sandbox
  • vhs
  • vscode-extensions.yzane.markdown-pdf
  • wayback
# nix-build nixos/tests/chromium.nix -A stable -A ungoogled
/nix/store/f72drll5q6msblm2hc8vdhr34s8f8bm3-vm-test-run-chromium-stable
/nix/store/ri0lf2yhzxga627s3lwcsdgix5vwf4py-vm-test-run-chromium-ungoogled

@ofborg ofborg bot requested a review from networkException November 20, 2024 14:19
@ofborg ofborg bot added 11.by: package-maintainer This PR was created by a maintainer of all the package it changes. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. labels Nov 20, 2024
@emilylange emilylange merged commit dca46c1 into NixOS:master Nov 20, 2024
@emilylange emilylange deleted the chromium-src branch November 20, 2024 21:47
@github-actions
Copy link
Contributor

Backport failed for release-24.05, because it was unable to cherry-pick the commit(s).

Please cherry-pick the changes locally and resolve any conflicts.

git fetch origin release-24.05
git worktree add -d .worktree/backport-357371-to-release-24.05 origin/release-24.05
cd .worktree/backport-357371-to-release-24.05
git switch --create backport-357371-to-release-24.05
git cherry-pick -x ebb40bd5c29f08765e6ed94d00a889e09a9e30de 8dd2f1add978a4747a5962f2874b8ad20f86b01c 875ae81fe547a7296f8386f977852d04186e975d 54d69a3c7942dac4a7b41725b9f71b1ab143dc9c eaa1bb9980eb6444076fce1470c568001c3b4f1f

@github-actions
Copy link
Contributor

@emilylange
Copy link
Member Author

Backport failed for release-24.05, because it was unable to cherry-pick the commit(s).

Manual backport in #357925

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

1.severity: security Issues which raise a security issue, or PRs that fix one 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. 11.by: package-maintainer This PR was created by a maintainer of all the package it changes.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants