From 5acaa993f39104ce9f7b4c5718381b0e59fb52b5 Mon Sep 17 00:00:00 2001
From: codsl <codsl@riseup.net>
Date: Sun, 27 Dec 2015 08:32:28 +0000
Subject: [PATCH 1/4] maintainers: add myself

---
 lib/maintainers.nix | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/maintainers.nix b/lib/maintainers.nix
index 9a8e1d685ddb..733b010352a2 100644
--- a/lib/maintainers.nix
+++ b/lib/maintainers.nix
@@ -64,6 +64,7 @@
   chattered = "Phil Scott <me@philscotted.com>";
   christopherpoole = "Christopher Mark Poole <mail@christopherpoole.net>";
   coconnor = "Corey O'Connor <coreyoconnor@gmail.com>";
+  codsl = "codsl <codsl@riseup.net>";
   codyopel = "Cody Opel <codyopel@gmail.com>";
   copumpkin = "Dan Peebles <pumpkingod@gmail.com>";
   coroa = "Jonas Hörsch <jonas@chaoflow.net>";

From 7ff4973d79dc6861637fb4e3cc4b3ce797c8a34f Mon Sep 17 00:00:00 2001
From: codsl <codsl@riseup.net>
Date: Sun, 27 Dec 2015 08:33:05 +0000
Subject: [PATCH 2/4] xmpp-client: init at dc9d6be

---
 pkgs/top-level/all-packages.nix |  2 ++
 pkgs/top-level/go-packages.nix  | 16 ++++++++++++++++
 2 files changed, 18 insertions(+)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 8a07b7d2a98e..c4c05e62611e 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -13863,6 +13863,8 @@ let
     GConf2 = gnome2.GConf;
   };
 
+  xmpp-client = go15Packages.xmpp-client.bin // { outputs = [ "bin" ]; };
+
   libxpdf = callPackage ../applications/misc/xpdf/libxpdf.nix { };
 
   xpra = callPackage ../tools/X11/xpra { inherit (texFunctions) fontsConf; };
diff --git a/pkgs/top-level/go-packages.nix b/pkgs/top-level/go-packages.nix
index 3efbc526b628..a2d112b922cc 100644
--- a/pkgs/top-level/go-packages.nix
+++ b/pkgs/top-level/go-packages.nix
@@ -3361,6 +3361,22 @@ let
     sha256 = "0gljdfxqc94yb1kpqqrm5p94ph9dsxrzcixhdj6m92cwwa7z7p99";
   };
 
