summary refs log tree commit diff
path: root/pkgs/tools/misc/ngrok
diff options
context:
space:
mode:
authorCharles Strahan <charles.c.strahan@gmail.com>2014-09-15 10:37:17 -0400
committerDomen Kožar <domen@dev.si>2014-09-16 10:19:50 +0200
commit3594a6104f39de0f0f541997d6238068f3770181 (patch)
treead11c70278a4f7ad7622a58d54b1800f26c42027 /pkgs/tools/misc/ngrok
parent3ddb56f1d10d9f1575f0d6a05fe5d23004a4b6b6 (diff)
downloadnixlib-3594a6104f39de0f0f541997d6238068f3770181.tar
nixlib-3594a6104f39de0f0f541997d6238068f3770181.tar.gz
nixlib-3594a6104f39de0f0f541997d6238068f3770181.tar.bz2
nixlib-3594a6104f39de0f0f541997d6238068f3770181.tar.lz
nixlib-3594a6104f39de0f0f541997d6238068f3770181.tar.xz
nixlib-3594a6104f39de0f0f541997d6238068f3770181.tar.zst
nixlib-3594a6104f39de0f0f541997d6238068f3770181.zip
update ngrok to 1.7
Diffstat (limited to 'pkgs/tools/misc/ngrok')
-rw-r--r--pkgs/tools/misc/ngrok/default.nix98
-rw-r--r--pkgs/tools/misc/ngrok/deps.nix141
2 files changed, 161 insertions, 78 deletions
diff --git a/pkgs/tools/misc/ngrok/default.nix b/pkgs/tools/misc/ngrok/default.nix
index 6435923b48a7..3f39f6ab4e82 100644
--- a/pkgs/tools/misc/ngrok/default.nix
+++ b/pkgs/tools/misc/ngrok/default.nix
@@ -1,87 +1,29 @@
-{ stdenv, fetchurl, go, fetchgit, fetchbzr, fetchhg }:
+{ stdenv, lib, go, go-bindata, fetchgit, fetchbzr, fetchhg, fetchFromGitHub }:
 
