chromium: Update beta and dev channels.

Overview of the updated versions:

beta: 45.0.2454.15 -> 45.0.2454.26
dev: 45.0.2454.15 -> 46.0.2471.2

Changes for getting beta and dev channel to build:

* The reference for chrome::FILE_FLASH_PLUGIN doesn't exist anymore in
version 46, because it has been dropped upstream, see the following
review URL:

https://codereview.chromium.org/1255943002

We set the PPAPI Flash path using a command line flag anyway, so it
doesn't hurt us if we don't patch that path (which was an old
artifact from the NSAPI->PPAPI conversion anyway).

Changes for the dev channel only:

* It seems that in the SCM, chrome/test/data/webui/ contains a lot of
files, however they are missing in the tarball.

This has been reported upstream at: https://crbug.com/515917

Our fix is to just not include webui/i18n_process_css_test.html at
all, to avoid the configure (gyp) phase to fail, because we're not
building tests anyway.

All channels built and tested by my Hydra instance at:

https://headcounter.org/hydra/eval/218978

Test reports:

x86: https://headcounter.org/hydra/build/723341/download/1/log.html
x86_64: https://headcounter.org/hydra/build/723342/download/1/log.html

Signed-off-by: aszlig <aszlig@redmoonstudios.org>

aszlig 471cdd15 a5645c58

