nixpkgs/pkgs/applications/networking/browsers/chromium/default.nix
aszlig 202755ca2f
chromium: Properly pass packageName and version.
We don't want ta have the source derivation in the runtime dependencies
of the browser itself. Also, we've broken the Firefox wrapper, because
we've no longer exposed the packageName attribute.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-19 03:58:44 +02:00

58 lines
1.4 KiB
Nix

{ newScope, stdenv, makeWrapper
# package customization
, channel ? "stable"
, enableSELinux ? false
, enableNaCl ? false
, useOpenSSL ? false
, gnomeSupport ? false
, gnomeKeyringSupport ? false
, proprietaryCodecs ? true
, enablePepperFlash ? false
, enablePepperPDF ? false
, cupsSupport ? false
, pulseSupport ? false
}:
let
callPackage = newScope chromium;
chromium = {
source = callPackage ./source.nix {
inherit channel;
# XXX: common config
inherit useOpenSSL;
};
browser = callPackage ./browser.nix {
inherit enableSELinux enableNaCl useOpenSSL gnomeSupport
gnomeKeyringSupport proprietaryCodecs cupsSupport
pulseSupport;
};
sandbox = callPackage ./sandbox.nix { };
plugins = callPackage ./plugins.nix {
inherit enablePepperFlash enablePepperPDF;
};
};
in stdenv.mkDerivation {
name = "chromium-${channel}-${chromium.browser.version}";
buildInputs = [ makeWrapper ];
buildCommand = let
browserBinary = "${chromium.browser}/libexec/chromium/chromium";
sandboxBinary = "${chromium.sandbox}/bin/chromium-sandbox";
in ''
ensureDir "$out/bin"
ln -s "${chromium.browser}/share" "$out/share"
makeWrapper "${browserBinary}" "$out/bin/chromium" \
--set CHROMIUM_SANDBOX_BINARY_PATH "${sandboxBinary}" \
--add-flags "${chromium.plugins.flagsEnabled}"
'';
inherit (chromium.browser) meta packageName;
}