-let
-  go-websocket = fetchgit {
-    url = "git://github.com/garyburd/go-websocket";
-    rev = "4bad98c955";
-    sha256 = "1zh1r1xqar47awgv8a883zmxyvj65m0mbdm17d1xf74nkkrcykqy";
-  };
-  go-metrics = fetchgit {
-    url = "https://github.com/inconshreveable/go-metrics";
-    rev = "60ba4ca70c";
-    sha256 = "3dc8c229ce5123d86269c0c48401a9cdd2cde7558d85374c9dbc4bbd531e86d5";
-  };
-  termbox-go = fetchgit {
-    url = "https://github.com/nsf/termbox-go";
-    rev = "cea198fce7";
-    sha256 = "bde4190ae83d5c5870b8e11e16387cf03f2d44a8369f94674d4b9d0960c40693";
-  };
-  go-bindata = fetchgit {
-    url = "https://github.com/inconshreveable/go-bindata";
-    rev = "99016b3cc0";
-    sha256 = "518a5b61cfbe58f8bc55bd6139adcd69997b6ba474536a70b538879aaf118578";
-  };
-  go-update = fetchgit {
-    url = "https://github.com/inconshreveable/go-update";
-    rev = "3f04666667";
-    sha256 = "34647689a50b9d12e85a280d9034cc1772079163481c4778ee4b3e6c4b41e2f4";
-  };
-  goyaml = fetchbzr {
-    url = "https://launchpad.net/goyaml";
-    sha256 = "03is37cgw62cha316xrs5h7q97im46ry5qldkfvbhimjq3ww0swj";
-    # Branch: "branch:lp:goyaml"
-    rev = 47;
-  };
-  log4go = fetchhg {
-    url = "https://code.google.com/p/log4go/";
-    rev = "c3294304d93f";
-    sha256 = "0q906sxrmwir295virfibqvdzlaj340qh2r4ysx1ccjrjazc0q5p";
-  };
-  osext = fetchhg {
-    url = "https://bitbucket.org/kardianos/osext";
-    rev = "364fb57";
-    sha256 = "1w9x2zj716agfd5x5497ajb9nz3ljar74768vjidsyly143vzjws";
-  };
+let deps = import ./deps.nix {
+  inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub;
+};
 in stdenv.mkDerivation rec {
   name = "ngrok-${version}";
-  version = "1.6";
+  version = "1.7";
 
-  src = fetchurl {
-    url = "https://github.com/inconshreveable/ngrok/archive/${version}.tar.gz";
-    sha256 = "0w54ck00ma8wd87gc3dligypdjs7vrzbi9py46sqphsid3rihkjr";
-  };
+  buildInputs = [ go go-bindata ];
 
-  buildInputs = [ go ];
+  unpackPhase = ''
+    export GOPATH=$(pwd)
+    cp -LR ${deps}/src src
+    chmod u+w -R src
+    sourceRoot=src/github.com/inconshreveable/ngrok
+  '';
 
   preBuild = ''
-    export HOME="$PWD"
-
-    mkdir -p src/github.com/garyburd/go-websocket/
-    ln -s ${go-websocket}/* src/github.com/garyburd/go-websocket
-
-    mkdir -p src/github.com/inconshreveable/go-metrics/
-    ln -s ${go-metrics}/* src/github.com/inconshreveable/go-metrics
-
-    mkdir -p src/github.com/inconshreveable/go-bindata
-    ln -s ${go-bindata}/* src/github.com/inconshreveable/go-bindata
-
-    mkdir -p src/github.com/inconshreveable/go-update
-    ln -s ${go-update}/* src/github.com/inconshreveable/go-update
-
-    mkdir -p src/github.com/nsf/termbox-go/
-    ln -s ${termbox-go}/* src/github.com/nsf/termbox-go
-
-    mkdir -p src/launchpad.net/goyaml
-    ln -s ${goyaml}/* src/launchpad.net/goyaml
-
-    mkdir -p src/code.google.com/p/log4go
-    ln -s ${log4go}/* src/code.google.com/p/log4go
-
-    mkdir -p src/bitbucket.org/kardianos/osext
-    ln -s ${osext}/* src/bitbucket.org/kardianos/osext
+    export HOME=$(pwd)
+    export GOPATH=$(pwd):$GOPATH
 
     # don't download dependencies as we already have them
-    sed -i '/go get/d' Makefile
+    sed -i '/jteeuwen\/go-bindata/d' Makefile
+    sed -i '/export GOPATH/d' Makefile
+    sed -i 's|bin/go-bindata|go-bindata|' Makefile
   '';
 
   installPhase = ''
@@ -91,11 +33,11 @@ in stdenv.mkDerivation rec {
     cp -R assets $out
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Reverse proxy that creates a secure tunnel between from a public endpoint to a locally running web service";
     homepage = https://ngrok.com/;
     license = licenses.asl20;
-    maintainers = with maintainers; [ iElectric ];
-    platforms = stdenv.lib.platforms.linux;
+    maintainers = with maintainers; [ iElectric cstrahan ];
+    platforms = with platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/tools/misc/ngrok/deps.nix b/pkgs/tools/misc/ngrok/deps.nix
new file mode 100644
index 000000000000..9b2b5053fb7f
--- /dev/null
+++ b/pkgs/tools/misc/ngrok/deps.nix
@@ -0,0 +1,141 @@
+# This file was generated by go2nix.
+{ stdenv, lib, fetchFromGitHub, fetchgit, fetchhg, fetchbzr }:
+
+let
+  goDeps = [
+    {
+      root = "bitbucket.org/kardianos/osext";
+      src = fetchhg {
+        url = "https://bitbucket.org/kardianos/osext";
+        rev = "10";
+        sha256 = "";
+      };
+    }
+    {
+      root = "code.google.com/p/log4go";
+      src = fetchhg {
+        url = "https://code.google.com/p/log4go";
+        rev = "48";
+        sha256 = "";
+      };
+    }
+    {
+      root = "github.com/gorilla/websocket";
+      src = fetchFromGitHub {
+        owner = "gorilla";
+        repo = "websocket";
+        rev = "f4076986b69612ecb8bc7ce06d742eda6286200d";
+        sha256 = "09arvwlxw15maf4z8pcgjc25hd00mckqpdi0byafqfgm3nvvacvq";
+      };
+    }
+    {
+      root = "github.com/inconshreveable/go-update";
+      src = fetchFromGitHub {
+        owner = "inconshreveable";
+        repo = "go-update";
+        rev = "c1385108bc3a016f1c88b75ea7d2e2a356a1571d";
+        sha256 = "16zaxa0i07ismxdmkvjj4dpyc9lgp6wa94q090m9a48si40w9sjn";
+      };
+    }
+    {
+      root = "github.com/inconshreveable/go-vhost";
+      src = fetchFromGitHub {
+        owner = "inconshreveable";
+        repo = "go-vhost";
+        rev = "c4c28117502e4bf00960c8282b2d1c51c865fe2c";
+        sha256 = "1rway6sls6fl2s2jk20ajj36rrlzh9944ncc9pdd19kifix54z32";
+      };
+    }
+    {
+      root = "github.com/inconshreveable/mousetrap";
+      src = fetchFromGitHub {
+        owner = "inconshreveable";
+        repo = "mousetrap";
+        rev = "9dbb96d2c3a964935b0870b5abaea13c98b483aa";
+        sha256 = "1f9g8vm18qv1rcb745a4iahql9vfrz0jni9mnzriab2wy1pfdl5b";
+      };
+    }
+    {
+      root = "github.com/inconshreveable/ngrok";
+      src = fetchFromGitHub {
+        owner = "inconshreveable";
+        repo = "ngrok";
+        rev = "b7d5571aa7f12ac304b8f8286b855cc64dd9bab8";
+        sha256 = "0a5iq9l9f2xdg6gnc9pj0iczhycv1w5iwcqgzzap83xfpy01xkh4";
+      };
+    }
+    {
+      root = "github.com/influxdb/influxdb-go";
+      src = fetchFromGitHub {
+        owner = "influxdb";
+        repo = "influxdb-go";
+        rev = "63c9a5f67dcb633d05164bf8442160c9e2e402f7";
+        sha256 = "16in1xhx94pir06aw166inn0hzpb7836xbws16laabs1p2np7bld";
+      };
+    }
+    {
+      root = "github.com/kr/binarydist";
+      src = fetchFromGitHub {
+        owner = "kr";
+        repo = "binarydist";
+        rev = "9955b0ab8708602d411341e55fffd7e0700f86bd";
+        sha256 = "11wncbbbrdcxl5ff3h6w8vqfg4bxsf8709mh6vda0cv236flkyn3";
+      };
+    }
+    {
+      root = "github.com/nsf/termbox-go";
+      src = fetchFromGitHub {
+        owner = "nsf";
+        repo = "termbox-go";
+        rev = "9aecf65084a5754f12d27508fa2e6ed56851953b";
+        sha256 = "16sak07bgvmax4zxfrd4jia1dgygk733xa8vk8cdx28z98awbfsh";
+      };
+    }
+    {
+      root = "github.com/rcrowley/go-metrics";
+      src = fetchFromGitHub {
+        owner = "rcrowley";
+        repo = "go-metrics";
+        rev = "f770e6f5e91a8770cecee02d5d3f7c00b023b4df";
+        sha256 = "07dc74kiam8v5my7rhi3yxqrpnaapladhk8b3qbnrpjk3shvnx5f";
+      };
+    }
+    {
+      root = "github.com/stathat/go";
+      src = fetchFromGitHub {
+        owner = "stathat";
+        repo = "go";
+        rev = "01d012b9ee2ecc107cb28b6dd32d9019ed5c1d77";
+        sha256 = "0mrn70wjfcs4rfkmga3hbfqmbjk33skcsc8pyqxp02bzpwdpc4bi";
+      };
+    }
+    {
+      root = "gopkg.in/check.v1";
+      src = fetchgit {
+        url = "https://github.com/go-check/check.git";
+        rev = "871360013c92e1c715c2de6d06b54899468a8a2d";
+        sha256 = "0i83qjmd4ri9mrfddhsbpj9nb43rf2j9803k030fj155j31klwcx";
+      };
+    }
+    {
+      root = "gopkg.in/yaml.v1";
+      src = fetchgit {
+        url = "https://github.com/go-yaml/yaml.git";
+        rev = "b0c168ac0cf9493da1f9bb76c34b26ffef940b4a";
+        sha256 = "0jbdy41pplf2d1j24qwr8gc5qsig6ai5ch8rwgvg72kq9q0901cy";
+      };
+    }
+  ];
+
+in
+
+stdenv.mkDerivation rec {
+  name = "go-deps";
+
+  buildCommand =
+    lib.concatStrings
+      (map (dep: ''
+              mkdir -p $out/src/`dirname ${dep.root}`
+              ln -s ${dep.src} $out/src/${dep.root}
+            '') goDeps);
+}