summary refs log tree commit diff
path: root/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix')
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix37
1 files changed, 17 insertions, 20 deletions
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix
index afe0600d6f7..bdccb932e1c 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix
@@ -13,6 +13,7 @@ let
     [ mesa
       xorg.libXt
       xorg.libX11
+      xorg.libXrender
       cairo
       libpng
       gtk
@@ -31,7 +32,7 @@ let
       xorg.libXfixes
       xorg.libXrender
       xorg.libXrandr
-      stdenv.gcc.gcc
+      stdenv.cc.cc
       alsaLib
       pulseaudio
       dbus_glib
@@ -47,20 +48,20 @@ stdenv.mkDerivation rec {
   name = "google-talk-plugin-${version}";
 
   # You can get the upstream version and SHA-1 hash from the following URLs:
-  # http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-amd64/Packages
-  # http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-i386/Packages
-  version = "5.1.5.0";
+  # curl -s http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-amd64/Packages | grep -E 'Version|SHA1'
+  # curl -s http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-i386/Packages | grep -E 'Version|SHA1'
+  version = "5.4.2.0";
 
   src =
     if stdenv.system == "x86_64-linux" then
       fetchurl {
         url = "${baseURL}/google-talkplugin_${version}-1_amd64.deb";
-        sha1 = "fc830f4c7f5816f4578ec73e6d4aef059ad4a0b1";
+        sha1 = "d75fad757750b4830c4e401ade92b4993e2a4ab2";
       }
     else if stdenv.system == "i686-linux" then
       fetchurl {
         url = "${baseURL}/google-talkplugin_${version}-1_i386.deb";
-        sha1 = "9b7043c3585b3479ba11aabb7b8af755a61df963";
+        sha1 = "410872377b0bdac06b580c5e1755a3a3c712144b";
       }
     else throw "Google Talk does not support your platform.";
 
@@ -72,26 +73,22 @@ stdenv.mkDerivation rec {
     ''
       plugins=$out/lib/mozilla/plugins
       mkdir -p $plugins
-      cp opt/google/talkplugin/libnp*.so $plugins
+      cp opt/google/talkplugin/*.so $plugins
 
-      patchelf --set-rpath "${makeLibraryPath [ stdenv.gcc.gcc xorg.libX11 ]}:${stdenv.gcc.gcc}/lib64" \
-        $plugins/libnpgoogletalk.so
+      for i in libnpgoogletalk.so libppgoogletalk.so libppo1d.so; do
+        patchelf --set-rpath "${makeLibraryPath [ stdenv.cc.cc xorg.libX11 ]}:${stdenv.cc.cc}/lib64" $plugins/$i
+      done
 
-      patchelf --set-rpath "$out/libexec/google/talkplugin/lib:${rpathPlugin}:${stdenv.gcc.gcc}/lib64" \
-        $plugins/libnpgtpo3dautoplugin.so
+      for i in libgoogletalkremoting.so libnpo1d.so; do
+        patchelf --set-rpath "$out/libexec/google/talkplugin/lib:${rpathPlugin}:${stdenv.cc.cc}/lib64" $plugins/$i
+      done
 
       mkdir -p $out/libexec/google/talkplugin
-      cp -prd opt/google/talkplugin/{GoogleTalkPlugin,locale,windowpicker.glade} $out/libexec/google/talkplugin/
-
-      mkdir -p $out/libexec/google/talkplugin/lib
-      cp opt/google/talkplugin/lib/libCg* $out/libexec/google/talkplugin/lib/
-
-      patchelf --set-rpath "$out/libexec/google/talkplugin/lib" \
-        $out/libexec/google/talkplugin/lib/libCgGL.so
+      cp -prd opt/google/talkplugin/{data,GoogleTalkPlugin,locale,remoting24x24.png,windowpicker.glade} $out/libexec/google/talkplugin/
 
       patchelf \
-        --set-interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \
-        --set-rpath "${rpathProgram}:${stdenv.gcc.gcc}/lib64" \
+        --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+        --set-rpath "${rpathProgram}:${stdenv.cc.cc}/lib64" \
         $out/libexec/google/talkplugin/GoogleTalkPlugin
 
       # Generate an LD_PRELOAD wrapper to redirect execvp() calls to