+  xmpp-client = buildFromGitHub {
+    rev      = "dc9d6be127f7c044ca0d56e5681c717a440ac177";
+    owner    = "agl";
+    repo     = "xmpp-client";
+    sha256   = "1zxh88mfzvq7fzf0536qy8kpcl82nw4jwrvyb9z6lhwk05gmi3vi";
+    disabled = isGo14;
+    buildInputs = [ crypto net ];
+
+    meta = with stdenv.lib; {
+      description = "An XMPP client with OTR support";
+      homepage = https://github.com/agl/xmpp-client;
+      license = licenses.bsd3;
+      maintainers = with maintainers; [ codsl ];
+    };
+  };
+
   yaml-v1 = buildGoPackage rec {
     name = "yaml-v1-${version}";
     version = "git-2015-05-01";

From 79cc97c63740c045b9716893a3b5cd7a4fa94c59 Mon Sep 17 00:00:00 2001
From: codsl <codsl@riseup.net>
Date: Sun, 27 Dec 2015 19:35:27 +0000
Subject: [PATCH 3/4] ricochet: init at 1.1.1

---
 .../instant-messengers/ricochet/default.nix   | 44 +++++++++++++++++++
 pkgs/top-level/all-packages.nix               |  2 +
 2 files changed, 46 insertions(+)
 create mode 100644 pkgs/applications/networking/instant-messengers/ricochet/default.nix

diff --git a/pkgs/applications/networking/instant-messengers/ricochet/default.nix b/pkgs/applications/networking/instant-messengers/ricochet/default.nix
new file mode 100644
index 000000000000..58f2789679d6
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/ricochet/default.nix
@@ -0,0 +1,44 @@
+{ stdenv, fetchurl, pkgconfig
+, qtbase, qttools, makeQtWrapper
+, qtmultimedia, qtquick1, qtquickcontrols
+, openssl, protobuf
+}:
+
+stdenv.mkDerivation rec {
+  name = "ricochet-${version}";
+  version = "1.1.1";
+
+  src = fetchurl {
+    url = "https://github.com/ricochet-im/ricochet/archive/v${version}.tar.gz";
+    sha256 = "0y79igzgl9xn00981zcyxdlks7vnqxhb4rq3x8gwxm0yr98p39ms";
+  };
+
+  buildInputs =
+    [
+      qtbase qttools qtmultimedia qtquick1 qtquickcontrols
+      openssl protobuf
+    ];
+
+  nativeBuildInputs = [ pkgconfig makeQtWrapper ];
+
+  preConfigure = ''
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE $(pkg-config --cflags openssl)"
+  '';
+
+  configureScript = "qmake";
+  dontAddPrefix = true;
+  configureFlags = [ "PREFIX=$(out)" "DEFINES+=RICOCHET_NO_PORTABLE" ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp ricochet $out/bin
+    wrapQtProgram $out/bin/ricochet
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Anonymous peer-to-peer instant messaging";
+    homepage = "https://ricochet.im";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.codsl ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index c4c05e62611e..0c04a0c12a14 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -13000,6 +13000,8 @@ let
 
   RhythmDelay = callPackage ../applications/audio/RhythmDelay { };
 
+  ricochet = qt5.callPackage ../applications/networking/instant-messengers/ricochet { };
+
   rkt = callPackage ../applications/virtualization/rkt { };
 
   rofi = callPackage ../applications/misc/rofi {

From 6a24c20744212d6142a1900502ec7a1f8337f087 Mon Sep 17 00:00:00 2001
From: Jakob Gillich <jakob@gillich.me>
Date: Fri, 15 Jan 2016 15:15:59 +0100
Subject: [PATCH 4/4] ricochet: add desktop file, cleanups

closes #11979, #11974
---
 .../instant-messengers/ricochet/default.nix   | 32 +++++++++++++------
 pkgs/top-level/go-packages.nix                |  5 +--
 2 files changed, 26 insertions(+), 11 deletions(-)

diff --git a/pkgs/applications/networking/instant-messengers/ricochet/default.nix b/pkgs/applications/networking/instant-messengers/ricochet/default.nix
index 58f2789679d6..89487e5bf27e 100644
--- a/pkgs/applications/networking/instant-messengers/ricochet/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ricochet/default.nix
@@ -1,6 +1,5 @@
-{ stdenv, fetchurl, pkgconfig
-, qtbase, qttools, makeQtWrapper
-, qtmultimedia, qtquick1, qtquickcontrols
+{ stdenv, fetchurl, pkgconfig, makeDesktopItem, unzip
+, qtbase, qttools, makeQtWrapper, qtmultimedia, qtquick1, qtquickcontrols
 , openssl, protobuf
 }:
 
@@ -13,11 +12,20 @@ stdenv.mkDerivation rec {
     sha256 = "0y79igzgl9xn00981zcyxdlks7vnqxhb4rq3x8gwxm0yr98p39ms";
   };
 
-  buildInputs =
-    [
-      qtbase qttools qtmultimedia qtquick1 qtquickcontrols
-      openssl protobuf
-    ];
+  desktopItem = makeDesktopItem {
+    name = "ricochet";
+    exec = "ricochet";
+    icon = "ricochet";
+    desktopName = "Ricochet";
+    genericName = "Ricochet";
+    comment = meta.description;
+    categories = "Office;Email;";
+  };
+
+  buildInputs = [
+    qtbase qttools qtmultimedia qtquick1 qtquickcontrols
+    openssl protobuf
+  ];
 
   nativeBuildInputs = [ pkgconfig makeQtWrapper ];
 
@@ -33,12 +41,18 @@ stdenv.mkDerivation rec {
     mkdir -p $out/bin
     cp ricochet $out/bin
     wrapQtProgram $out/bin/ricochet
+
+    mkdir -p $out/share/applications
+    cp $desktopItem/share/applications"/"* $out/share/applications
+
+    mkdir -p $out/share/pixmaps
+    cp icons/ricochet.png $out/share/pixmaps/ricochet.png
   '';
 
   meta = with stdenv.lib; {
     description = "Anonymous peer-to-peer instant messaging";
     homepage = "https://ricochet.im";
     license = licenses.bsd3;
-    maintainers = [ maintainers.codsl ];
+    maintainers = [ maintainers.codsl maintainers.jgillich ];
   };
 }
diff --git a/pkgs/top-level/go-packages.nix b/pkgs/top-level/go-packages.nix
index a2d112b922cc..f363dea9db47 100644
--- a/pkgs/top-level/go-packages.nix
+++ b/pkgs/top-level/go-packages.nix
@@ -3362,10 +3362,11 @@ let
   };
 
   xmpp-client = buildFromGitHub {
-    rev      = "dc9d6be127f7c044ca0d56e5681c717a440ac177";
+    rev      = "525bd26cf5f56ec5aee99464714fd1d019c119ff";
+    date     = "2016-01-10";
     owner    = "agl";
     repo     = "xmpp-client";
-    sha256   = "1zxh88mfzvq7fzf0536qy8kpcl82nw4jwrvyb9z6lhwk05gmi3vi";
+    sha256   = "0a1r08zs723ikcskmn6ylkdi3frcd0i0lkx30i9q39ilf734v253";
     disabled = isGo14;
     buildInputs = [ crypto net ];