diff --git a/pkgs/applications/networking/browsers/firefox-wrapper/default.nix b/pkgs/applications/networking/browsers/firefox-wrapper/default.nix index 69052d1e89a..c201d30e13f 100644 --- a/pkgs/applications/networking/browsers/firefox-wrapper/default.nix +++ b/pkgs/applications/networking/browsers/firefox-wrapper/default.nix @@ -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))) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 18b07a41f3b..5dd7d0b90e2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -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";