about summary refs log tree commit diff
path: root/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/networking/instant-messengers/teamspeak/client.nix')
-rw-r--r--pkgs/applications/networking/instant-messengers/teamspeak/client.nix32
1 files changed, 20 insertions, 12 deletions
diff --git a/pkgs/applications/networking/instant-messengers/teamspeak/client.nix b/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
index f3a88dee2cf4..eb052af13690 100644
--- a/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
+++ b/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
@@ -1,39 +1,41 @@
-{ stdenv, fetchurl, zlib, glib, libpng, freetype, xorg, fontconfig, alsaLib,
-  qt4, pulseaudio ? null }:
+{ stdenv, fetchurl, zlib, glib, libpng, freetype, xorg, fontconfig, alsaLib, makeWrapper, xlibs
+,  qt5, pulseaudio ? null, qt4, xkeyboard_config, libredirect }:
 
 let
 
-  version = "3.0.13.1";
-
   arch = if stdenv.is64bit then "amd64" else "x86";
  
   libDir = if stdenv.is64bit then "lib64" else "lib";
 
   deps =
     [ zlib glib libpng freetype xorg.libSM xorg.libICE xorg.libXrender
-      xorg.libXrandr xorg.libXfixes xorg.libXcursor xorg.libXinerama
-      fontconfig xorg.libXext xorg.libX11 alsaLib qt4 pulseaudio
+      xorg.libXrandr xorg.libXfixes xorg.libXcursor xorg.libXinerama xlibs.libxcb
+      fontconfig xorg.libXext xorg.libX11 alsaLib qt5 pulseaudio
     ];
 
 in
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   name = "teamspeak-client-${version}";
 
+  version = "3.0.16";
+
   src = fetchurl {
     urls = [
-       "http://dl.4players.de/ts/releases/${version}/TeamSpeak3-Client-linux_${arch}-${version}.run"
+      "http://dl.4players.de/ts/releases/${version}/TeamSpeak3-Client-linux_${arch}-${version}.run"
       "http://teamspeak.gameserver.gamed.de/ts3/releases/${version}/TeamSpeak3-Client-linux_${arch}-${version}.run"
       "http://files.teamspeak-services.com/releases/${version}/TeamSpeak3-Client-linux_${arch}-${version}.run"
     ];
     sha256 = if stdenv.is64bit 
-		then "0mj8vpsnv906n3wgjwhiby5gk26jr5jbd94swmsf0s9kqwhsj6i1"
-                else "1hlw7lc0nl1mrsyd052s6ws64q5aabnw6qpv8mrdxb3hyp7g2qh1";
+                then "0gvphrmrkyy1g2nprvdk7cvawznzlv4smw0mlvzd4b9mvynln0v2"
+                else "1b3nbvfpd8lx3dig8z5yk6zjkbmsy6y938dhj1f562wc8adixciz";
   };
 
+  buildInputs = [ makeWrapper ];
+
   unpackPhase =
     ''
-      yes yes | sh $src
+      yes | sh $src
       cd TeamSpeak*
     '';
 
@@ -51,7 +53,8 @@ stdenv.mkDerivation {
   installPhase =
     ''
       # Delete unecessary libraries - these are provided by nixos.
-      rm *.so.*
+      rm libQt*.so.*
+      rm qt.conf
 
       # Install files.
       mkdir -p $out/lib/teamspeak
@@ -60,6 +63,11 @@ stdenv.mkDerivation {
       # Make a symlink to the binary from bin.
       mkdir -p $out/bin/
       ln -s $out/lib/teamspeak/ts3client $out/bin/ts3client
+
+      wrapProgram $out/bin/ts3client \
+        --set LD_PRELOAD "${libredirect}/lib/libredirect.so:$out/lib/teamspeak/libquazip.so.1" \
+        --set QT_PLUGIN_PATH "$out/lib/teamspeak/platforms" \
+        --set NIX_REDIRECTS /usr/share/X11/xkb=${xkeyboard_config}/share/X11/xkb
     '';
 
   dontStrip = true;