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
base: 78a5623173ce
Choose a base ref
...
head repository: NixOS/nixpkgs
compare: 743311f51406
Choose a head ref
  • 12 commits
  • 6 files changed
  • 4 contributors

Commits on Jan 2, 2021

  1. chromium: disable symbols

    By default GN produces a build with all of the debug assertions enabled (is_debug=true) and including full debug info (symbol_level=2). Setting symbol_level=1 will produce enough information for stack traces, but not line-by-line debugging. Setting symbol_level=0 will include no debug symbols at all. Either will speed up the build compared to full symbols.
    
    (cherry picked from commit a7cbf67)
    TredwellGit authored and primeos committed Jan 2, 2021
    Copy the full SHA
    165ce6e View commit details
    Browse the repository at this point in the history
  2. chromium: enable system ffmpeg, libjpeg, and zlib

    (cherry picked from commit eb74717)
    TredwellGit authored and primeos committed Jan 2, 2021
    Copy the full SHA
    8e03623 View commit details
    Browse the repository at this point in the history
  3. chromium: use official build settings (#101467)

    LLD: https://lld.llvm.org/
    When you link a large program on a multicore machine, you can expect that LLD runs more than twice as fast as the GNU gold linker. Your mileage may vary, though.
    Link-time optimization (LTO) is supported by default.
    Some default settings have been tuned for the 21st century. For example, the stack is marked as non-executable by default to tighten security.
    
    LTO & ThinLTO: https://clang.llvm.org/docs/ThinLTO.html
    LTO (Link Time Optimization) achieves better runtime performance through whole-program analysis and cross-module optimization. However, monolithic LTO implements this by merging all input into a single module, which is not scalable in time or memory, and also prevents fast incremental compiles. ThinLTO is a new approach that is designed to scale like a non-LTO build, while retaining most of the performance achievement of full LTO.
    
    PGO: https://llvm.org/docs/HowToBuildWithPGO.html https://blog.chromium.org/2020/08/chrome-just-got-faster-with-profile.html
    Allows your compiler to better optimize code for how it actually runs. Users report that applying this to Clang and LLVM can decrease overall compile time by 20%.
    Because PGO uses real usage scenarios that match the workflows of Chrome users around the world, the most common tasks get prioritized and made faster. Delivers up to 10% faster page loads.
    
    CFI: https://clang.llvm.org/docs/ControlFlowIntegrity.html https://www.chromium.org/developers/testing/control-flow-integrity
    Aborts the program upon detecting certain forms of undefined behavior that can potentially allow attackers to subvert the program’s control flow. These schemes have been optimized for performance, allowing developers to enable them in release builds.
    By default, a program compiled with CFI will crash with SIGILL if it detects a CFI violation.
    
    Additionally:
    Use minizip instead of zlib. Chromium says zlib but actually uses minizip.
    Remove old unused workarounds.
    Make shell scripts POSIX compliant.
    Update documentation URLs.
    Prepare for using system libraries.
    
    (cherry picked from commit 2bb0110)
    TredwellGit authored and primeos committed Jan 2, 2021
    Copy the full SHA
    87f5560 View commit details
    Browse the repository at this point in the history
  4. chromiumDev: Unmark the build as broken

    The build succeeds again as dirmd is no longer required for building.
    
    (cherry picked from commit 97677fa)
    primeos committed Jan 2, 2021
    Copy the full SHA
    2805395 View commit details
    Browse the repository at this point in the history
  5. chromium: Enable Ozone's DRM/GBM platform [0]

    We've only set ozone_platform_gbm=false to fix the build with Mesa's
    libgbm (vs. Google's own minigbm). However, since this issue has
    resolved itself we can now drop it. Building with the recommended
    settings should also avoid some issues (e.g. #104885).
    
    [0]: https://chromium.googlesource.com/chromium/src.git/+/master/docs/ozone_overview.md#drm_gbm
    
    (cherry picked from commit 2d5bb88)
    primeos committed Jan 2, 2021
    Copy the full SHA
    e6a02bb View commit details
    Browse the repository at this point in the history
  6. chromium: Cleanup useOzone and useVaapi

    But since Ozone is still experimental I'll keep useOzone in common.nix
    for some time.
    
    (cherry picked from commit 063b369)
    primeos committed Jan 2, 2021
    Copy the full SHA
    6a2ac67 View commit details
    Browse the repository at this point in the history
  7. chromedriver: 85.0.4183.87 -> 86.0.4240.22 (#101974)

    (cherry picked from commit 9100dac)
    nbr authored and primeos committed Jan 2, 2021
    Copy the full SHA
    070e35a View commit details
    Browse the repository at this point in the history
  8. chromedriver: 86.0.4240.22 -> 87.0.4280.20

    (cherry picked from commit 729dee1)
    jonringer authored and primeos committed Jan 2, 2021
    Copy the full SHA
    32a5032 View commit details
    Browse the repository at this point in the history
  9. chromedriver: Switch to Chromium's upstream-info.json (#105054)

    This enables automatic updates and fixes #85629.
    
    (cherry picked from commit 6aea53c)
    primeos committed Jan 2, 2021
    Copy the full SHA
    dbaaeaf View commit details
    Browse the repository at this point in the history
  10. chromium: Set use_vaapi=!stdenv.isAarch64 for M87

    I've removed that option in 063b369 but forgot that M87 still
    defaults to use_vaapi=false.
    
    (cherry picked from commit fb0239c)
    primeos committed Jan 2, 2021
    Copy the full SHA
    2696585 View commit details
    Browse the repository at this point in the history
  11. chromium: Drop gn build arguments that match the default

    (cherry picked from commit f097994)
    primeos committed Jan 2, 2021
    Copy the full SHA
    321ecef View commit details
    Browse the repository at this point in the history

Commits on Jan 3, 2021

  1. Merge pull request #108231 from primeos/chromium-backport

    [20.09] chromium: Backport various patches from nixos-unstable
    primeos committed Jan 3, 2021
    Copy the full SHA
    743311f View commit details
    Browse the repository at this point in the history