about summary refs log tree commit diff
path: root/pkgs/applications/networking/browsers
diff options
context:
space:
mode:
authorMichael Weiss <dev.primeos@gmail.com>2020-04-03 19:17:57 +0200
committerMichael Weiss <dev.primeos@gmail.com>2020-04-06 12:52:52 +0200
commitad3220f9ff3f24a12357ea07d33dff7ba0c54d33 (patch)
tree1d76b706947793f01a518bde791d3112431f4563 /pkgs/applications/networking/browsers
parentc392599be39337a618048f9ae2b9a69f4e543926 (diff)
downloadnixlib-ad3220f9ff3f24a12357ea07d33dff7ba0c54d33.tar
nixlib-ad3220f9ff3f24a12357ea07d33dff7ba0c54d33.tar.gz
nixlib-ad3220f9ff3f24a12357ea07d33dff7ba0c54d33.tar.bz2
nixlib-ad3220f9ff3f24a12357ea07d33dff7ba0c54d33.tar.lz
nixlib-ad3220f9ff3f24a12357ea07d33dff7ba0c54d33.tar.xz
nixlib-ad3220f9ff3f24a12357ea07d33dff7ba0c54d33.tar.zst
nixlib-ad3220f9ff3f24a12357ea07d33dff7ba0c54d33.zip
chromiumDev: Override gn to fix the configuration phase
The configuration phase was failing due to:
```
configuring
ERROR at //BUILD.gn:1376:5: Unknown function.
    filter_exclude([ "$root_build_dir/foo" ],
    ^-------------
```
Diffstat (limited to 'pkgs/applications/networking/browsers')
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix4
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix17
2 files changed, 16 insertions, 5 deletions
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index 167fe072ee58..ce4f1f539b95 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -1,4 +1,4 @@
-{ stdenv, llvmPackages, gn, ninja, which, nodejs, fetchpatch, gnutar
+{ stdenv, llvmPackages, gnChromium, ninja, which, nodejs, fetchpatch, gnutar
 
 # default dependencies
 , bzip2, flac, speex, libopus
@@ -284,7 +284,7 @@ let
       libExecPath="${libExecPath}"
       python build/linux/unbundle/replace_gn_files.py \
         --system-libraries ${toString gnSystemLibraries}
-      ${gn}/bin/gn gen --args=${escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
+      ${gnChromium}/bin/gn gen --args=${escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
 
       # Fail if `gn gen` contains a WARNING.
       grep -o WARNING gn-gen-outputs.txt && echo "Found gn WARNING, exiting nix build" && exit 1
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index b3ca9a79ad30..564e50b86709 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -1,6 +1,6 @@
 { newScope, config, stdenv, llvmPackages_9, llvmPackages_10
 , makeWrapper, ed
-, glib, gtk3, gnome3, gsettings-desktop-schemas
+, glib, gtk3, gnome3, gsettings-desktop-schemas, gn, fetchgit
 , libva ? null
 , gcc, nspr, nss, patchelfUnstable, runCommand
 , lib
@@ -32,9 +32,20 @@ let
 
     upstream-info = (callPackage ./update.nix {}).getChannel channel;
 
-    mkChromiumDerivation = callPackage ./common.nix {
+    mkChromiumDerivation = callPackage ./common.nix ({
       inherit gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs cupsSupport pulseSupport useVaapi useOzone;
-    };
+      gnChromium = gn;
+    } // lib.optionalAttrs (channel == "dev") {
+      # TODO: Remove after we can update gn for the stable channel (backward incompatible changes):
+      gnChromium = gn.overrideAttrs (oldAttrs: {
+        version = "2020-03-23";
+        src = fetchgit {
+          url = "https://gn.googlesource.com/gn";
+          rev = "5ed3c9cc67b090d5e311e4bd2aba072173e82db9";
+          sha256 = "00y2d35wvqmx9glaqhfb62wdgbfpwr77v0934nnvh9ks71vnsjqy";
+        };
+      });
+    });
 
     browser = callPackage ./browser.nix { inherit channel enableWideVine; };