diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix index e510b329714..12d581b1566 100644 --- a/pkgs/applications/networking/browsers/firefox/default.nix +++ b/pkgs/applications/networking/browsers/firefox/default.nix @@ -16,14 +16,14 @@ assert stdenv.cc ? libc && stdenv.cc.libc != null; -let version = "40.0.3"; in +let -stdenv.mkDerivation rec { - name = "firefox-${version}"; +common = { pname, version, sha1 }: stdenv.mkDerivation rec { + name = "${pname}-${version}"; src = fetchurl { url = "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${version}/source/firefox-${version}.source.tar.bz2"; - sha1 = "6ddda46bd6540ab3ae932fbb5ffec8e9a85cab13"; + inherit sha1; }; patches = if !enableGTK3 then null else [(fetchpatch { @@ -91,7 +91,7 @@ stdenv.mkDerivation rec { '' mkdir ../objdir cd ../objdir - configureScript=../mozilla-release/configure + configureScript=../mozilla-*/configure ''; preInstall = @@ -121,7 +121,7 @@ stdenv.mkDerivation rec { ''; meta = { - description = "Web browser"; + description = "A web browser" + lib.optionalString (pname == "firefox-esr") " (Extended Support Release)"; homepage = http://www.mozilla.com/en-US/firefox/; maintainers = with lib.maintainers; [ eelco ]; platforms = lib.platforms.linux; @@ -131,4 +131,20 @@ stdenv.mkDerivation rec { inherit gtk nspr version; isFirefox3Like = true; }; +}; + +in { + + firefox = common { + pname = "firefox"; + version = "40.0.3"; + sha1 = "6ddda46bd6540ab3ae932fbb5ffec8e9a85cab13"; + }; + + firefox-esr = common { + pname = "firefox-esr"; + version = "38.2.1esr"; + sha1 = "c596174e7273be5079bf55aecde33ec191d99538"; + }; + } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3910bbbb064..35c0d809f43 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11527,14 +11527,15 @@ let filezilla = callPackage ../applications/networking/ftp/filezilla { }; - firefox = callPackage ../applications/networking/browsers/firefox { + inherit (callPackages ../applications/networking/browsers/firefox { inherit (gnome) libIDL; inherit (pythonPackages) pysqlite; libpng = libpng_apng; enableGTK3 = false; - }; + }) firefox firefox-esr; - firefoxWrapper = wrapFirefox { browser = pkgs.firefox; }; + firefox-wrapper = wrapFirefox { browser = pkgs.firefox; }; + firefox-esr-wrapper = wrapFirefox { browser = pkgs.firefox-esr; }; firefox-bin = callPackage ../applications/networking/browsers/firefox-bin { gconf = pkgs.gnome.GConf; @@ -15331,6 +15332,7 @@ let cheetahTemplate = pythonPackages.cheetah; # 2015-06-15 clangAnalyzer = clang-analyzer; # added 2015-02-20 cool-old-term = cool-retro-term; # added 2015-01-31 + firefoxWrapper = firefox-wrapper; haskell-ng = haskell; # 2015-04-19 haskellngPackages = haskellPackages; # 2015-04-19 htmlTidy = html-tidy; # added 2014-12-06