diff --git a/pkgs/applications/networking/browsers/chromium/plugins.nix b/pkgs/applications/networking/browsers/chromium/plugins.nix index 04af90be128..f760b06fe24 100644 --- a/pkgs/applications/networking/browsers/chromium/plugins.nix +++ b/pkgs/applications/networking/browsers/chromium/plugins.nix @@ -1,7 +1,8 @@ { stdenv , enablePepperFlash ? false , enablePepperPDF ? false -, fetchurl # XXX + +, source }: with stdenv.lib; @@ -11,21 +12,20 @@ let name = "chromium-binary-plugins"; # XXX: Only temporary and has to be version-specific - src = fetchurl { - url = "https://dl.google.com/linux/chrome/deb/pool/main/g/" - + "google-chrome-unstable/google-chrome-unstable_" - + "35.0.1897.2-1_amd64.deb"; - sha1 = "b68683fc5321d10536e4135c266b14894b7668ed"; - }; + src = source.plugins; phases = [ "unpackPhase" "patchPhase" "checkPhase" "installPhase" ]; outputs = [ "pdf" "flash" ]; - unpackCmd = '' + unpackCmd = let + chan = if source.channel == "dev" then "chrome-unstable" + else if source.channel == "stable" then "chrome" + else "chrome-${source.channel}"; + in '' ensureDir plugins ar p "$src" data.tar.lzma | tar xJ -C plugins --strip-components=4 \ - ./opt/google/chrome-unstable/PepperFlash \ - ./opt/google/chrome-unstable/libpdf.so + ./opt/google/${chan}/PepperFlash \ + ./opt/google/${chan}/libpdf.so ''; doCheck = true; diff --git a/pkgs/applications/networking/browsers/chromium/source/default.nix b/pkgs/applications/networking/browsers/chromium/source/default.nix index 74cc692919e..eca5767e8c0 100644 --- a/pkgs/applications/networking/browsers/chromium/source/default.nix +++ b/pkgs/applications/networking/browsers/chromium/source/default.nix @@ -12,9 +12,7 @@ with (import ./update.nix { stdenv.mkDerivation { name = "chromium-source-${version}"; - src = fetchurl { - inherit url sha256; - }; + src = fetchurl main; buildInputs = [ python ]; # cannot patch shebangs otherwise @@ -72,6 +70,7 @@ stdenv.mkDerivation { ''; passthru = { - inherit version; + inherit version channel; + plugins = fetchurl binary; }; } diff --git a/pkgs/applications/networking/browsers/chromium/source/update.nix b/pkgs/applications/networking/browsers/chromium/source/update.nix index 7a8144314d5..09f834a90c6 100644 --- a/pkgs/applications/networking/browsers/chromium/source/update.nix +++ b/pkgs/applications/networking/browsers/chromium/source/update.nix @@ -48,9 +48,11 @@ in rec { getChannel = channel: let chanAttrs = builtins.getAttr channel sources; in { + inherit (chanAttrs) version; + main = { url = "${bucketURL}/chromium-${chanAttrs.version}.tar.xz"; - inherit (chanAttrs) version sha256; + inherit (chanAttrs) sha256; }; binary = let @@ -64,7 +66,6 @@ in rec { sha256 = if stdenv.is64bit then chanAttrs.sha256bin64 else chanAttrs.sha256bin32; - inherit (chanAttrs) version; }; };