+102 -9
+14
pkgs/applications/networking/browsers/chromium/source/build_fixes_46.patch
··· 1 + diff --git a/chrome/test/data/webui_test_resources.grd b/chrome/test/data/webui_test_resources.grd 2 + index 6f8530d..f92a76a 100644 3 + --- a/chrome/test/data/webui_test_resources.grd 4 + +++ b/chrome/test/data/webui_test_resources.grd 5 + @@ -6,9 +6,4 @@ 6 + </output> 7 + <output filename="webui_test_resources.pak" type="data_package" /> 8 + </outputs> 9 + - <release seq="1"> 10 + - <includes> 11 + - <include name="IDR_WEBUI_TEST_I18N_PROCESS_CSS_TEST" file="webui/i18n_process_css_test.html" flattenhtml="true" allowexternalscript="true" type="BINDATA" /> 12 + - </includes> 13 + - </release> 14 + </grit>
+5 -1
pkgs/applications/networking/browsers/chromium/source/default.nix
··· 44 44 done 45 45 ''; 46 46 47 - patches = singleton ./nix_plugin_paths_44.patch; 47 + patches = 48 + if versionOlder version "45.0.0.0" 49 + then singleton ./nix_plugin_paths_44.patch 50 + else singleton ./nix_plugin_paths_46.patch ++ 51 + optional (!versionOlder version "46.0.0.0") ./build_fixes_46.patch; 48 52 49 53 patchPhase = let 50 54 diffmod = sym: "/^${sym} /{s/^${sym} //;${transform ""};s/^/${sym} /}";
+75
pkgs/applications/networking/browsers/chromium/source/nix_plugin_paths_46.patch
··· 1 + diff --git a/chrome/common/chrome_paths.cc b/chrome/common/chrome_paths.cc 2 + index 74bf041..5f34198 100644 3 + --- a/chrome/common/chrome_paths.cc 4 + +++ b/chrome/common/chrome_paths.cc 5 + @@ -66,21 +66,14 @@ static base::LazyInstance<base::FilePath> 6 + g_invalid_specified_user_data_dir = LAZY_INSTANCE_INITIALIZER; 7 + 8 + // Gets the path for internal plugins. 9 + -bool GetInternalPluginsDirectory(base::FilePath* result) { 10 + -#if defined(OS_MACOSX) && !defined(OS_IOS) 11 + - // If called from Chrome, get internal plugins from a subdirectory of the 12 + - // framework. 13 + - if (base::mac::AmIBundled()) { 14 + - *result = chrome::GetFrameworkBundlePath(); 15 + - DCHECK(!result->empty()); 16 + - *result = result->Append("Internet Plug-Ins"); 17 + - return true; 18 + - } 19 + - // In tests, just look in the module directory (below). 20 + -#endif 21 + - 22 + - // The rest of the world expects plugins in the module directory. 23 + - return PathService::Get(base::DIR_MODULE, result); 24 + +bool GetInternalPluginsDirectory(base::FilePath* result, 25 + + const std::string& ident) { 26 + + std::string full_env = std::string("NIX_CHROMIUM_PLUGIN_PATH_") + ident; 27 + + const char* value = getenv(full_env.c_str()); 28 + + if (value == NULL) 29 + + return PathService::Get(base::DIR_MODULE, result); 30 + + else 31 + + *result = base::FilePath(value); 32 + } 33 + 34 + #if defined(OS_WIN) 35 + @@ -253,11 +246,11 @@ bool PathProvider(int key, base::FilePath* result) { 36 + create_dir = true; 37 + break; 38 + case chrome::DIR_INTERNAL_PLUGINS: 39 + - if (!GetInternalPluginsDirectory(&cur)) 40 + + if (!GetInternalPluginsDirectory(&cur, "ALL")) 41 + return false; 42 + break; 43 + case chrome::DIR_PEPPER_FLASH_PLUGIN: 44 + - if (!GetInternalPluginsDirectory(&cur)) 45 + + if (!GetInternalPluginsDirectory(&cur, "PEPPERFLASH")) 46 + return false; 47 + cur = cur.Append(kPepperFlashBaseDirectory); 48 + break; 49 + @@ -314,7 +307,7 @@ bool PathProvider(int key, base::FilePath* result) { 50 + // We currently need a path here to look up whether the plugin is disabled 51 + // and what its permissions are. 52 + case chrome::FILE_NACL_PLUGIN: 53 + - if (!GetInternalPluginsDirectory(&cur)) 54 + + if (!GetInternalPluginsDirectory(&cur, "NACL")) 55 + return false; 56 + cur = cur.Append(kInternalNaClPluginFileName); 57 + break; 58 + @@ -349,7 +342,7 @@ bool PathProvider(int key, base::FilePath* result) { 59 + cur = cur.DirName(); 60 + } 61 + #else 62 + - if (!GetInternalPluginsDirectory(&cur)) 63 + + if (!GetInternalPluginsDirectory(&cur, "PNACL")) 64 + return false; 65 + #endif 66 + cur = cur.Append(FILE_PATH_LITERAL("pnacl")); 67 + @@ -366,7 +359,7 @@ bool PathProvider(int key, base::FilePath* result) { 68 + // In the component case, this is the source adapter. Otherwise, it is the 69 + // actual Pepper module that gets loaded. 70 + case chrome::FILE_WIDEVINE_CDM_ADAPTER: 71 + - if (!GetInternalPluginsDirectory(&cur)) 72 + + if (!GetInternalPluginsDirectory(&cur, "WIDEVINE")) 73 + return false; 74 + cur = cur.AppendASCII(kWidevineCdmAdapterFileName); 75 + break;
+8 -8
pkgs/applications/networking/browsers/chromium/source/sources.nix
··· 1 1 # This file is autogenerated from update.sh in the parent directory. 2 2 { 3 3 dev = { 4 - version = "45.0.2454.15"; 5 - sha256 = "1zg562cpn9ddai92jdjg3frhmvbhbkf71ysprwqa3rgbg6w8ipzj"; 6 - sha256bin32 = "1fcwzwb6zq7ld7fs0iws0d9jmxhjhdax4y744dx4d7bc77357x3m"; 7 - sha256bin64 = "0273dy5b1r9s9g8ixrafnxm8jnn4ha36r3b3ckdabm9y4pqwx54s"; 4 + version = "46.0.2471.2"; 5 + sha256 = "1gmdcb4sjc2l9y46ybpr64gnzjg3bi93x4f42bssrb3nzhpjpmgg"; 6 + sha256bin32 = "11rg4rkw89zvvxlpil680n59y49w9msxg4qp93iilq0n7ppk5qx9"; 7 + sha256bin64 = "1xqibl37mr6xvqqd1ainvkv11shirxb7ay9sfjgq8k72xk7wdx8k"; 8 8 }; 9 9 beta = { 10 - version = "45.0.2454.15"; 11 - sha256 = "1zg562cpn9ddai92jdjg3frhmvbhbkf71ysprwqa3rgbg6w8ipzj"; 12 - sha256bin32 = "1scjirp54z08h36zs9z9yq4pxcximf00krlip9dkvxsxh65qiw5w"; 13 - sha256bin64 = "14l8lka8jci1d90vbz5kpl20mk98n1ak4mw667dkz89cch5gal4s"; 10 + version = "45.0.2454.26"; 11 + sha256 = "0ghgvll1q6nw1ds139nmabbilagffyln7k313w1yvn707wp7yg33"; 12 + sha256bin32 = "0611ad202vck0zi0jcldcr4j81kd9cnabsc9kssc6m46fy5rhhbk"; 13 + sha256bin64 = "0bwmpl7rq2nj0jf1xqx7n1mvx9kigbvpz2f8v0azwv4nb56p9c2q"; 14 14 }; 15 15 stable = { 16 16 version = "44.0.2403.130";