about summary refs log tree commit diff
diff options
context:
space:
mode:
authoremilylange <git@emilylange.de>2024-05-01 23:43:15 +0200
committergithub-actions[bot] <github-actions[bot]@users.noreply.github.com>2024-05-03 13:05:07 +0000
commitcf9a3d9c64a9000e24e943fd281101e179987fce (patch)
treecaca8b23debd3858c7edf8cb9fe60d586b3ce146
parent272bd8f9ecc80702ca8cbc8463f3d733af26a02d (diff)
google-chrome: move independently of `chromium`
Historically, `google-chrome` used the version info and debian package
FOD provided by `chromium`.

This was very efficient, because `chromium` uses parts of the debian
tarball for Widevine (opt-in, via `.override`).

Meaning `chromium` has to track that debian tarball with each update
anyway.

And they always release in sync.

So why keep seperate `google-chrome` from `chromium` now?

 - The current `chromium` maintainers are already at capacity
   maintaining `chromium` and have no time for `google-chrome`.

 - `chromium` bumps become sometimes a bottleneck for `google-chrome`.
   This is because `chromium` is built from source and a lot more time
   consuming and significantly more complex.

 - Lately, `chromium` and `google-chrome` both had an upstream issue
   under wayland with `--ozone-platform-hint`, rendering it unusable.
   For `chromium` we were able to patch it, since unlike `google-chrome`
   it's built from source.
   The `chromium` maintainers simply forgot that `google-chrome` might
   have the same issue, continued to merge the PR, rendering
   `google-chrome` broken.

This PR also removes primeos from `meta.maintainers` since they only
added themself to `google-chrome` because it inherited `chromium`'s
version, stating they don't actually use `google-chrome`.

Furthermore, primeos no longer maintains `chromium`.
Ref 477e7d6b60e817661632ff3a8aaf2e39c4cceadc

(cherry picked from commit 9f96faf9d8d5ba69f1772d087284bb6d2a67f356)
-rw-r--r--pkgs/applications/networking/browsers/google-chrome/default.nix24
1 files changed, 9 insertions, 15 deletions
diff --git a/pkgs/applications/networking/browsers/google-chrome/default.nix b/pkgs/applications/networking/browsers/google-chrome/default.nix
index 55506187c78a..9105590fcc1e 100644
--- a/pkgs/applications/networking/browsers/google-chrome/default.nix
+++ b/pkgs/applications/networking/browsers/google-chrome/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, patchelf, makeWrapper
+{ lib, stdenv, patchelf, makeWrapper, fetchurl
 
 # Linked dynamic libraries.
 , glib, fontconfig, freetype, pango, cairo, libX11, libXi, atk, nss, nspr
@@ -31,9 +31,6 @@
 # Necessary for USB audio devices.
 , pulseSupport ? true, libpulseaudio
 
-# Only needed for getting information about upstream binaries
-, chromium
-
 , gsettings-desktop-schemas
 , gnome
 
@@ -49,8 +46,6 @@ let
     withCustomModes = true;
   };
 
-  version = chromium.upstream-info.version;
-
   deps = [
     glib fontconfig freetype pango cairo libX11 libXi atk nss nspr
     libXcursor libXext libXfixes libXrender libXScrnSaver libXcomposite libxcb
@@ -67,12 +62,14 @@ let
     ++ lib.optional libvaSupport libva
     ++ [ gtk3 gtk4 ];
 
-in stdenv.mkDerivation {
-  inherit version;
-
+in stdenv.mkDerivation (finalAttrs: {
   pname = "google-chrome";
+  version = "124.0.6367.118";
 
-  src = chromium.chromeSrc;
+  src = fetchurl {
+    url = "https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${finalAttrs.version}-1_amd64.deb";
+    hash = "sha256-H3bv6WiVBl4j38ROZ80+SD9UO9ok+xxcKFxDd9yjWNY=";
+  };
 
   nativeBuildInputs = [ patchelf makeWrapper ];
   buildInputs = [
@@ -150,11 +147,8 @@ in stdenv.mkDerivation {
     homepage = "https://www.google.com/chrome/browser/";
     license = licenses.unfree;
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
-    maintainers = with maintainers; [ primeos ];
-    # Note from primeos: By updating Chromium I also update Google Chrome and
-    # will try to merge PRs and respond to issues but I'm not actually using
-    # Google Chrome.
+    maintainers = with maintainers; [ ];
     platforms = [ "x86_64-linux" ];
     mainProgram = "google-chrome-stable";
   };
-}
+})