diff --git a/pkgs/tools/misc/go-bindata/default.nix b/pkgs/tools/misc/go-bindata/default.nix deleted file mode 100644 index 339126f7c981..000000000000 --- a/pkgs/tools/misc/go-bindata/default.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ stdenv, lib, go, fetchFromGitHub }: - -stdenv.mkDerivation { - name = "go-bindata"; - - src = import ./deps.nix { - inherit stdenv lib fetchFromGitHub; - }; - - buildInputs = [ go ]; - - buildPhase = '' - export GOPATH=$src - go build -v -o go-bindata github.com/jteeuwen/go-bindata/go-bindata - ''; - - installPhase = '' - mkdir -p $out/bin - cp go-bindata $out/bin - ''; - - meta = with lib; { - homepage = "https://github.com/jteeuwen/go-bindata"; - description = "A small utility which generates Go code from any file. Useful for embedding binary data in a Go program."; - maintainers = with maintainers; [ cstrahan ]; - license = licenses.cc0 ; - platforms = platforms.all; - }; -} diff --git a/pkgs/tools/misc/go-bindata/deps.nix b/pkgs/tools/misc/go-bindata/deps.nix deleted file mode 100644 index 617f7dc6abe1..000000000000 --- a/pkgs/tools/misc/go-bindata/deps.nix +++ /dev/null @@ -1,28 +0,0 @@ -# This file was generated by go2nix. -{ stdenv, lib, fetchFromGitHub }: - -let - goDeps = [ - { - root = "github.com/jteeuwen/go-bindata"; - src = fetchFromGitHub { - owner = "jteeuwen"; - repo = "go-bindata"; - rev = "93b909d1499a38620121b0a5eb43a18f3bccb083"; - sha256 = "1v4jl9lnzy0p4nvjfkh96yy0w181n5mkr0kamh743911gfbpq4sh"; - }; - } - ]; - -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); -} diff --git a/pkgs/tools/misc/ngrok/default.nix b/pkgs/tools/misc/ngrok/default.nix index b8bdfd5c896b..2d66ba27ca67 100644 --- a/pkgs/tools/misc/ngrok/default.nix +++ b/pkgs/tools/misc/ngrok/default.nix @@ -1,42 +1,41 @@ -{ stdenv, lib, go, go-bindata, fetchgit, fetchbzr, fetchhg, fetchFromGitHub }: +{ stdenv, git, fetchFromGitHub, goPackages }: -let deps = import ./deps.nix { - inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub; -}; -in stdenv.mkDerivation rec { - name = "ngrok-${version}"; - version = "1.7"; +with goPackages; - buildInputs = [ go go-bindata ]; +buildGoPackage rec { + name = "ngrok-1.7"; + goPackagePath = "ngrok"; - unpackPhase = '' - export GOPATH=$(pwd) - cp -LR ${deps}/src src - chmod u+w -R src - sourceRoot=src/github.com/inconshreveable/ngrok + src = fetchFromGitHub { + rev = "b7d5571aa7f12ac304b8f8286b855cc64dd9bab8"; + owner = "inconshreveable"; + repo = "ngrok"; + sha256 = "0a5iq9l9f2xdg6gnc9pj0iczhycv1w5iwcqgzzap83xfpy01xkh4"; + }; + + subPackages = [ "main/ngrok" "main/ngrokd" ]; + + 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 ''; - preBuild = '' - export HOME=$(pwd) - export GOPATH=$(pwd):$GOPATH + buildInputs = [ git log4go websocket go-vhost mousetrap termbox-go go-metrics + yaml-v1 go-bindata go-update binarydist osext ]; - # don't download dependencies as we already have them - sed -i '/jteeuwen\/go-bindata/d' Makefile - sed -i '/export GOPATH/d' Makefile - sed -i 's|bin/go-bindata|go-bindata|' Makefile - ''; + makeFlags = "-tags release"; - installPhase = '' - make release-client release-server - mkdir -p $out/bin - cp bin/ngrok{d,} $out/bin - ''; - - meta = with lib; { - description = "Reverse proxy that creates a secure tunnel between from a public endpoint to a locally running web service"; + meta = with stdenv.lib; { + description = "Reverse proxy that creates a secure tunnel between from a public endpoint t +o a locally running web service"; homepage = https://ngrok.com/; license = licenses.asl20; 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 deleted file mode 100644 index cc1ed2f3d486..000000000000 --- a/pkgs/tools/misc/ngrok/deps.nix +++ /dev/null @@ -1,141 +0,0 @@ -# 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 = "1sj9r5pm28l9sqx6354fwp032n53znx9k8495k3dfnyqjrkvlw6n"; - }; - } - { - root = "code.google.com/p/log4go"; - src = fetchhg { - url = "https://code.google.com/p/log4go"; - rev = "48"; - sha256 = "0q906sxrmwir295virfibqvdzlaj340qh2r4ysx1ccjrjazc0q5p"; - }; - } - { - 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); -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 98252d8df239..d541dfcee591 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3503,8 +3503,6 @@ let go-repo-root = callPackage ../development/tools/misc/go-repo-root { }; - go-bindata = callPackage ../tools/misc/go-bindata { }; - gox = callPackage ../development/compilers/go/gox.nix { }; gprolog = callPackage ../development/compilers/gprolog { }; diff --git a/pkgs/top-level/go-packages.nix b/pkgs/top-level/go-packages.nix index 128af92eb70f..b00d1427052b 100644 --- a/pkgs/top-level/go-packages.nix +++ b/pkgs/top-level/go-packages.nix @@ -1,6 +1,6 @@ /* This file defines the composition for Go packages. */ -{ overrides, stdenv, go, buildGoPackage +{ overrides, stdenv, go, buildGoPackage, git ,fetchgit, fetchhg, fetchurl, fetchFromGitHub }: let self = _self // overrides; _self = with self; { @@ -46,6 +46,30 @@ let self = _self // overrides; _self = with self; { ## THIRD PARTY + binarydist = buildGoPackage rec { + rev = "9955b0ab8708602d411341e55fffd7e0700f86bd"; + name = "binarydist-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/kr/binarydist"; + + src = fetchFromGitHub { + inherit rev; + owner = "kr"; + repo = "binarydist"; + sha256 = "11wncbbbrdcxl5ff3h6w8vqfg4bxsf8709mh6vda0cv236flkyn3"; + }; + }; + + check-v1 = buildGoPackage rec { + rev = "871360013c92e1c715c2de6d06b54899468a8a2d"; + name = "check-v1-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "gopkg.in/check.v1"; + src = fetchgit { + inherit rev; + url = "https://github.com/go-check/check.git"; + sha256 = "0i83qjmd4ri9mrfddhsbpj9nb43rf2j9803k030fj155j31klwcx"; + }; + }; + cobra = buildGoPackage rec { date = "20140617"; rev = "10a8494a87448bf5003222d9974f166437e7f042"; @@ -83,6 +107,107 @@ let self = _self // overrides; _self = with self; { }; }; + go-bindata = buildGoPackage rec { + version = "3.0.7"; + name = "go-bindata-${version}"; + goPackagePath = "github.com/jteeuwen/go-bindata"; + src = fetchFromGitHub { + repo = "go-bindata"; + owner = "jteeuwen"; + rev = "v${version}"; + sha256 = "1v8xwwlv6my5ixvis31m3vgz4sdc0cq82855j8gxmjp1scinv432"; + }; + + subPackages = [ "./" "go-bindata" ]; # don't build testdata + + meta = with stdenv.lib; { + homepage = "https://github.com/jteeuwen/go-bindata"; + description = "A small utility which generates Go code from any file. Useful for embedding binary data in a Go program."; + maintainers = with maintainers; [ cstrahan ]; + license = licenses.cc0 ; + platforms = platforms.all; + }; + }; + + go-metrics = buildGoPackage rec { + rev = "f770e6f5e91a8770cecee02d5d3f7c00b023b4df"; + name = "go-metrics-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/rcrowley/go-metrics"; + src = fetchFromGitHub { + inherit rev; + owner = "rcrowley"; + repo = "go-metrics"; + sha256 = "07dc74kiam8v5my7rhi3yxqrpnaapladhk8b3qbnrpjk3shvnx5f"; + }; + + buildInputs = [ influxdb-go stathat ]; + }; + + go-update = buildGoPackage rec { + rev = "c1385108bc3a016f1c88b75ea7d2e2a356a1571d"; + name = "go-update-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/inconshreveable/go-update"; + + buildInputs = [ osext binarydist ]; + + src = fetchFromGitHub { + inherit rev; + owner = "inconshreveable"; + repo = "go-update"; + sha256 = "16zaxa0i07ismxdmkvjj4dpyc9lgp6wa94q090m9a48si40w9sjn"; + }; + }; + + go-vhost = buildGoPackage rec { + rev = "c4c28117502e4bf00960c8282b2d1c51c865fe2c"; + name = "go-vhost-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/inconshreveable/go-vhost"; + src = fetchFromGitHub { + inherit rev; + owner = "inconshreveable"; + repo = "go-vhost"; + sha256 = "1rway6sls6fl2s2jk20ajj36rrlzh9944ncc9pdd19kifix54z32"; + }; + }; + + influxdb-go = buildGoPackage rec { + rev = "63c9a5f67dcb633d05164bf8442160c9e2e402f7"; + name = "influxdb-go-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/influxdb/influxdb-go"; + src = fetchFromGitHub { + inherit rev; + owner = "influxdb"; + repo = "influxdb-go"; + sha256 = "16in1xhx94pir06aw166inn0hzpb7836xbws16laabs1p2np7bld"; + }; + }; + + log4go = buildGoPackage rec { + rev = "48"; + name = "log4go-${rev}"; + goPackagePath = "code.google.com/p/log4go"; + + src = fetchhg { + inherit rev; + url = "https://${goPackagePath}"; + sha256 = "0q906sxrmwir295virfibqvdzlaj340qh2r4ysx1ccjrjazc0q5p"; + }; + + subPackages = [ "./" ]; # don't build examples + }; + + mousetrap = buildGoPackage rec { + rev = "9dbb96d2c3a964935b0870b5abaea13c98b483aa"; + name = "mousetrap-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/inconshreveable/mousetrap"; + src = fetchFromGitHub { + inherit rev; + owner = "inconshreveable"; + repo = "mousetrap"; + sha256 = "1f9g8vm18qv1rcb745a4iahql9vfrz0jni9mnzriab2wy1pfdl5b"; + }; + }; + oglematchers = buildGoPackage rec { rev = "4fc24f97b5b74022c2a3f4ca7eed57ca29083d3e"; name = "oglematchers-${stdenv.lib.strings.substring 0 7 rev}"; @@ -123,6 +248,17 @@ let self = _self // overrides; _self = with self; { doCheck = false; # check this again }; + osext = buildGoPackage rec { + rev = "10"; + name = "osext-${rev}"; + goPackagePath = "bitbucket.org/kardianos/osext"; + src = fetchhg { + inherit rev; + url = "https://${goPackagePath}"; + sha256 = "1sj9r5pm28l9sqx6354fwp032n53znx9k8495k3dfnyqjrkvlw6n"; + }; + }; + pflag = buildGoPackage rec { date = "20131112"; rev = "94e98a55fb412fcbcfc302555cb990f5e1590627"; @@ -136,4 +272,54 @@ let self = _self // overrides; _self = with self; { doCheck = false; # bad import path in tests }; + stathat = buildGoPackage rec { + rev = "01d012b9ee2ecc107cb28b6dd32d9019ed5c1d77"; + name = "stathat-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/stathat/go"; + src = fetchFromGitHub { + inherit rev; + owner = "stathat"; + repo = "go"; + sha256 = "0mrn70wjfcs4rfkmga3hbfqmbjk33skcsc8pyqxp02bzpwdpc4bi"; + }; + }; + + termbox-go = buildGoPackage rec { + rev = "9aecf65084a5754f12d27508fa2e6ed56851953b"; + name = "termbox-go-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/nsf/termbox-go"; + src = fetchFromGitHub { + inherit rev; + owner = "nsf"; + repo = "termbox-go"; + sha256 = "16sak07bgvmax4zxfrd4jia1dgygk733xa8vk8cdx28z98awbfsh"; + }; + + subPackages = [ "./" ]; # prevent building _demos + }; + + websocket = buildGoPackage rec { + rev = "f4076986b69612ecb8bc7ce06d742eda6286200d"; + name = "websocket-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/gorilla/websocket"; + + src = fetchFromGitHub { + inherit rev; + owner = "gorilla"; + repo = "websocket"; + sha256 = "09arvwlxw15maf4z8pcgjc25hd00mckqpdi0byafqfgm3nvvacvq"; + }; + }; + + yaml-v1 = buildGoPackage rec { + rev = "b0c168ac0cf9493da1f9bb76c34b26ffef940b4a"; + name = "yaml-v1-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "gopkg.in/yaml.v1"; + src = fetchgit { + inherit rev; + url = "https://github.com/go-yaml/yaml.git"; + sha256 = "0jbdy41pplf2d1j24qwr8gc5qsig6ai5ch8rwgvg72kq9q0901cy"; + }; + }; + }; in self