summary refs log tree commit diff
path: root/pkgs/applications/networking/instant-messengers/ricochet/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/networking/instant-messengers/ricochet/default.nix')
-rw-r--r--pkgs/applications/networking/instant-messengers/ricochet/default.nix58
1 files changed, 58 insertions, 0 deletions
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 00000000000..89487e5bf27
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/ricochet/default.nix
@@ -0,0 +1,58 @@
+{ stdenv, fetchurl, pkgconfig, makeDesktopItem, unzip
+, 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";
+  };
+
+  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 ];
+
+  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
+
+    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.jgillich ];
+  };
+}