diff options
author | Parnell Springmeyer <ixmatus@users.noreply.github.com> | 2017-11-07 06:26:45 -0600 |
---|---|---|
committer | Tim Steinbach <NeQuissimus@users.noreply.github.com> | 2017-11-07 12:26:45 +0000 |
commit | 3c3e1db36408277e6b8590c822146978d59868b2 (patch) | |
tree | c77dd445209eacd26e958e927c7f3babf138a47e /pkgs/applications/networking/instant-messengers | |
parent | 139d931d4dc6f7da75cb66094c204526961a9633 (diff) | |
download | nixlib-3c3e1db36408277e6b8590c822146978d59868b2.tar nixlib-3c3e1db36408277e6b8590c822146978d59868b2.tar.gz nixlib-3c3e1db36408277e6b8590c822146978d59868b2.tar.bz2 nixlib-3c3e1db36408277e6b8590c822146978d59868b2.tar.lz nixlib-3c3e1db36408277e6b8590c822146978d59868b2.tar.xz nixlib-3c3e1db36408277e6b8590c822146978d59868b2.tar.zst nixlib-3c3e1db36408277e6b8590c822146978d59868b2.zip |
signal-desktop: init at 1.0.35 (#31335)
* signal-desktop: init at 1.0.35
Diffstat (limited to 'pkgs/applications/networking/instant-messengers')
-rw-r--r-- | pkgs/applications/networking/instant-messengers/signal-desktop/default.nix | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix new file mode 100644 index 000000000000..0376fb79c9be --- /dev/null +++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix @@ -0,0 +1,88 @@ +{ stdenv, lib, fetchurl, dpkg, gnome2, atk, cairo, gdk_pixbuf, glib, freetype, +fontconfig, dbus, libX11, xlibs, libXi, libXcursor, libXdamage, libXrandr, +libXcomposite, libXext, libXfixes, libXrender, libXtst, libXScrnSaver, nss, +nspr, alsaLib, cups, expat, udev +}: +let + rpath = lib.makeLibraryPath [ + alsaLib + atk + cairo + cups + dbus + expat + fontconfig + freetype + gdk_pixbuf + glib + gnome2.GConf + gnome2.gtk + gnome2.pango + libX11 + libXScrnSaver + libXcomposite + libXcursor + libXdamage + libXext + libXfixes + libXi + libXrandr + libXrender + libXtst + nspr + nss + stdenv.cc.cc + udev + xlibs.libxcb + ]; + +in + stdenv.mkDerivation rec { + name = "signal-desktop-${version}"; + + version = "1.0.35"; + + src = + if stdenv.system == "x86_64-linux" then + fetchurl { + url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb"; + sha256 = "d9f9d4d54f4121efc8eadf1cf0ff957828088b313e53b66dc540b851c44c1860"; + } + else + throw "Signal for Desktop is not currently supported on ${stdenv.system}"; + + phases = [ "unpackPhase" "installPhase" ]; + nativeBuildInputs = [ dpkg ]; + unpackPhase = "dpkg-deb -x $src ."; + installPhase = '' + mkdir -p $out + cp -R opt $out + + mv ./usr/share $out/share + mv $out/opt/Signal $out/libexec + rmdir $out/opt + + chmod -R g-w $out + + # Patch signal + patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ + --set-rpath ${rpath}:$out/libexec $out/libexec/signal-desktop + + # Symlink to bin + mkdir -p $out/bin + ln -s $out/libexec/signal-desktop $out/bin/signal-desktop + + # Fix the desktop link + substituteInPlace $out/share/applications/signal-desktop.desktop \ + --replace /opt/Signal/signal-desktop $out/bin/signal-desktop + ''; + + meta = { + description = "Signal Private Messenger for the Desktop."; + homepage = https://signal.org/; + license = lib.licenses.gpl3; + platforms = [ + "x86_64-linux" + ]; + }; + } |