Generalize `firefox-wrapper' so that it can be used for GNU IceCat.

svn path=/nixpkgs/trunk/; revision=12439
This commit is contained in:
Ludovic Courtès 2008-07-28 16:25:09 +00:00
parent b3bc47784c
commit 6cb7c2fa68
2 changed files with 17 additions and 11 deletions

View file

@ -1,12 +1,19 @@
{stdenv, firefox, nameSuffix ? "", makeWrapper, plugins}:
{stdenv, browser, browserName ? "firefox", nameSuffix ? "", makeWrapper, plugins}:
stdenv.mkDerivation {
name = firefox.name + "-with-plugins";
name = browser.name + "-with-plugins";
buildInputs = [makeWrapper];
buildCommand = ''
makeWrapper "${firefox}/bin/firefox" "$out/bin/firefox${nameSuffix}" \
if [ ! -x "${browser}/bin/${browserName}" ]
then
echo "cannot find executable file \`${browser}/bin/${browserName}'"
exit 1
fi
makeWrapper "${browser}/bin/${browserName}" \
"$out/bin/${browserName}${nameSuffix}" \
--suffix-each MOZ_PLUGIN_PATH ':' "$plugins" \
--suffix-contents PATH ':' "$(filterExisting $(addSuffix /extra-bin-path $plugins))"
'';
@ -17,7 +24,7 @@ stdenv.mkDerivation {
meta = {
description =
firefox.meta.description
browser.meta.description
+ " (with plugins: "
+ (let lib = import ../../../../lib;
in lib.concatStrings (lib.intersperse ", " (map (x: x.name) plugins)))

View file

@ -6004,7 +6004,7 @@ let pkgs = rec {
#enableOfficialBranding = true;
});
firefoxWrapper = wrapFirefox firefox "";
firefoxWrapper = wrapFirefox firefox "firefox" "";
firefox3 = lowPrio (import ../applications/networking/browsers/firefox-3 {
inherit fetchurl stdenv pkgconfig perl zip libjpeg libpng zlib cairo
@ -6022,8 +6022,8 @@ let pkgs = rec {
inherit (xlibs) libXi libX11 libXrender libXft libXt;
});
firefox3Wrapper = lowPrio (wrapFirefox firefox3 "");
firefox3b1BinWrapper = lowPrio (wrapFirefox firefox3b1Bin "");
firefox3Wrapper = lowPrio (wrapFirefox firefox3 "firefox" "");
firefox3b1BinWrapper = lowPrio (wrapFirefox firefox3b1Bin "firefox" "");
flacAlts = import ../applications/audio/flac {
inherit fetchurl stdenv libogg;
@ -6133,7 +6133,7 @@ let pkgs = rec {
inherit (gnome) libIDL;
});
icecatWrapper = wrapFirefox icecat3 "";
icecatWrapper = wrapFirefox icecat3 "icecat" "";
icewm = import ../applications/window-managers/icewm {
inherit fetchurl stdenv gettext libjpeg libtiff libungif libpng imlib;
@ -6751,9 +6751,8 @@ let pkgs = rec {
inherit stdenv fetchurl tcl tk x11 makeWrapper;
};
wrapFirefox = browser: nameSuffix: import ../applications/networking/browsers/firefox-wrapper {
inherit stdenv nameSuffix makeWrapper;
firefox = browser;
wrapFirefox = browser: browserName: nameSuffix: import ../applications/networking/browsers/firefox-wrapper {
inherit stdenv nameSuffix makeWrapper browser browserName;
plugins =
let enableAdobeFlash = getConfig [ "firefox" "enableAdobeFlash" ] true
&& system == "i686-linux";