Merge branch 'master.upstream' into staging.upstream

This commit is contained in:
William A. Kennington III 2015-06-22 20:03:10 -07:00
commit 1e58156159
10 changed files with 64 additions and 42 deletions

View File

@ -12,9 +12,8 @@ mkChromiumDerivation (base: rec {
cp -v "$buildPath/"*.pak "$buildPath/"*.bin "$libExecPath/" cp -v "$buildPath/"*.pak "$buildPath/"*.bin "$libExecPath/"
cp -v "$buildPath/icudtl.dat" "$libExecPath/" cp -v "$buildPath/icudtl.dat" "$libExecPath/"
cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/" cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/"
cp -v "$buildPath/libffmpegsumo.so" "$libExecPath/" ${optionalString (versionOlder base.version "45.0.0.0") ''
${optionalString (versionOlder base.version "42.0.0.0") '' cp -v "$buildPath/libffmpegsumo.so" "$libExecPath/"
cp -v "$buildPath/libpdf.so" "$libExecPath/"
''} ''}
cp -v "$buildPath/chrome" "$libExecPath/$packageName" cp -v "$buildPath/chrome" "$libExecPath/$packageName"

View File

@ -21,6 +21,7 @@
# package customization # package customization
, enableSELinux ? false, libselinux ? null , enableSELinux ? false, libselinux ? null
, enableNaCl ? false , enableNaCl ? false
, enableHotwording ? false
, useOpenSSL ? false, nss ? null, openssl ? null , useOpenSSL ? false, nss ? null, openssl ? null
, gnomeSupport ? false, gnome ? null , gnomeSupport ? false, gnome ? null
, gnomeKeyringSupport ? false, libgnome_keyring3 ? null , gnomeKeyringSupport ? false, libgnome_keyring3 ? null
@ -130,11 +131,7 @@ let
chmod -R u+w third_party chmod -R u+w third_party
''; '';
postPatch = optionalString (versionOlder version "42.0.0.0") '' postPatch = ''
sed -i -e '/base::FilePath exe_dir/,/^ *} *$/c \
sandbox_binary = base::FilePath(getenv("CHROMIUM_SANDBOX_BINARY_PATH"));
' sandbox/linux/suid/client/setuid_sandbox_client.cc
'' + ''
sed -i -e '/module_path *=.*libexif.so/ { sed -i -e '/module_path *=.*libexif.so/ {
s|= [^;]*|= base::FilePath().AppendASCII("${libexif}/lib/libexif.so")| s|= [^;]*|= base::FilePath().AppendASCII("${libexif}/lib/libexif.so")|
}' chrome/utility/media_galleries/image_metadata_extractor.cc }' chrome/utility/media_galleries/image_metadata_extractor.cc
@ -158,11 +155,10 @@ let
use_pulseaudio = pulseSupport; use_pulseaudio = pulseSupport;
linux_link_pulseaudio = pulseSupport; linux_link_pulseaudio = pulseSupport;
disable_nacl = !enableNaCl; disable_nacl = !enableNaCl;
enable_hotwording = enableHotwording;
use_openssl = useOpenSSL; use_openssl = useOpenSSL;
selinux = enableSELinux; selinux = enableSELinux;
use_cups = cupsSupport; use_cups = cupsSupport;
} // optionalAttrs (versionOlder version "42.0.0.0") {
linux_sandbox_chrome_path="${libExecPath}/${packageName}";
} // { } // {
werror = ""; werror = "";
clang = false; clang = false;

View File

