summary refs log tree commit diff
diff options
context:
space:
mode:
authorMatthew Justin Bauer <mjbauer95@gmail.com>2018-05-05 00:27:52 -0500
committerGitHub <noreply@github.com>2018-05-05 00:27:52 -0500
commit0e6a3b3910d7f3398f5ea9832aa596a402a29175 (patch)
tree54fc37c984babed8fe17a4860ec153d93277d0a0
parent94d6c37826bc29de778927ddaabe1c57b6e6940b (diff)
parent3bd1fcc4ad8c3223636b66fd2e647b12bd46c8dd (diff)
downloadnixlib-0e6a3b3910d7f3398f5ea9832aa596a402a29175.tar
nixlib-0e6a3b3910d7f3398f5ea9832aa596a402a29175.tar.gz
nixlib-0e6a3b3910d7f3398f5ea9832aa596a402a29175.tar.bz2
nixlib-0e6a3b3910d7f3398f5ea9832aa596a402a29175.tar.lz
nixlib-0e6a3b3910d7f3398f5ea9832aa596a402a29175.tar.xz
nixlib-0e6a3b3910d7f3398f5ea9832aa596a402a29175.tar.zst
nixlib-0e6a3b3910d7f3398f5ea9832aa596a402a29175.zip
Merge pull request #39994 from sorpaas/parity-ui-init
parity-ui: init at 0.1.1
-rw-r--r--pkgs/applications/altcoins/default.nix1
-rw-r--r--pkgs/applications/altcoins/parity-ui/default.nix50
-rw-r--r--pkgs/applications/altcoins/parity-ui/env.nix19
-rw-r--r--pkgs/top-level/all-packages.nix1
4 files changed, 71 insertions, 0 deletions
diff --git a/pkgs/applications/altcoins/default.nix b/pkgs/applications/altcoins/default.nix
index c58178e3edbb..fa704b596591 100644
--- a/pkgs/applications/altcoins/default.nix
+++ b/pkgs/applications/altcoins/default.nix
@@ -86,4 +86,5 @@ rec {
 
   parity = callPackage ./parity { };
   parity-beta = callPackage ./parity/beta.nix { };
+  parity-ui = callPackage ./parity-ui { };
 }
diff --git a/pkgs/applications/altcoins/parity-ui/default.nix b/pkgs/applications/altcoins/parity-ui/default.nix
new file mode 100644
index 000000000000..56a95b6d5968
--- /dev/null
+++ b/pkgs/applications/altcoins/parity-ui/default.nix
@@ -0,0 +1,50 @@
+{ stdenv, pkgs, fetchurl, lib, makeWrapper, nodePackages }:
+
+let
+
+uiEnv = pkgs.callPackage ./env.nix { };
+
+in stdenv.mkDerivation rec {
+  name = "parity-ui-${version}";
+  version = "0.1.1";
+
+  src = fetchurl {
+    url = "https://github.com/parity-js/shell/releases/download/v${version}/parity-ui_${version}_amd64.deb";
+    sha256 = "1jym6q63m5f4xm06dxiiabhbqnr0hysf2d3swysncs5hg6w00lh3";
+    name = "${name}.deb";
+  };
+
+  nativeBuildInputs = [ makeWrapper nodePackages.asar ];
+
+  buildCommand = ''
+    mkdir -p $out/usr/
+    ar p $src data.tar.xz | tar -C $out -xJ .
+    substituteInPlace $out/usr/share/applications/parity-ui.desktop \
+      --replace "/opt/Parity UI" $out/bin
+    mv $out/usr/* $out/
+    mv "$out/opt/Parity UI" $out/share/parity-ui
+    rm -r $out/usr/
+    rm -r $out/opt/
+
+    fixupPhase
+
+    patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+      --set-rpath "${uiEnv.libPath}:$out/share/parity-ui" \
+      $out/share/parity-ui/parity-ui
+
+    find $out/share/parity-ui -name "*.node" -exec patchelf --set-rpath "${uiEnv.libPath}:$out/share/parity-ui" {} \;
+
+    paxmark m $out/share/parity-ui/parity-ui
+
+    mkdir -p $out/bin
+    ln -s $out/share/parity-ui/parity-ui $out/bin/parity-ui
+  '';
+
+  meta = with stdenv.lib; {
+    description = "UI for Parity. Fast, light, robust Ethereum implementation";
+    homepage = http://parity.io;
+    license = licenses.gpl3;
+    maintainers = [ maintainers.sorpaas ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/altcoins/parity-ui/env.nix b/pkgs/applications/altcoins/parity-ui/env.nix
new file mode 100644
index 000000000000..a273bf33d100
--- /dev/null
+++ b/pkgs/applications/altcoins/parity-ui/env.nix
@@ -0,0 +1,19 @@
+{ stdenv, lib, zlib, glib, alsaLib, dbus, gtk2, atk, pango, freetype, fontconfig
+, libgnome-keyring3, gdk_pixbuf, gvfs, cairo, cups, expat, libgpgerror, nspr
+, nss, xorg, libcap, systemd, libnotify, libsecret, gnome3 }:
+
+let
+  packages = [
+    stdenv.cc.cc zlib glib dbus gtk2 atk pango freetype libgnome-keyring3
+    fontconfig gdk_pixbuf cairo cups expat libgpgerror alsaLib nspr nss
+    xorg.libXrender xorg.libX11 xorg.libXext xorg.libXdamage xorg.libXtst
+    xorg.libXcomposite xorg.libXi xorg.libXfixes xorg.libXrandr
+    xorg.libXcursor xorg.libxkbfile xorg.libXScrnSaver libcap systemd libnotify
+    xorg.libxcb libsecret gnome3.gconf
+  ];
+
+  libPathNative = lib.makeLibraryPath packages;
+  libPath64 = lib.makeSearchPathOutput "lib" "lib64" packages;
+  libPath = "${libPathNative}:${libPath64}";
+
+in { inherit packages libPath; }
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 75dfbaf93ebc..603f594b1efe 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -14889,6 +14889,7 @@ with pkgs;
 
   parity = self.altcoins.parity;
   parity-beta = self.altcoins.parity-beta;
+  parity-ui = self.altcoins.parity-ui;
 
   stellar-core = self.altcoins.stellar-core;