Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: a1119e22395f
Choose a base ref
...
head repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 07b3634cb4b3
Choose a head ref
  • 4 commits
  • 5 files changed
  • 1 contributor

Commits on Apr 14, 2020

  1. gn: 20190403 -> 2020-03-09

    This updates gn to the required version for chromiumDev (the recommended
    version for the stable release of Chromium isn't sufficient [0]).
    
    [0]: The Chromium build fails during the configuration phase:
    ERROR at //mojo/public/tools/bindings/mojom.gni:393:16: Undefined identifier
                   "cpp_typemaps",
                   ^-------------
    
    (cherry picked from commit a1b4bfe)
    primeos committed Apr 14, 2020
    Copy the full SHA
    4424442 View commit details
  2. aseprite.skia: Override the gn version to fix the build

    With #83290 merged the build would fail during the configuration phase:
    ```
    configuring
    ERROR at //gn/BUILDCONFIG.gn:85:14: Script returned non-zero exit code.
      is_clang = exec_script("gn/is_clang.py",
                 ^----------
    Current dir: /build/source/out/Release/
    Command: python /build/source/gn/gn/is_clang.py cc c++
    Returned 2.
    stderr:
    
    python: can't open file '/build/source/gn/gn/is_clang.py': [Errno 2] No such file or directory
    ```
    
    (cherry picked from commit ad66bbd)
    primeos committed Apr 14, 2020
    Copy the full SHA
    72acf9c View commit details
  3. 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" ],
        ^-------------
    ```
    
    (cherry picked from commit ad3220f)
    primeos committed Apr 14, 2020
    Copy the full SHA
    9a7d216 View commit details
  4. Merge pull request #84713 from primeos/gn-backport

    [20.03] gn: 20190403 -> 2020-03-09 (backport)
    primeos authored Apr 14, 2020
    Copy the full SHA
    07b3634 View commit details
2 changes: 2 additions & 0 deletions pkgs/applications/editors/aseprite/default.nix
Original file line number Diff line number Diff line change
@@ -98,6 +98,8 @@ stdenv.mkDerivation rec {

enableParallelBuilding = true;

passthru = { inherit skia; };

meta = with lib; {
homepage = https://www.aseprite.org/;
description = "Animated sprite editor & pixel art tool";
12 changes: 10 additions & 2 deletions pkgs/applications/editors/aseprite/skia.nix
Original file line number Diff line number Diff line change
@@ -6,6 +6,14 @@
let
# skia-deps.nix is generated by: ./skia-make-deps.sh 'angle2|dng_sdk|piex|sfntly'
depSrcs = import ./skia-deps.nix { inherit fetchgit; };
gnOld = gn.overrideAttrs (oldAttrs: rec {
version = "20190403";
src = fetchgit {
url = "https://gn.googlesource.com/gn";
rev = "64b846c96daeb3eaf08e26d8a84d8451c6cb712b";
sha256 = "1v2kzsshhxn0ck6gd5w16gi2m3higwd9vkyylmsczxfxnw8skgpy";
};
});
in
stdenv.mkDerivation {
name = "skia-aseprite-m71";
@@ -14,11 +22,11 @@ stdenv.mkDerivation {
owner = "aseprite";
repo = "skia";
# latest commit from aseprite-m71 branch
rev = "89e4ca4352d05adc892f5983b108433f29b2c0c2";
rev = "89e4ca4352d05adc892f5983b108433f29b2c0c2"; # TODO: Remove the gnOld override
sha256 = "0n3vrkswvi6rib9zv2pzi18h3j5wm7flmgkgaikcm6q7iw4l2c7x";
};

nativeBuildInputs = [ python2 gn ninja ];
nativeBuildInputs = [ python2 gnOld ninja ];

buildInputs = [
fontconfig expat icu58 libglvnd libjpeg libpng libwebp zlib
4 changes: 2 additions & 2 deletions pkgs/applications/networking/browsers/chromium/common.nix
Original file line number Diff line number Diff line change
@@ -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
@@ -281,7 +281,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
17 changes: 14 additions & 3 deletions pkgs/applications/networking/browsers/chromium/default.nix
Original file line number Diff line number Diff line change
@@ -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; };

30 changes: 18 additions & 12 deletions pkgs/development/tools/build-managers/gn/default.nix
Original file line number Diff line number Diff line change
@@ -1,31 +1,37 @@
{ stdenv, lib, fetchgit, darwin, writeText
, git, ninja, python3 }:
, ninja, python3
}:

let
rev = "64b846c96daeb3eaf08e26d8a84d8451c6cb712b";
sha256 = "1v2kzsshhxn0ck6gd5w16gi2m3higwd9vkyylmsczxfxnw8skgpy";
# Note: Please use the recommended version for Chromium, e.g.:
# https://git.archlinux.org/svntogit/packages.git/tree/trunk/chromium-gn-version.sh?h=packages/gn
rev = "fd3d768bcfd44a8d9639fe278581bd9851d0ce3a";
revNum = "1718"; # git describe HEAD --match initial-commit | cut -d- -f3
version = "2020-03-09";
sha256 = "1asc14y8by7qcn10vbk467hvx93s30pif8r0brissl0sihsaqazr";

shortRev = builtins.substring 0 7 rev;
revShort = builtins.substring 0 7 rev;
lastCommitPosition = writeText "last_commit_position.h" ''
#ifndef OUT_LAST_COMMIT_POSITION_H_
#define OUT_LAST_COMMIT_POSITION_H_
#define LAST_COMMIT_POSITION "(${shortRev})"
#define LAST_COMMIT_POSITION_NUM ${revNum}
#define LAST_COMMIT_POSITION "${revNum} (${revShort})"
#endif // OUT_LAST_COMMIT_POSITION_H_
'';

in
stdenv.mkDerivation {
pname = "gn";
version = "20190403";
in stdenv.mkDerivation {
pname = "gn-unstable";
inherit version;

src = fetchgit {
# Note: The TAR-Archives (+archive/${rev}.tar.gz) are not deterministic!
url = "https://gn.googlesource.com/gn";
inherit rev sha256;
};

nativeBuildInputs = [ ninja python3 git ];
nativeBuildInputs = [ ninja python3 ];
buildInputs = lib.optionals stdenv.isDarwin (with darwin; with apple_sdk.frameworks; [
libobjc
cctools
@@ -49,8 +55,8 @@ stdenv.mkDerivation {
setupHook = ./setup-hook.sh;

meta = with lib; {
description = "A meta-build system that generates NinjaBuild files";
homepage = https://gn.googlesource.com/gn;
description = "A meta-build system that generates build files for Ninja";
homepage = "https://gn.googlesource.com/gn";
license = licenses.bsd3;
platforms = platforms.unix;
maintainers = with maintainers; [ stesie matthewbauer ];