From 42ff593555c9f74429441082a898b7d42bd5b287 Mon Sep 17 00:00:00 2001 From: John Ramsden Date: Sun, 7 May 2017 16:05:53 -0700 Subject: [PATCH] nylas-mail: 2.0.31 Added new email client Nylas-Mail. --- .../mailreaders/nylas-mail/default.nix | 134 ++++++++++++++++++ pkgs/top-level/all-packages.nix | 7 +- 2 files changed, 140 insertions(+), 1 deletion(-) create mode 100644 pkgs/applications/networking/mailreaders/nylas-mail/default.nix diff --git a/pkgs/applications/networking/mailreaders/nylas-mail/default.nix b/pkgs/applications/networking/mailreaders/nylas-mail/default.nix new file mode 100644 index 000000000000..6914dbdb7bf2 --- /dev/null +++ b/pkgs/applications/networking/mailreaders/nylas-mail/default.nix @@ -0,0 +1,134 @@ +{ config +, stdenv +, pkgs +, fetchurl +, dpkg +, lib +, gnome2 +, libgnome_keyring +, desktop_file_utils +, python2 +, nodejs +, libnotify +, alsaLib +, atk +, glib +, pango +, gdk_pixbuf +, cairo +, freetype +, fontconfig +, dbus +, nss +, nspr +, cups +, expat +, wget +, udev +, xorg +, libgcrypt +, makeWrapper +, gcc-unwrapped +, coreutils +}: + +stdenv.mkDerivation rec { + name = "${pkgname}-${version}"; + pkgname = "nylas-mail"; + version = "2.0.31"; + subVersion = "e675deb"; + + src = fetchurl { + url = "https://edgehill.s3-us-west-2.amazonaws.com/${version}-${subVersion}/linux-deb/x64/NylasMail.deb"; + sha256 = "b036956174f998bd4a2662a1f59cb4a302465b3ed06c487de88ff2721e372f6e"; + }; + + # Build dependencies + propagatedBuildInputs = [ + gnome2.gtk + gnome2.GConf + libgnome_keyring + desktop_file_utils + python2 + nodejs + libnotify + alsaLib + atk + glib + pango + gdk_pixbuf + cairo + freetype + fontconfig + dbus + nss + nspr + cups + expat + wget + udev + gcc-unwrapped + coreutils + xorg.libXScrnSaver + xorg.libXi + xorg.libXtst + xorg.libXcursor + xorg.libXdamage + xorg.libXrandr + xorg.libXcomposite + xorg.libXext + xorg.libXfixes + xorg.libXrender + xorg.libX11 + xorg.libxkbfile + ]; + + # Runtime dependencies + buildInputs = [ makeWrapper gnome2.gnome_keyring ]; + + phases = [ "unpackPhase" ]; + + unpackPhase = '' + mkdir -p $out + + ${dpkg}/bin/dpkg-deb -x $src unpacked + mv unpacked/usr/* $out/ + + # Fix path in desktop file + substituteInPlace $out/share/applications/nylas-mail.desktop \ + --replace /usr/bin/nylas-mail $out/bin/nylas-mail + + # Patch librariess + noderp=$(patchelf --print-rpath $out/share/nylas-mail/libnode.so) + patchelf --set-rpath $noderp:$out/lib:${stdenv.cc.cc.lib}/lib:${xorg.libxkbfile.out}/lib:${lib.makeLibraryPath propagatedBuildInputs } \ + $out/share/nylas-mail/libnode.so + + ffrp=$(patchelf --print-rpath $out/share/nylas-mail/libffmpeg.so) + patchelf --set-rpath $ffrp:$out/lib:${stdenv.cc.cc.lib}/lib:${lib.makeLibraryPath propagatedBuildInputs } \ + $out/share/nylas-mail/libffmpeg.so + + # Patch binaries + binrp=$(patchelf --print-rpath $out/share/nylas-mail/nylas) + patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ + --set-rpath $binrp:$out/lib:${stdenv.cc.cc.lib}/lib:${lib.makeLibraryPath propagatedBuildInputs } \ + $out/share/nylas-mail/nylas + + wrapProgram $out/share/nylas-mail/nylas --set LD_LIBRARY_PATH "${xorg.libxkbfile}/lib:${pkgs.gnome3.libgnome_keyring}/lib"; + + # Fix path to bash so apm can install plugins. + substituteInPlace $out/share/nylas-mail/resources/apm/bin/apm \ + --replace /bin/bash ${stdenv.shell} + + wrapProgram $out/share/nylas-mail/resources/apm/bin/apm \ + --set PATH "${coreutils}/bin" + patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ + --set-rpath ${gcc-unwrapped.lib}/lib \ + $out/share/nylas-mail/resources/apm/bin/node + ''; + + meta = { + description = "Nylas Mail is an open-source mail client built on the modern web with Electron, React, and Flux. It is designed to be extensible, so it's easy to create new experiences and workflows around email."; + license = stdenv.lib.licenses.gpl3; + homepage = https://nylas.com; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index bebd1058e975..0913505b2778 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1022,8 +1022,11 @@ with pkgs; mpdris2 = callPackage ../tools/audio/mpdris2 { }; + nfdump = callPackage ../tools/networking/nfdump { }; + onboard = callPackage ../applications/misc/onboard { }; + playerctl = callPackage ../tools/audio/playerctl { }; socklog = callPackage ../tools/system/socklog { }; @@ -15910,6 +15913,8 @@ with pkgs; thinkingRock = callPackage ../applications/misc/thinking-rock { }; + nylas-mail = callPackage ../applications/networking/mailreaders/nylas-mail { }; + thunderbird = callPackage ../applications/networking/mailreaders/thunderbird { inherit (gnome2) libIDL; libpng = libpng_apng; @@ -17011,7 +17016,7 @@ with pkgs; quake3pointrelease = callPackage ../games/quake3/content/pointrelease.nix { }; quakespasm = callPackage ../games/quakespasm { }; - + ioquake3 = callPackage ../games/quake3/ioquake { }; quantumminigolf = callPackage ../games/quantumminigolf {};