summary refs log tree commit diff
diff options
context:
space:
mode:
authorBob van der Linden <bobvanderlinden@gmail.com>2017-08-27 23:08:18 +0200
committerDomen Kožar <domen@enlambda.com>2017-08-27 23:53:42 +0100
commitdb59381a5d1781dcb3e72814caff408b194c5aac (patch)
treed36a38ca6d228971ce08d0909c443ed0b29a7494
parent45971ebb3ec3c8109580f6fe4d875a800a3dea5a (diff)
downloadnixlib-db59381a5d1781dcb3e72814caff408b194c5aac.tar
nixlib-db59381a5d1781dcb3e72814caff408b194c5aac.tar.gz
nixlib-db59381a5d1781dcb3e72814caff408b194c5aac.tar.bz2
nixlib-db59381a5d1781dcb3e72814caff408b194c5aac.tar.lz
nixlib-db59381a5d1781dcb3e72814caff408b194c5aac.tar.xz
nixlib-db59381a5d1781dcb3e72814caff408b194c5aac.tar.zst
nixlib-db59381a5d1781dcb3e72814caff408b194c5aac.zip
ngrok: 1.7.1 -> 2.2.8, added ngrok1 1.1.7
ngrok now releases a proprietary version (2.x). 1.1.7 can still be used
with a self-hosted ngrokd, but it won't work out of the box.

Therefore ngrok 2.2.8 is now the default for the `ngrok` package and
ngrok 1.1.7 can be installed using the `ngrok1` package.
-rw-r--r--pkgs/tools/networking/ngrok/default.nix46
-rw-r--r--pkgs/tools/networking/ngrok1/default.nix31
-rw-r--r--pkgs/tools/networking/ngrok1/deps.nix (renamed from pkgs/tools/networking/ngrok/deps.nix)0
-rw-r--r--pkgs/top-level/all-packages.nix6
4 files changed, 59 insertions, 24 deletions
diff --git a/pkgs/tools/networking/ngrok/default.nix b/pkgs/tools/networking/ngrok/default.nix
index e354ad223b8c..031161da4d57 100644
--- a/pkgs/tools/networking/ngrok/default.nix
+++ b/pkgs/tools/networking/ngrok/default.nix
@@ -1,31 +1,31 @@
-{ stdenv, lib, pkgconfig, buildGoPackage, go-bindata, fetchFromGitHub }:
+{ stdenv, fetchurl, unzip }:
 
-buildGoPackage rec {
+stdenv.mkDerivation rec {
   name = "ngrok-${version}";
-  version = "1.7.1";
-  rev = "${version}";
+  version = "2.2.8";
 
-  goPackagePath = "ngrok";
+  src = if stdenv.system == "i686-linux" then fetchurl {
+    url = "https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-i386.tgz";
+    sha256 = "0s5ymlaxrvm13q3mlvfirh74sx60qh56c5sgdma2r7q5qlsq41xg";
+  } else if stdenv.system == "x86_64-linux" then fetchurl {
+    url = "https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.tgz";
+    sha256 = "1mn9iwgy6xzrjihikwc2k2j59igqmph0cwx17qp0ziap9lp5xxad";
+  } else throw "platform ${stdenv.system} not supported!";
 
-  src = fetchFromGitHub {
-    inherit rev;
-    owner = "inconshreveable";
-    repo = "ngrok";
-    sha256 = "1r4nc9knp0nxg4vglg7v7jbyd1nh1j2590l720ahll8a4fbsx5a4";
-  };
-
-  goDeps = ./deps.nix;
+  sourceRoot = ".";
 
-  buildInputs = [ go-bindata ];
-
-  preConfigure = ''
-    sed -e '/jteeuwen\/go-bindata/d' \
-        -e '/export GOPATH/d' \
-        -e 's/go get/#go get/' \
-        -e 's|bin/go-bindata|go-bindata|' -i Makefile
-    make assets BUILDTAGS=release
-    export sourceRoot=$sourceRoot/src/ngrok
+  installPhase = ''
+    install -D ngrok $out/bin/ngrok
   '';
 
-  buildFlags = [ "-tags release" ];
+  meta = with stdenv.lib; {
+    description = "ngrok";
+    longDescription = ''
+      Allows you to expose a web server running on your local machine to the internet.
+    '';
+    homepage = https://ngrok.com/;
+    license = stdenv.lib.licenses.unfree;
+    platforms = [ "i686-linux" "x86_64-linux" ];
+    maintainers = [ maintainers.bobvanderlinden ];
+  };
 }
diff --git a/pkgs/tools/networking/ngrok1/default.nix b/pkgs/tools/networking/ngrok1/default.nix
new file mode 100644
index 000000000000..32fe8db45e41
--- /dev/null
+++ b/pkgs/tools/networking/ngrok1/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, lib, pkgconfig, buildGoPackage, go-bindata, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "ngrok1-${version}";
+  version = "1.7.1";
+  rev = "${version}";
+
+  goPackagePath = "ngrok";
+
+  src = fetchFromGitHub {
+    inherit rev;
+    owner = "inconshreveable";
+    repo = "ngrok";
+    sha256 = "1r4nc9knp0nxg4vglg7v7jbyd1nh1j2590l720ahll8a4fbsx5a4";
+  };
+
+  goDeps = ./deps.nix;
+
+  buildInputs = [ go-bindata ];
+
+  preConfigure = ''
+    sed -e '/jteeuwen\/go-bindata/d' \
+        -e '/export GOPATH/d' \
+        -e 's/go get/#go get/' \
+        -e 's|bin/go-bindata|go-bindata|' -i Makefile
+    make assets BUILDTAGS=release
+    export sourceRoot=$sourceRoot/src/ngrok
+  '';
+
+  buildFlags = [ "-tags release" ];
+}
diff --git a/pkgs/tools/networking/ngrok/deps.nix b/pkgs/tools/networking/ngrok1/deps.nix
index 1db3c3e65191..1db3c3e65191 100644
--- a/pkgs/tools/networking/ngrok/deps.nix
+++ b/pkgs/tools/networking/ngrok1/deps.nix
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index b77c37a2f585..a9a575e1e3e4 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -3418,7 +3418,11 @@ with pkgs;
 
   ngrep = callPackage ../tools/networking/ngrep { };
 
-  ngrok = callPackage ../tools/networking/ngrok { };
+  ngrok = ngrok2;
+
+  ngrok2 = callPackage ../tools/networking/ngrok { };
+
+  ngrok1 = callPackage ../tools/networking/ngrok1 { };
 
   noice = callPackage ../applications/misc/noice { };