about summary refs log tree commit diff
path: root/pkgs/applications/networking/instant-messengers/teamspeak
diff options
context:
space:
mode:
authorNathaniel Baxter <nathaniel.baxter@gmail.com>2015-07-24 13:03:02 +1000
committerNathaniel Baxter <nathaniel.baxter@gmail.com>2015-07-24 14:32:56 +1000
commitaae3bdab0358f53949f134ac8afbc350c7982e80 (patch)
tree09d31e67f9964371080afe2a27b03745fc495f24 /pkgs/applications/networking/instant-messengers/teamspeak
parent35f8386e782e31315419454fdfebdf26ef445397 (diff)
downloadnixlib-aae3bdab0358f53949f134ac8afbc350c7982e80.tar
nixlib-aae3bdab0358f53949f134ac8afbc350c7982e80.tar.gz
nixlib-aae3bdab0358f53949f134ac8afbc350c7982e80.tar.bz2
nixlib-aae3bdab0358f53949f134ac8afbc350c7982e80.tar.lz
nixlib-aae3bdab0358f53949f134ac8afbc350c7982e80.tar.xz
nixlib-aae3bdab0358f53949f134ac8afbc350c7982e80.tar.zst
nixlib-aae3bdab0358f53949f134ac8afbc350c7982e80.zip
teamspeak_client: create .desktop file
Diffstat (limited to 'pkgs/applications/networking/instant-messengers/teamspeak')
-rw-r--r--pkgs/applications/networking/instant-messengers/teamspeak/client.nix30
1 files changed, 26 insertions, 4 deletions
diff --git a/pkgs/applications/networking/instant-messengers/teamspeak/client.nix b/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
index 51707d2dca65..13798061b71b 100644
--- a/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
+++ b/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, makeWrapper, zlib, glib, libpng, freetype, xorg
-, fontconfig, xlibs, qt5, xkeyboard_config, alsaLib, libpulseaudio ? null
-, libredirect, quazip, less, which
+{ stdenv, fetchurl, makeWrapper, makeDesktopItem, zlib, glib, libpng, freetype
+, xorg, fontconfig, xlibs, qt5, xkeyboard_config, alsaLib, libpulseaudio ? null
+, libredirect, quazip, less, which, unzip
 }:
 
 let
@@ -15,6 +15,16 @@ let
       xlibs.libxcb fontconfig xorg.libXext xorg.libX11 alsaLib qt5.base libpulseaudio
     ];
 
+  desktopItem = makeDesktopItem {
+    name = "teamspeak";
+    exec = "ts3client";
+    icon = "teamspeak";
+    comment = "The TeamSpeak voice communication tool";
+    desktopName = "TeamSpeak";
+    genericName = "TeamSpeak";
+    categories = "Network";
+  };
+
 in
 
 stdenv.mkDerivation rec {
@@ -33,7 +43,13 @@ stdenv.mkDerivation rec {
                 else "1b3nbvfpd8lx3dig8z5yk6zjkbmsy6y938dhj1f562wc8adixciz";
   };
 
-  buildInputs = [ makeWrapper less which ];
+  # grab the plugin sdk for the desktop icon
+  pluginsdk = fetchurl {
+    url = "http://dl.4players.de/ts/client/pluginsdk/pluginsdk_3.0.16.zip";
+    sha256 = "1qpqpj3r21wff3ly9ail4l6b57pcqycsh2hca926j14sdlvpv7kl";
+  };
+
+  buildInputs = [ makeWrapper less which unzip ];
 
   unpackPhase =
     ''
@@ -62,6 +78,12 @@ stdenv.mkDerivation rec {
       mkdir -p $out/lib/teamspeak
       mv * $out/lib/teamspeak/
 
+      # Make a desktop item
+      mkdir -p $out/share/applications/ $out/share/icons/
+      unzip ${pluginsdk}
+      cp pluginsdk/docs/client_html/images/logo.png $out/share/icons/teamspeak.png
+      cp ${desktopItem}/share/applications/* $out/share/applications/
+
       # Make a symlink to the binary from bin.
       mkdir -p $out/bin/
       ln -s $out/lib/teamspeak/ts3client $out/bin/ts3client