diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix index 9fbc8959ad2..4f4fbb8d3bf 100644 --- a/pkgs/applications/networking/browsers/chromium/common.nix +++ b/pkgs/applications/networking/browsers/chromium/common.nix @@ -56,8 +56,9 @@ let use_system_flac = true; use_system_libevent = true; use_system_libexpat = true; - use_system_libjpeg = true; - use_system_libpng = versionOlder upstream-info.version "51.0.0.0"; + # XXX: System libjpeg fails to link for version 52.0.2743.10 + use_system_libjpeg = upstream-info.version != "52.0.2743.10"; + use_system_libpng = false; use_system_libwebp = true; use_system_libxml = true; use_system_opus = true; @@ -123,15 +124,13 @@ let ++ optionals gnomeSupport [ gnome.GConf libgcrypt ] ++ optional enableSELinux libselinux ++ optionals cupsSupport [ libgcrypt cups ] - ++ optional pulseSupport libpulseaudio - ++ optional (versionOlder version "51.0.0.0") libexif; + ++ optional pulseSupport libpulseaudio; patches = [ - ./patches/build_fixes_46.patch ./patches/widevine.patch - (if versionOlder version "50.0.0.0" - then ./patches/nix_plugin_paths_46.patch - else ./patches/nix_plugin_paths_50.patch) + (if versionOlder version "52.0.0.0" + then ./patches/nix_plugin_paths_50.patch + else ./patches/nix_plugin_paths_52.patch) ]; postPatch = '' @@ -141,20 +140,17 @@ let -e "/python_arch/s/: *'[^']*'/: '""'/" \ build/common.gypi chrome/chrome_tests.gypi - ${optionalString (versionOlder version "51.0.0.0") '' - sed -i -e '/module_path *=.*libexif.so/ { - s|= [^;]*|= base::FilePath().AppendASCII("${libexif}/lib/libexif.so")| - }' chrome/utility/media_galleries/image_metadata_extractor.cc - ''} - sed -i -e '/lib_loader.*Load/s!"\(libudev\.so\)!"${libudev.out}/lib/\1!' \ device/udev_linux/udev?_loader.cc sed -i -e '/libpci_loader.*Load/s!"\(libpci\.so\)!"${pciutils}/lib/\1!' \ gpu/config/gpu_info_collector_linux.cc - '' + optionalString (!versionOlder version "51.0.0.0") '' + sed -i -re 's/([^:])\<(isnan *\()/\1std::\2/g' \ chrome/browser/ui/webui/engagement/site_engagement_ui.cc + '' + optionalString (versionAtLeast version "52.0.0.0") '' + sed -i -re 's/([^:])\<(isnan *\()/\1std::\2/g' \ + third_party/pdfium/xfa/fxbarcode/utils.h ''; gypFlags = mkGypFlags (gypFlagsUseSystemLibs // { @@ -185,9 +181,6 @@ let google_api_key = "AIzaSyDGi15Zwl11UNe6Y-5XW_upsfyw31qwZPI"; google_default_client_id = "404761575300.apps.googleusercontent.com"; google_default_client_secret = "9rIFQjfnkykEmqb6FfjJQD1D"; - - } // optionalAttrs (versionOlder version "51.0.0.0") { - use_system_libexif = true; } // optionalAttrs proprietaryCodecs { # enable support for the H.264 codec proprietary_codecs = true; diff --git a/pkgs/applications/networking/browsers/chromium/patches/build_fixes_46.patch b/pkgs/applications/networking/browsers/chromium/patches/build_fixes_46.patch deleted file mode 100644 index c0aeb5d3a56..00000000000 --- a/pkgs/applications/networking/browsers/chromium/patches/build_fixes_46.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/chrome/test/data/webui_test_resources.grd b/chrome/test/data/webui_test_resources.grd -index 6f8530d..f92a76a 100644 ---- a/chrome/test/data/webui_test_resources.grd -+++ b/chrome/test/data/webui_test_resources.grd -@@ -6,9 +6,4 @@ - - - -- -- -- -- -- - diff --git a/pkgs/applications/networking/browsers/chromium/patches/nix_plugin_paths_46.patch b/pkgs/applications/networking/browsers/chromium/patches/nix_plugin_paths_52.patch similarity index 74% rename from pkgs/applications/networking/browsers/chromium/patches/nix_plugin_paths_46.patch rename to pkgs/applications/networking/browsers/chromium/patches/nix_plugin_paths_52.patch index 7482be7062d..fc1b609479b 100644 --- a/pkgs/applications/networking/browsers/chromium/patches/nix_plugin_paths_46.patch +++ b/pkgs/applications/networking/browsers/chromium/patches/nix_plugin_paths_52.patch @@ -1,13 +1,13 @@ diff --git a/chrome/common/chrome_paths.cc b/chrome/common/chrome_paths.cc -index 74bf041..5f34198 100644 +index f4e119d..d9775bd 100644 --- a/chrome/common/chrome_paths.cc +++ b/chrome/common/chrome_paths.cc -@@ -66,21 +66,14 @@ static base::LazyInstance +@@ -68,21 +68,14 @@ static base::LazyInstance g_invalid_specified_user_data_dir = LAZY_INSTANCE_INITIALIZER; // Gets the path for internal plugins. -bool GetInternalPluginsDirectory(base::FilePath* result) { --#if defined(OS_MACOSX) && !defined(OS_IOS) +-#if defined(OS_MACOSX) - // If called from Chrome, get internal plugins from a subdirectory of the - // framework. - if (base::mac::AmIBundled()) { @@ -31,8 +31,8 @@ index 74bf041..5f34198 100644 + *result = base::FilePath(value); } - #if defined(OS_WIN) -@@ -253,11 +246,11 @@ bool PathProvider(int key, base::FilePath* result) { + // Gets the path for bundled implementations of components. Note that these +@@ -272,7 +265,7 @@ bool PathProvider(int key, base::FilePath* result) { create_dir = true; break; case chrome::DIR_INTERNAL_PLUGINS: @@ -40,13 +40,17 @@ index 74bf041..5f34198 100644 + if (!GetInternalPluginsDirectory(&cur, "ALL")) return false; break; + case chrome::DIR_COMPONENTS: +@@ -280,7 +273,7 @@ bool PathProvider(int key, base::FilePath* result) { + return false; + break; case chrome::DIR_PEPPER_FLASH_PLUGIN: - if (!GetInternalPluginsDirectory(&cur)) + if (!GetInternalPluginsDirectory(&cur, "PEPPERFLASH")) return false; cur = cur.Append(kPepperFlashBaseDirectory); break; -@@ -314,7 +307,7 @@ bool PathProvider(int key, base::FilePath* result) { +@@ -323,7 +316,7 @@ bool PathProvider(int key, base::FilePath* result) { // We currently need a path here to look up whether the plugin is disabled // and what its permissions are. case chrome::FILE_NACL_PLUGIN: @@ -55,7 +59,7 @@ index 74bf041..5f34198 100644 return false; cur = cur.Append(kInternalNaClPluginFileName); break; -@@ -349,7 +342,7 @@ bool PathProvider(int key, base::FilePath* result) { +@@ -358,7 +351,7 @@ bool PathProvider(int key, base::FilePath* result) { cur = cur.DirName(); } #else @@ -64,12 +68,3 @@ index 74bf041..5f34198 100644 return false; #endif cur = cur.Append(FILE_PATH_LITERAL("pnacl")); -@@ -366,7 +359,7 @@ bool PathProvider(int key, base::FilePath* result) { - // In the component case, this is the source adapter. Otherwise, it is the - // actual Pepper module that gets loaded. - case chrome::FILE_WIDEVINE_CDM_ADAPTER: -- if (!GetInternalPluginsDirectory(&cur)) -+ if (!GetInternalPluginsDirectory(&cur, "WIDEVINE")) - return false; - cur = cur.AppendASCII(kWidevineCdmAdapterFileName); - break; diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix index 4cc459397d3..073d7574502 100644 --- a/pkgs/applications/networking/browsers/chromium/upstream-info.nix +++ b/pkgs/applications/networking/browsers/chromium/upstream-info.nix @@ -1,18 +1,18 @@ # This file is autogenerated from update.sh in the same directory. { beta = { - sha256 = "0l1434wqhi6c24qyb5ysg1wnd0s9l9i1k6kh6wr3s4acrsbb7p12"; - sha256bin64 = "1ssw92l8zwj8x0zs5h6vxl7d7gj0lqb0x71vsazgd4d0p23nglb1"; - version = "51.0.2704.47"; + sha256 = "1sgfwh2b0aw6l5v4ggk7frcy306x3ygxk81p3h6zdy5s1rpf8hxj"; + sha256bin64 = "14qj8l5dapha87ndyzcs3spaxp3s9sapcjcplkisbivis09a29cb"; + version = "51.0.2704.63"; }; dev = { - sha256 = "0czp4p434yqr5rv3w2vypkyis13x8lc4xph8yh84r9big1ga6fqs"; - sha256bin64 = "0hahamx9k14czswqdh8iwh69lsml0acca5kxvp2kw471g3s55n78"; - version = "52.0.2729.3"; + sha256 = "1bbwbn0svgr2pfkza8pdq61bjzlj50axdm5bqqxi51hab51fc9ww"; + sha256bin64 = "1s02q72b84g9p5i7y1hh1c67qjb92934dqqwd7w6j0jz8ix71nzc"; + version = "52.0.2743.10"; }; stable = { - sha256 = "1ijpbmn38znjjb3h8579x5gsclgjx122lvm0afv17gf2j3w5w4qj"; - sha256bin64 = "17vqvxmy6llg7dpc3pxi0qhwpm9qc9rsq8lgknhwwygvkl8g14sb"; - version = "50.0.2661.102"; + sha256 = "1sgfwh2b0aw6l5v4ggk7frcy306x3ygxk81p3h6zdy5s1rpf8hxj"; + sha256bin64 = "1kjnxxf2ak8v1akzxz46r7a7r6bhxjb2y9fhr1fqvks3m4jc5zqw"; + version = "51.0.2704.63"; }; }