@ -4,6 +4,7 @@
, channel ? "stable" , channel ? "stable"
, enableSELinux ? false , enableSELinux ? false
, enableNaCl ? false , enableNaCl ? false
, enableHotwording ? false
, useOpenSSL ? false , useOpenSSL ? false
, gnomeSupport ? false , gnomeSupport ? false
, gnomeKeyringSupport ? false , gnomeKeyringSupport ? false
@ -26,9 +27,9 @@ let
}; };
mkChromiumDerivation = callPackage ./common.nix { mkChromiumDerivation = callPackage ./common.nix {
inherit enableSELinux enableNaCl useOpenSSL gnomeSupport inherit enableSELinux enableNaCl enableHotwording useOpenSSL gnomeSupport
gnomeKeyringSupport proprietaryCodecs cupsSupport gnomeKeyringSupport proprietaryCodecs cupsSupport pulseSupport
pulseSupport hiDPISupport; hiDPISupport;
}; };
browser = callPackage ./browser.nix { }; browser = callPackage ./browser.nix { };
@ -73,15 +74,12 @@ in stdenv.mkDerivation {
sandboxBinary = "${chromium.sandbox}/bin/chromium-sandbox"; sandboxBinary = "${chromium.sandbox}/bin/chromium-sandbox";
mkEnvVar = key: val: "--set '${key}' '${val}'"; mkEnvVar = key: val: "--set '${key}' '${val}'";
envVars = chromium.plugins.settings.envVars or {}; envVars = chromium.plugins.settings.envVars or {};
isVer42 = !stdenv.lib.versionOlder chromium.browser.version "42.0.0.0";
flags = chromium.plugins.settings.flags or []; flags = chromium.plugins.settings.flags or [];
setBinPath = "--set CHROMIUM_SANDBOX_BINARY_PATH \"${sandboxBinary}\"";
in with stdenv.lib; '' in with stdenv.lib; ''
mkdir -p "$out/bin" "$out/share/applications" mkdir -p "$out/bin" "$out/share/applications"
ln -s "${chromium.browser}/share" "$out/share" ln -s "${chromium.browser}/share" "$out/share"
makeWrapper "${browserBinary}" "$out/bin/chromium" \ makeWrapper "${browserBinary}" "$out/bin/chromium" \
${optionalString (!isVer42) setBinPath} \
${concatStrings (mapAttrsToList mkEnvVar envVars)} \ ${concatStrings (mapAttrsToList mkEnvVar envVars)} \
--add-flags "${concatStringsSep " " flags}" --add-flags "${concatStringsSep " " flags}"

View File

@ -21,10 +21,9 @@ let
chan = if source.channel == "dev" then "chrome-unstable" chan = if source.channel == "dev" then "chrome-unstable"
else if source.channel == "stable" then "chrome" else if source.channel == "stable" then "chrome"
else "chrome-${source.channel}"; else "chrome-${source.channel}";
cext = if versionOlder source.version "41.0.0.0" then "lzma" else "xz";
in '' in ''
mkdir -p plugins mkdir -p plugins
ar p "$src" data.tar.${cext} | tar xJ -C plugins --strip-components=4 \ ar p "$src" data.tar.xz | tar xJ -C plugins --strip-components=4 \
./opt/google/${chan}/PepperFlash \ ./opt/google/${chan}/PepperFlash \
./opt/google/${chan}/libwidevinecdm.so \ ./opt/google/${chan}/libwidevinecdm.so \
./opt/google/${chan}/libwidevinecdmadapter.so ./opt/google/${chan}/libwidevinecdmadapter.so

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, python { stdenv, fetchurl, fetchpatch, patchutils, python
, channel ? "stable" , channel ? "stable"
, useOpenSSL # XXX , useOpenSSL # XXX
}: }:
@ -19,6 +19,7 @@ let
]); ]);
pre44 = versionOlder version "44.0.0.0"; pre44 = versionOlder version "44.0.0.0";
is44 = versionOlder version "45.0.0.0" && !pre44;
in stdenv.mkDerivation { in stdenv.mkDerivation {
name = "chromium-source-${version}"; name = "chromium-source-${version}";
@ -47,11 +48,39 @@ in stdenv.mkDerivation {
done done
''; '';
patches = if pre44 then [ patches = let
./nix_plugin_paths_42.patch baseURL = "https://codereview.chromium.org/download";
] else [
./nix_plugin_paths_44.patch mkBlinkFix = issue: sha256: fetchpatch {
]; url = "${baseURL}/issue${issue}.diff";
inherit sha256;
postFetch = ''
sed -i -e 's,^\(---\|+++\) *[ab]/,&third_party/WebKit/,' "$out"
'';
};
fixes44 = [
# WebPluginContainer::setNeedsLayout
# https://codereview.chromium.org/1157943002/
(mkBlinkFix "1157943002_20001"
"0932yd15zlh2g5a5bbm6qrnfvv22jlfdg8pj0w9z58m5zdzw1p82")
# WebRuntimeFeatures::enablePermissionsAPI
# https://codereview.chromium.org/1156113007/
(mkBlinkFix "1156113007_1"
"1v76brrgdziv1q62ba4bimg0my2dmnkyl68b21nv2vw661v0hzwh")
# Revert of https://codereview.chromium.org/1150543002/
(fetchpatch {
url = "${baseURL}/issue1150543002_1.diff";
sha256 = "0x9sya0m1zcb2vcp2vfss88qqdrh6bzcbx2ngfiql7rkbynnpqn6";
postFetch = ''
${patchutils}/bin/interdiff "$out" /dev/null > reversed.patch
mv reversed.patch "$out"
'';
})
];
pluginPaths = if pre44 then singleton ./nix_plugin_paths_42.patch
else singleton ./nix_plugin_paths_44.patch;
in pluginPaths ++ optionals is44 fixes44;
patchPhase = let patchPhase = let
diffmod = sym: "/^${sym} /{s/^${sym} //;${transform ""};s/^/${sym} /}"; diffmod = sym: "/^${sym} /{s/^${sym} //;${transform ""};s/^/${sym} /}";

View File

@ -1,21 +1,21 @@
# This file is autogenerated from update.sh in the parent directory. # This file is autogenerated from update.sh in the parent directory.
{ {
dev = { dev = {
version = "45.0.2421.0"; version = "45.0.2431.0";
sha256 = "1qc80y0mhwnvxrvpc3csskgb536wq34c0fgk19h1qb4xc62lxhsk"; sha256 = "0irlrym8r1wa6zb5bg4paxy3h5fg300k5c9vkj3xmhdp567clfja";
sha256bin32 = "1xqhyrlmh00md6i1q4wr0xihqbvcpshzscnjclrn53dlw5zs2s89"; sha256bin32 = "1lfrd7x7cav5mr7pg0a3d4a9dyy6f0rklarprfrcvqwipjkddb3f";
sha256bin64 = "0akdhwwdfcbqfh65a82zigbhsi8sbhhw6904cjprb3bmv4l3c598"; sha256bin64 = "1jzmkgiqn17ynbv0xljiifvlj1136jq98zrkd4hdmkgv8xrrzd74";
}; };
beta = { beta = {
version = "44.0.2403.39"; version = "44.0.2403.52";
sha256 = "15c4adg0r9ym3pxya7vv4d148gv2pdwaaymxvvw511fjwffdv71n"; sha256 = "0zgcqbxm2slxpj6i50w7r3xxql1k6kgd51qn8w8gwfzhmad4zxyx";
sha256bin32 = "1gaypkah10y31gb5f7vnyv0v73z5zjznmsp6vh2m4hfajx7s55jn"; sha256bin32 = "1kfgl2l7j5fhj6wg4i3bsany2rlwspprypdy0z7k3pqiwwyiw658";
sha256bin64 = "1j1ma6asl3ibjv3apyw24vhyi1qy64f586w8jizqzp4h962gj95c"; sha256bin64 = "1sabqqh1hii7appmx6xwabnapf4cv7smsy31nvz063fa5p6h21m8";
}; };
stable = { stable = {
version = "43.0.2357.124"; version = "43.0.2357.125";
sha256 = "09m8bb5f17mx6cd3h5irslw07h2s0drda35v17vcr7qfhk8jdh92"; sha256 = "01alba50zrc50bn4p3f298khk8fam2rv5wyysz7rq3zrjg8785xg";
sha256bin32 = "15n2fla1ixrqzi0in0vyl8n5wkv20fpd96lff65rwr9diylz287p"; sha256bin32 = "0527bdlf4nd4b1ydmwn6rnxy377388qb98v9anicfd4bc2p9jjml";
sha256bin64 = "0x6igpcf29zmwqgphvy9nm527k9g7na2cvgc5nimw4fs5dakzzjr"; sha256bin64 = "0yhgcjaxcpgk32l1sjrgkq447ywcj156a7372v87m22dcwl8fi01";
}; };
} }

View File

@ -18,5 +18,6 @@ fetchurl ({
--strip=${toString stripLen} \ --strip=${toString stripLen} \
--clean "$out" > "$tmpfile" --clean "$out" > "$tmpfile"
mv "$tmpfile" "$out" mv "$tmpfile" "$out"
${args.postFetch or ""}
''; '';
} // builtins.removeAttrs args ["stripLen"]) } // builtins.removeAttrs args ["stripLen"])

View File

@ -10,8 +10,8 @@
let let
version = "2.0.15"; version = "2.0.16";
sha256 = "00rxmf8il9w1fmfpxfy9gbhbvgid5h8d80g3ljw25jscr00lcyh0"; sha256 = "1fpvgmakmxy1lnygccpc32q53pa36bwy0lqdvb6hsifkxymdw8y5";
in in

View File

@ -10,8 +10,8 @@
let let
version = "2.1.6"; version = "2.1.7";
sha256 = "1xq96h33f4xmld114mrd57z396f9ykcj0xy50fnnhy5mhafkn4n2"; sha256 = "12chnxcl9zg20d0l4rlzp13cnxvdqr8bx3bbvwbcpnh7ir5s7ldd";
in in

View File

@ -4,11 +4,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "mysql-${version}"; name = "mysql-${version}";
version = "5.5.43"; version = "5.5.44";
src = fetchurl { src = fetchurl {
url = "http://mysql.mirrors.pair.com/Downloads/MySQL-5.5/${name}.tar.gz"; url = "http://mysql.mirrors.pair.com/Downloads/MySQL-5.5/${name}.tar.gz";
sha256 = "1kbl8xp6xi9yclc4q0q97s89rr498mm0avpbkmsa4ff8wmwxzls3"; sha256 = "1pp5ngm4ibnp8xnn9haz1db0favd1i7cxdgl5z4677mkgljmpw45";
}; };
patches = if stdenv.isCygwin then [ patches = if stdenv.isCygwin then [