summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
authorWilliam A. Kennington III <william@wkennington.com>2015-08-05 23:26:31 -0700
committerWilliam A. Kennington III <william@wkennington.com>2015-08-05 23:26:34 -0700
commitf6c1004b2a64138f84bb03c9bf473151adfa50dd (patch)
tree07ae05e21968921c132a1dbe9ce33794c28dd9cf /pkgs/applications
parent8164d28315eae1b0cb4aeb26f7dc3334e6ff9e69 (diff)
downloadnixlib-f6c1004b2a64138f84bb03c9bf473151adfa50dd.tar
nixlib-f6c1004b2a64138f84bb03c9bf473151adfa50dd.tar.gz
nixlib-f6c1004b2a64138f84bb03c9bf473151adfa50dd.tar.bz2
nixlib-f6c1004b2a64138f84bb03c9bf473151adfa50dd.tar.lz
nixlib-f6c1004b2a64138f84bb03c9bf473151adfa50dd.tar.xz
nixlib-f6c1004b2a64138f84bb03c9bf473151adfa50dd.tar.zst
nixlib-f6c1004b2a64138f84bb03c9bf473151adfa50dd.zip
firefox: Use more system libraries
Use system libpng with apng support.
Use the system icu which works fine in newer firefox builds.
Use jemalloc to speed up memory allocations and reduce fragmentation.
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/networking/browsers/firefox/default.nix18
1 files changed, 10 insertions, 8 deletions
diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix
index 31375bd5a5bf..916469f8e1c7 100644
--- a/pkgs/applications/networking/browsers/firefox/default.nix
+++ b/pkgs/applications/networking/browsers/firefox/default.nix
@@ -3,7 +3,7 @@
 , freetype, fontconfig, file, alsaLib, nspr, nss, libnotify
 , yasm, mesa, sqlite, unzip, makeWrapper, pysqlite
 , hunspell, libevent, libstartup_notification, libvpx
-, cairo, gstreamer, gst_plugins_base, icu
+, cairo, gst_all_1, icu, libpng, jemalloc
 , enableGTK3 ? false
 , debugBuild ? false
 , # If you want the resulting program to call itself "Firefox" instead
@@ -34,7 +34,8 @@ stdenv.mkDerivation rec {
       xlibs.libXScrnSaver xlibs.scrnsaverproto pysqlite
       xlibs.libXext xlibs.xextproto sqlite unzip makeWrapper
       hunspell libevent libstartup_notification libvpx cairo
-      gstreamer gst_plugins_base icu
+      gst_all_1.gstreamer gst_all_1.gst-plugins-base icu libpng
+      jemalloc
     ]
     ++ lib.optional enableGTK3 gtk3;
 
@@ -48,26 +49,27 @@ stdenv.mkDerivation rec {
       "--with-system-nss"
       "--with-system-libevent"
       "--with-system-libvpx"
-      # "--with-system-png" # needs APNG support
-      # "--with-system-icu" # causes ‘ar: invalid option -- 'L'’ in Firefox 28.0
+      "--with-system-png" # needs APNG support
+      "--with-system-icu"
       "--enable-system-ffi"
       "--enable-system-hunspell"
       "--enable-system-pixman"
       "--enable-system-sqlite"
       "--enable-system-cairo"
-      "--enable-gstreamer"
+      "--enable-gstreamer=1.0"
       "--enable-startup-notification"
-      # "--enable-content-sandbox"            # available since 26.0, but not much info available
-      # "--enable-content-sandbox-reporter"   # keeping disabled for now
+      "--enable-content-sandbox"            # available since 26.0, but not much info available
+      "--disable-content-sandbox-reporter"  # keeping disabled for now
       "--disable-crashreporter"
       "--disable-tests"
       "--disable-necko-wifi" # maybe we want to enable this at some point
       "--disable-installer"
       "--disable-updater"
       "--disable-pulseaudio"
+      "--enable-jemalloc"
     ]
     ++ lib.optional enableGTK3 "--enable-default-toolkit=cairo-gtk3"
-    ++ (if debugBuild then [ "--enable-debug" "--enable-profiling"]
+    ++ (if debugBuild then [ "--enable-debug" "--enable-profiling" ]
                       else [ "--disable-debug" "--enable-release"
                              "--enable-optimize${lib.optionalString (stdenv.system == "i686-linux") "=-O1"}"
                              "--enable-strip" ])