From a6d5a2e442bd67cdf285e6ec1f41b656c9877ab6 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Mon, 18 May 2015 18:18:37 -0700 Subject: [PATCH] consul-alerts: Make go-package --- pkgs/servers/consul/alerts.nix | 27 --- pkgs/servers/consul/deps.nix | 315 ------------------------- pkgs/top-level/all-packages.nix | 2 +- pkgs/top-level/go-packages.nix | 394 ++++++++++++++++++++++++++++++-- 4 files changed, 373 insertions(+), 365 deletions(-) delete mode 100644 pkgs/servers/consul/alerts.nix delete mode 100644 pkgs/servers/consul/deps.nix diff --git a/pkgs/servers/consul/alerts.nix b/pkgs/servers/consul/alerts.nix deleted file mode 100644 index b3dbb21d5bbb..000000000000 --- a/pkgs/servers/consul/alerts.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ lib, goPackages, fetchFromGitHub }: - -with goPackages; - -buildGoPackage rec { - name = "consul-alerts-${version}"; - version = "0.2.0"; - - src = fetchFromGitHub { - owner = "AcalephStorage"; - repo = "consul-alerts"; - rev = "v${version}"; - sha256 = "02rgz68g3i408biq2aqilpqraqirzmba9mh7avdga5bljp427jgn"; - }; - - goPackagePath = "github.com/AcalephStorage/consul-alerts"; - dontInstallSrc = true; - subPackages = [ "./" ]; - - meta = with lib; { - description = "A simple daemon to send notifications based on Consul health checks"; - homepage = https://github.com/AcalephStorage/consul-alerts; - license = licenses.gpl2; - maintainers = with maintainers; [ offline ]; - platforms = platforms.unix; - }; -} diff --git a/pkgs/servers/consul/deps.nix b/pkgs/servers/consul/deps.nix deleted file mode 100644 index ad41dbb70a59..000000000000 --- a/pkgs/servers/consul/deps.nix +++ /dev/null @@ -1,315 +0,0 @@ -{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }: - -let - goDeps = [ - { - root = "github.com/armon/circbuf"; - src = fetchFromGitHub { - owner = "armon"; - repo = "circbuf"; - rev = "f092b4f207b6e5cce0569056fba9e1a2735cb6cf"; - sha256 = "06kwwdwa3hskdh6ws7clj1vim80dyc3ldim8k9y5qpd30x0avn5s"; - }; - } - { - root = "github.com/armon/consul-api"; - src = fetchFromGitHub { - owner = "armon"; - repo = "consul-api"; - rev = "dcfedd50ed5334f96adee43fc88518a4f095e15c"; - sha256 = "1k3yl34j4d8y6xxqdm70pjrbdcnp11dbf8i1mp60480xg0cwpb6d"; - }; - } - { - root = "github.com/armon/go-metrics"; - src = fetchFromGitHub { - owner = "armon"; - repo = "go-metrics"; - rev = "88b7658f24511c4b885942b26e9ea7a61ee37ebc"; - sha256 = "18f7nr6khirdmcsy5mic1yggwc189wfiqvms8i7yfcvfns5nq9cc"; - }; - } - { - root = "github.com/armon/go-radix"; - src = fetchFromGitHub { - owner = "armon"; - repo = "go-radix"; - rev = "e39d623f12e8e41c7b5529e9a9dd67a1e2261f80"; - sha256 = "10vhgr35dfbsm90q8aqp82vhdf4izqrx8bzzgn0h3vrx94c2pnq1"; - }; - } - { - root = "github.com/armon/gomdb"; - src = fetchFromGitHub { - owner = "armon"; - repo = "gomdb"; - rev = "151f2e08ef45cb0e57d694b2562f351955dff572"; - sha256 = "02wdhgfarmmwfbc75snd1dh6p9k9c1y2135apdm6mkr062qlxx61"; - }; - } - { - root = "github.com/golang/protobuf"; - src = fetchFromGitHub { - owner = "golang"; - repo = "protobuf"; - rev = "c22ae3cf020a21ebb7ae566dccbe90fc8ea4f9ea"; - sha256 = "1ab605jw0cprq0kbp0b5iyjw805wk08r3p9mvcyland7v4gfqys2"; - }; - } - { - root = "github.com/hashicorp/consul"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "consul"; - rev = "a022dfcb32246274adc8fb383882353c056d1da3"; - sha256 = "1al6bc62c8qygq4yhr8rq9jkx51ijv11816kipphylw73kyyrzg5"; - }; - } - { - root = "github.com/hashicorp/go-multierror"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "go-multierror"; - rev = "fcdddc395df1ddf4247c69bd436e84cfa0733f7e"; - sha256 = "1gvrm2bqi425mfg55m01z9gppfd7v4ljz1z8bykmh2sc82fj25jz"; - }; - } - { - root = "github.com/hashicorp/consul-template"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "consul-template"; - rev = "v0.7.0"; - sha256 = "0xaym2mi8j3hw1waplhqfypnxv32fi81xxx3clfzk0a6bjmaihfx"; - }; - } - { - root = "github.com/hashicorp/go-checkpoint"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "go-checkpoint"; - rev = "88326f6851319068e7b34981032128c0b1a6524d"; - sha256 = "1npasn9lmvx57nw3wkswwvl5k0wmn01jpalbwv832x5wq4r0nsz4"; - }; - } - { - root = "github.com/hashicorp/go-msgpack"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "go-msgpack"; - rev = "71c2886f5a673a35f909803f38ece5810165097b"; - sha256 = "157f24xnkhclrjwwa1b7lmpj112ynlbf7g1cfw0c657iqny5720j"; - }; - } - { - root = "github.com/hashicorp/go-syslog"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "go-syslog"; - rev = "42a2b573b664dbf281bd48c3cc12c086b17a39ba"; - sha256 = "1j53m2wjyczm9m55znfycdvm4c8vfniqgk93dvzwy8vpj5gm6sb3"; - }; - } - { - root = "github.com/hashicorp/golang-lru"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "golang-lru"; - rev = "f09f965649501e2ac1b0c310c632a7bebdbdc1d4"; - sha256 = "0yjnmk2d2x0kqvkg1sdfkl3jr408yl76rpyqzkkbpkvdcjrz554c"; - }; - } - { - root = "github.com/hashicorp/hcl"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "hcl"; - rev = "513e04c400ee2e81e97f5e011c08fb42c6f69b84"; - sha256 = "041js0k8bj7qsgr79p207m6r3nkpw7839gq31747618sap6w3g8c"; - }; - } - { - root = "github.com/hashicorp/logutils"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "logutils"; - rev = "23b0af5510a2d1442103ef83ffcf53eb82f3debc"; - sha256 = "018bfknmc2qdk0br1ri6dgd45sx308j3qd77sxnzxsyaivw1mm0d"; - }; - } - { - root = "github.com/hashicorp/memberlist"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "memberlist"; - rev = "3d05e25e06bbb9e2b0e0afbd0b1c7dcebdd29cab"; - sha256 = "1pjknjfvbs692y6laizgd4fmd4pqn039vvnmnag7q362mrpf5aj4"; - }; - } - { - root = "github.com/hashicorp/net-rpc-msgpackrpc"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "net-rpc-msgpackrpc"; - rev = "d377902b7aba83dd3895837b902f6cf3f71edcb2"; - sha256 = "05q8qlf42ygafcp8zdyx7y7kv9vpjrxnp8ak4qcszz9kgl2cg969"; - }; - } - { - root = "github.com/hashicorp/raft"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "raft"; - rev = "a88bfa8385bc52c1f25d0fc02d1b55a2708d04ab"; - sha256 = "02kr7919m6iv7l26wnihalfi4lydz886j6x75a53vgchdcsbv7ai"; - }; - } - { - root = "github.com/hashicorp/raft-mdb"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "raft-mdb"; - rev = "4ec3694ffbc74d34f7532e70ef2e9c3546a0c0b0"; - sha256 = "15l4n6zygwn3h118m2945h9jxkryaxxcgy8xij2rxjhzrzpfyj3i"; - }; - } - { - root = "github.com/hashicorp/scada-client"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "scada-client"; - rev = "c26580cfe35393f6f4bf1b9ba55e6afe33176bae"; - sha256 = "0s8xg49fa7d2d0vv8pi37f43rjrgkb7w6x6ydkikz1v8ccg05p3b"; - }; - } - { - root = "github.com/hashicorp/serf"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "serf"; - rev = "f1fd5030d6a55d3edc6916d2ba58e933c21314de"; - sha256 = "0w84iw255aray7acasacwn8njm36aqbxiyalnjqwfsn0pwfjla0b"; - }; - } - { - root = "github.com/hashicorp/terraform"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "terraform"; - rev = "v0.3.7"; - sha256 = "04cs6sjwysg95l5cfsmnpnx3d126bv86qbkg91gj8h98knk5bs6z"; - }; - } - { - root = "github.com/hashicorp/yamux"; - src = fetchFromGitHub { - owner = "hashicorp"; - repo = "yamux"; - rev = "b4f943b3f25da97dec8e26bee1c3269019de070d"; - sha256 = "18ivpiix006f0g085a11gra8z0n6bq344rrgc5rphn7nmnghqchz"; - }; - } - { - root = "github.com/inconshreveable/muxado"; - src = fetchFromGitHub { - owner = "inconshreveable"; - repo = "muxado"; - rev = "f693c7e88ba316d1a0ae3e205e22a01aa3ec2848"; - sha256 = "1vgiwwxhgx9c899f6ikvrs0w6vfsnypzalcqyr0mqm2w816r9hhs"; - }; - } - { - root = "github.com/matttproud/golang_protobuf_extensions"; - src = fetchFromGitHub { - owner = "matttproud"; - repo = "golang_protobuf_extensions"; - rev = "ba7d65ac66e9da93a714ca18f6d1bc7a0c09100c"; - sha256 = "1vz6zj94v90x8mv9h6qfp1211kmzn60ri5qh7p9fzpjkhga5k936"; - }; - } - { - root = "github.com/miekg/dns"; - src = fetchFromGitHub { - owner = "miekg"; - repo = "dns"; - rev = "6427527bba3ea8fdf2b56fba43d20d1e3e76336d"; - sha256 = "1zszpn44kak4cs5lmy9i7sslizqngldgb0ixn0la9x9gxf16h9zn"; - }; - } - { - root = "github.com/mitchellh/cli"; - src = fetchFromGitHub { - owner = "mitchellh"; - repo = "cli"; - rev = "e3c2e3d39391e9beb9660ccd6b4bd9a2f38dd8a0"; - sha256 = "1fwf7wmlhri19bl2yyjd4zlgndgwwqrdry45clpszzjsr8b5wfgm"; - }; - } - { - root = "github.com/mitchellh/mapstructure"; - src = fetchFromGitHub { - owner = "mitchellh"; - repo = "mapstructure"; - rev = "442e588f213303bec7936deba67901f8fc8f18b1"; - sha256 = "076svhy5jlnw4jykm3dsrx2dswifajrpr7d09mz9y6g3lg901rqd"; - }; - } - { - root = "github.com/prometheus/client_golang"; - src = fetchFromGitHub { - owner = "prometheus"; - repo = "client_golang"; - rev = "0.2.0"; - sha256 = "0iq2hlmdazwmpjq2k9gvpv2zprzxzmyzsc89c2kalrwl52ksg250"; - }; - } - { - root = "github.com/prometheus/client_model"; - src = fetchFromGitHub { - owner = "prometheus"; - repo = "client_model"; - rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6"; - sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9"; - }; - } - { - root = "github.com/prometheus/procfs"; - src = fetchFromGitHub { - owner = "prometheus"; - repo = "procfs"; - rev = "6c34ef819e19b4e16f410100ace4aa006f0e3bf8"; - sha256 = "1n48jhx50bhnjznxds4nmz04digbbbbjq3hkvvl29js1grylda0i"; - }; - } - { - root = "github.com/ryanuber/columnize"; - src = fetchFromGitHub { - owner = "ryanuber"; - repo = "columnize"; - rev = "v2.0.1"; - sha256 = "1h3sxzhiwz65vf3cvclirlf6zhdr97v01dpn5cmf3m09rxxpnp3f"; - }; - } - { - root = "github.com/ugorji/go"; - src = fetchFromGitHub { - owner = "ugorji"; - repo = "go"; - rev = "c8676e5e9db1226325ca0ed7771633fb0109878b"; - sha256 = "18r1iajmc9a461kx0pz3lpv91lzlfg93cjw0k0j7ffk6901m0084"; - }; - } - ]; - -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 d9137617b07d..201f6d59ac59 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -768,7 +768,7 @@ let consul-ui = callPackage ../servers/consul/ui.nix { }; - consul-alerts = callPackage ../servers/consul/alerts.nix { }; + consul-alerts = goPackages.consul-alerts; consul-template = goPackages.consul-template; diff --git a/pkgs/top-level/go-packages.nix b/pkgs/top-level/go-packages.nix index e68ded9a3064..557d6cc344fe 100644 --- a/pkgs/top-level/go-packages.nix +++ b/pkgs/top-level/go-packages.nix @@ -1,7 +1,7 @@ /* This file defines the composition for Go packages. */ { overrides, stdenv, go, buildGoPackage, git, pkgconfig, libusb -, fetchgit, fetchhg, fetchurl, fetchFromGitHub, fetchbzr, pkgs }: +, fetchgit, fetchhg, fetchurl, fetchFromGitHub, fetchFromBitbucket, fetchbzr, pkgs }: let isGo13 = go.meta.branch == "1.3"; @@ -149,6 +149,19 @@ let ## THIRD PARTY + airbrake-go = buildGoPackage rec { + rev = "5b5e269e1bc398d43f67e43dafff3414a59cd5a2"; + name = "airbrake-go-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/tobi/airbrake-go"; + + src = fetchFromGitHub { + inherit rev; + owner = "tobi"; + repo = "airbrake-go"; + sha256 = "1bps4y3vpphpj63mshjg2aplh579cvqac0hz7qzvac0d1fqcgkdz"; + }; + }; + ansicolor = buildGoPackage rec { rev = "8368d3b31cf6f2c2464c7a91675342c9a0ac6658"; name = "ansicolor-${stdenv.lib.strings.substring 0 7 rev}"; @@ -242,6 +255,21 @@ let }; }; + bugsnag-go = buildGoPackage rec { + rev = "v1.0.3"; + name = "bugsnag-go-${rev}"; + goPackagePath = "github.com/bugsnag/bugsnag-go"; + + src = fetchFromGitHub { + inherit rev; + owner = "bugsnag"; + repo = "bugsnag-go"; + sha256 = "1ymi5hrvd2nyfwfd12xll43gn00ii3bjb5ma9dfhaaxv2asi3ajx"; + }; + + propagatedBuildInputs = [ panicwrap revel ]; + }; + check-v1 = buildGoPackage rec { rev = "871360013c92e1c715c2de6d06b54899468a8a2d"; name = "check-v1-${stdenv.lib.strings.substring 0 7 rev}"; @@ -321,6 +349,19 @@ let subPackages = [ "./" ]; }; + config = buildGoPackage rec { + rev = "0f78529c8c7e3e9a25f15876532ecbc07c7d99e6"; + name = "config-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/robfig/config"; + + src = fetchFromGitHub { + inherit rev; + owner = "robfig"; + repo = "config"; + sha256 = "0xmxy8ay0wzd307x7xba3rmigvr6rjlpfk9fmn6ir2nc97ifv3i0"; + }; + }; + consul = buildGoPackage rec { rev = "v0.5.1"; name = "consul-${rev}"; @@ -344,6 +385,36 @@ let passthru.ui = pkgs.consul-ui; }; + consul-alerts = buildGoPackage rec { + rev = "7dff28aa4c8c883a65106f8ec22796e1a589edab"; + name = "consul-alerts-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/AcalephStorage/consul-alerts"; + + renameImports = '' + # Remove all references to included dependency store + rm -rf go/src/${goPackagePath}/Godeps + govers -d -m github.com/AcalephStorage/consul-alerts/Godeps/_workspace/src/ "" + + # Fix references to consul-api + govers -d -m github.com/armon/consul-api github.com/hashicorp/consul/api + sed -i 's,consulapi,api,g' go/src/${goPackagePath}/consul/client.go + ''; + + src = fetchFromGitHub { + inherit rev; + owner = "AcalephStorage"; + repo = "consul-alerts"; + sha256 = "1vwybkvjgyilxk3l6avzivd31l8gnk8d0v7bl10qll0cd068fabq"; + }; + + # We just want the consul api not all of consul + extraSrcs = [ + { inherit (consul) src goPackagePath; } + ]; + + buildInputs = [ logrus consul-skipper docopt-go hipchat-go influxdb gopherduty ]; + }; + consul-migrate = buildGoPackage rec { rev = "4977886fc950a0db1a6f0bbadca56dfabf170f9c"; name = "consul-migrate-${stdenv.lib.strings.substring 0 7 rev}"; @@ -359,6 +430,31 @@ let buildInputs = [ raft raft-boltdb raft-mdb ]; }; + consul-skipper = buildGoPackage rec { + rev = "729b4fdcc7f572f7c083673595f939256b80b76f"; + name = "consul-skipper-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/darkcrux/consul-skipper"; + + renameImports = '' + govers -d -m github.com/armon/consul-api github.com/hashicorp/consul/api + sed -i 's,consulapi,api,g' go/src/${goPackagePath}/skipper.go + ''; + + src = fetchFromGitHub { + inherit rev; + owner = "darkcrux"; + repo = "consul-skipper"; + sha256 = "0shqvihbmq1w5ddnkn62qd4k6gs5zalq6k4alacjz92bwf6d2x6x"; + }; + + # We just want the consul api not all of consul + extraSrcs = [ + { inherit (consul) src goPackagePath; } + ]; + + buildInputs = [ logrus ]; + }; + consul-template = buildGoPackage rec { rev = "v0.9.0"; name = "consul-template-${rev}"; @@ -409,6 +505,19 @@ let }; }; + docopt-go = buildGoPackage rec { + rev = "854c423c810880e30b9fecdabb12d54f4a92f9bb"; + name = "docopt-go-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/docopt/docopt-go"; + + src = fetchFromGitHub { + inherit rev; + owner = "docopt"; + repo = "docopt-go"; + sha256 = "1sddkxgl1pwlipfvmv14h8vg9b9wq1km427j1gjarhb5yfqhh3l1"; + }; + }; + ed25519 = buildGoPackage rec { rev = "d2b94fd789ea21d12fac1a4443dd3a3f79cda72c"; name = "ed25519-${stdenv.lib.strings.substring 0 7 rev}"; @@ -420,15 +529,16 @@ let }; }; - fsnotify = buildGoPackage rec { - rev = "4894fe7efedeeef21891033e1cce3b23b9af7ad2"; - name = "fsnotify-${stdenv.lib.strings.substring 0 7 rev}"; - goPackagePath = "github.com/howeyc/fsnotify"; + fsnotify.v1 = buildGoPackage rec { + rev = "v1.2.0"; + name = "fsnotify.v1-${rev}"; + goPackagePath = "gopkg.in/fsnotify.v1"; + src = fetchFromGitHub { inherit rev; - owner = "howeyc"; + owner = "go-fsnotify"; repo = "fsnotify"; - sha256 = "09r3h200nbw8a4d3rn9wxxmgma2a8i6ssaplf3zbdc2ykizsq7mn"; + sha256 = "1308z1by82fbymcra26wjzw7lpjy91kbpp2skmwqcq4q1iwwzvk2"; }; }; @@ -537,6 +647,19 @@ let }; }; + gocolorize = buildGoPackage rec { + rev = "v1.0.0"; + name = "gocolorize-${rev}"; + goPackagePath = "github.com/agtorre/gocolorize"; + + src = fetchFromGitHub { + inherit rev; + owner = "agtorre"; + repo = "gocolorize"; + sha256 = "1dj7s8bgw9qky344d0k9gz661c0m317a08a590184drw7m51hy9p"; + }; + }; + goconvey = buildGoPackage rec { version = "1.5.0"; name = "goconvey-${version}"; @@ -617,6 +740,19 @@ let propagatedBuildInputs = [ ginkgo gomega gosnappy ]; }; + gollectd = buildGoPackage rec { + rev = "cf6dec97343244b5d8a5485463675d42f574aa2d"; + name = "gollectd-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/kimor79/gollectd"; + + src = fetchFromGitHub { + inherit rev; + owner = "kimor79"; + repo = "gollectd"; + sha256 = "1f3ml406cprzjc192csyr2af4wcadkc74kg8n4c0zdzglxxfsqxa"; + }; + }; + gomega = buildGoPackage rec { rev = "8adf9e1730c55cdc590de7d49766cb2acc88d8f2"; name = "gomega-${stdenv.lib.strings.substring 0 7 rev}"; @@ -629,6 +765,19 @@ let }; }; + gomemcache = buildGoPackage rec { + rev = "72a68649ba712ee7c4b5b4a943a626bcd7d90eb8"; + name = "gomemcache-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/bradfitz/gomemcache"; + + src = fetchFromGitHub { + inherit rev; + owner = "bradfitz"; + repo = "gomemcache"; + sha256 = "1r8fpzwhakq8fsppc33n4iivq1pz47xhs0h6bv4x5qiip5mswwvg"; + }; + }; + google-api-go-client = buildGoPackage rec { rev = "34c5554e6406f7f715ede3616b39034247545ce0"; name = "google-api-go-client-${stdenv.lib.strings.substring 0 7 rev}"; @@ -661,6 +810,19 @@ let buildInputs = [ crypto ]; }; + gopherduty = buildGoPackage rec { + rev = "f4906ce7e59b33a50bfbcba93e2cf58778c11fb9"; + name = "gopherduty-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/darkcrux/gopherduty"; + + src = fetchFromGitHub { + inherit rev; + owner = "darkcrux"; + repo = "gopherduty"; + sha256 = "11w1yqc16fxj5q1y5ha5m99j18fg4p9lyqi542x2xbrmjqqialcf"; + }; + }; + gosnappy = buildGoPackage rec { rev = "ce8acff4829e0c2458a67ead32390ac0a381c862"; name = "gosnappy-${stdenv.lib.strings.substring 0 7 rev}"; @@ -732,6 +894,35 @@ let }; }; + pmylund.go-cache = buildGoPackage rec { + rev = "93d85800f2fa6bd0a739e7bd612bfa3bc008b72d"; + name = "go-cache-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/pmylund/go-cache"; + goPackageAliases = [ + "github.com/robfig/go-cache" + ]; + + src = fetchFromGitHub { + inherit rev; + owner = "pmylund"; + repo = "go-cache"; + sha256 = "08wfwm7nk381lv6a95p0hfgqwaksn0vhzz1xxdncjdw6w71isyy7"; + }; + }; + + robfig.go-cache = buildGoPackage rec { + rev = "9fc39e0dbf62c034ec4e45e6120fc69433a3ec51"; + name = "go-cache-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/robfig/go-cache"; + + src = fetchFromGitHub { + inherit rev; + owner = "robfig"; + repo = "go-cache"; + sha256 = "032nh3y43bpzpcm7bdkxfh55aydvzc2jzhigvy5gd9f648m4j9ha"; + }; + }; + go-checkpoint = buildGoPackage rec { rev = "88326f6851319068e7b34981032128c0b1a6524d"; name = "go-checkpoint-${stdenv.lib.strings.substring 0 7 rev}"; @@ -858,7 +1049,7 @@ let sha256 = "07dc74kiam8v5my7rhi3yxqrpnaapladhk8b3qbnrpjk3shvnx5f"; }; - buildInputs = [ influxdb-go stathat ]; + buildInputs = [ influxdb stathat ]; }; armon.go-metrics = buildGoPackage rec { @@ -1091,6 +1282,21 @@ let buildInputs = [ go-multierror ]; }; + hipchat-go = buildGoPackage rec { + rev = "1dd13e154219c15e2611fe46adbb6bf65db419b7"; + name = "hipchat-go-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/tbruyelle/hipchat-go"; + + excludedPackages = "examples"; + + src = fetchFromGitHub { + inherit rev; + owner = "tbruyelle"; + repo = "hipchat-go"; + sha256 = "060wg5yjlh28v03mvm80kwgxyny6cyj7zjpcdg032b8b1sz9z81s"; + }; + }; + hologram = buildGoPackage rec { rev = "2bf08f0edee49297358bd06a0c9bf44ba9051e9c"; name = "hologram-${stdenv.lib.strings.substring 0 7 rev}"; @@ -1131,16 +1337,22 @@ let }; }; - influxdb-go = buildGoPackage rec { - rev = "63c9a5f67dcb633d05164bf8442160c9e2e402f7"; - name = "influxdb-go-${stdenv.lib.strings.substring 0 7 rev}"; - goPackagePath = "github.com/influxdb/influxdb-go"; + influxdb = buildGoPackage rec { + rev = "d80ef2286d476d9e306548305e47c3ba967f5bc2"; + name = "influxdb-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/influxdb/influxdb"; + goPackageAliases = [ + "github.com/influxdb/influxdb-go" + ]; + src = fetchFromGitHub { inherit rev; owner = "influxdb"; - repo = "influxdb-go"; - sha256 = "16in1xhx94pir06aw166inn0hzpb7836xbws16laabs1p2np7bld"; + repo = "influxdb"; + sha256 = "0p3s0pbn5x294qg2r0qgysb5wmspsvjxhccxh2hs6hc24dl6y93b"; }; + + buildInputs = [ bolt crypto statik liner toml pat gollectd ]; }; eckardt.influxdb-go = buildGoPackage rec { @@ -1192,6 +1404,19 @@ let subPackages = [ "./" ]; }; + liner = buildGoPackage rec { + rev = "1bb0d1c1a25ed393d8feb09bab039b2b1b1fbced"; + name = "liner-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/peterh/liner"; + + src = fetchFromGitHub { + inherit rev; + owner = "peterh"; + repo = "liner"; + sha256 = "05ihxpmp6x3hw71xzvjdgxnyvyx2s4lf23xqnfjj16s4j4qidc48"; + }; + }; + log4go = buildGoPackage rec { rev = "48"; name = "log4go-${rev}"; @@ -1206,6 +1431,23 @@ let subPackages = [ "./" ]; # don't build examples }; + logrus = buildGoPackage rec { + rev = "v0.7.3"; + name = "logrus-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/Sirupsen/logrus"; + + excludedPackages = "examples"; + + src = fetchFromGitHub { + inherit rev; + owner = "Sirupsen"; + repo = "logrus"; + sha256 = "1sxksbarllmqb8wz5b2wbwr6q2i32vqasf7bpz4djywy3ig7jwk8"; + }; + + propagatedBuildInputs = [ airbrake-go bugsnag-go raven-go ]; + }; + logutils = buildGoPackage rec { rev = "367a65d59043b4f846d179341d138f01f988c186"; name = "logutils-${stdenv.lib.strings.substring 0 7 rev}"; @@ -1434,16 +1676,62 @@ let }; osext = buildGoPackage rec { - rev = "10"; - name = "osext-${rev}"; - goPackagePath = "bitbucket.org/kardianos/osext"; - src = fetchhg { + rev = "8fef92e41e22a70e700a96b29f066cda30ea24ef"; + name = "osext-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/kardianos/osext"; + goPackageAliases = [ + "github.com/bugsnag/osext" + ]; + + src = fetchFromGitHub { inherit rev; - url = "https://${goPackagePath}"; - sha256 = "1sj9r5pm28l9sqx6354fwp032n53znx9k8495k3dfnyqjrkvlw6n"; + owner = "kardianos"; + repo = "osext"; + sha256 = "1md9c0qlmfhwcwgqg92vfykcy95snci4n815plb15mgj5cf8dm7d"; }; }; + pat = buildGoPackage rec { + rev = "b8a35001b773c267eb260a691f4e5499a3531600"; + name = "pat-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/bmizerany/pat"; + + src = fetchFromGitHub { + inherit rev; + owner = "bmizerany"; + repo = "pat"; + sha256 = "11zxd45rvjm6cn3wzbi18wy9j4vr1r1hgg6gzlqnxffiizkycxmz"; + }; + }; + + pathtree = buildGoPackage rec { + rev = "41257a1839e945fce74afd070e02bab2ea2c776a"; + name = "pathtree-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/robfig/pathtree"; + + src = fetchFromGitHub { + inherit rev; + owner = "robfig"; + repo = "pathtree"; + sha256 = "087hvskjx1zw815h1617i135vwsn5288v579mz6yral91wbn0kvi"; + }; + }; + + panicwrap = buildGoPackage rec { + rev = "e5f9854865b9778a45169fc249e99e338d4d6f27"; + name = "panicwrap-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/bugsnag/panicwrap"; + + src = fetchFromGitHub { + inherit rev; + owner = "bugsnag"; + repo = "panicwrap"; + sha256 = "01afviklmgm25i82c0z9xkjgbrh0j1fm9a1adqfd2jqv0cm41k9d"; + }; + + propagatedBuildInputs = [ osext ]; + }; + perks = buildGoPackage rec { rev = "aac9e2eab5a334037057336897fd10b0289a5ae8"; name = "perks-${stdenv.lib.strings.substring 0 7 rev}"; @@ -1624,6 +1912,51 @@ let }; }; + raven-go = buildGoPackage rec { + rev = "c8f8fb7c415203f52ca882e2661d21bc6dcb54d7"; + name = "raven-go-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/getsentry/raven-go"; + + src = fetchFromGitHub { + inherit rev; + owner = "getsentry"; + repo = "raven-go"; + sha256 = "052avpl8xsqlcmjmi3v00nm23lhs95af6vpaw2sh5xckln0lfbxh"; + }; + }; + + redigo = buildGoPackage rec { + rev = "535138d7bcd717d6531c701ef5933d98b1866257"; + name = "redigo-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/garyburd/redigo"; + + src = fetchFromGitHub { + inherit rev; + owner = "garyburd"; + repo = "redigo"; + sha256 = "1m7nc1gvv5yqnq8ii75f33485il6y6prf8gxl97dimsw94qccc5v"; + }; + }; + + revel = buildGoPackage rec { + rev = "v0.12.0"; + name = "revel-${rev}"; + goPackagePath = "github.com/revel/revel"; + + src = fetchFromGitHub { + inherit rev; + owner = "revel"; + repo = "revel"; + sha256 = "1g88fw5lqh3a9qmx182s64zk3h1s1mx8bljyghissmd9z505pbzf"; + }; + + # Using robfig's old go-cache due to compilation errors. + # Try to switch to pmylund.go-cache after v0.12.0 + propagatedBuildInputs = [ + gocolorize config net pathtree fsnotify.v1 robfig.go-cache redigo gomemcache + ]; + }; + rgbterm = buildGoPackage rec { rev = "c07e2f009ed2311e9c35bca12ec00b38ccd48283"; name = "rgbterm-${stdenv.lib.strings.substring 0 7 rev}"; @@ -1731,6 +2064,21 @@ let }; }; + statik = buildGoPackage rec { + rev = "274df120e9065bdd08eb1120e0375e3dc1ae8465"; + name = "statik-${stdenv.lib.strings.substring 0 7 rev}"; + goPackagePath = "github.com/rakyll/statik"; + + excludedPackages = "example"; + + src = fetchFromGitHub { + inherit rev; + owner = "rakyll"; + repo = "statik"; + sha256 = "0llk7bxmk66wdiy42h32vj1jfk8zg351xq21hwhrq7gkfljghffp"; + }; + }; + termbox-go = buildGoPackage rec { rev = "9aecf65084a5754f12d27508fa2e6ed56851953b"; name = "termbox-go-${stdenv.lib.strings.substring 0 7 rev}"; @@ -1786,14 +2134,15 @@ let }; toml = buildGoPackage rec { - rev = "f87ce853111478914f0bcffa34d43a93643e6eda"; + rev = "056c9bc7be7190eaa7715723883caffa5f8fa3e4"; name = "toml-${stdenv.lib.strings.substring 0 7 rev}"; goPackagePath = "github.com/BurntSushi/toml"; + src = fetchFromGitHub { inherit rev; owner = "BurntSushi"; repo = "toml"; - sha256 = "0g8203y9ycf34j2q3ymxb8nh4habgwdrjn9vdgrginllx73yq565"; + sha256 = "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw"; }; }; @@ -1822,6 +2171,7 @@ let sha256 = "0q6wlw0s9dig11mzcfg25fh2wz7g70zxkqm7c5f58fncxdby2nqj"; }; + # We just want the consul api not all of consul extraSrcs = [ { inherit (consul) src goPackagePath; } ];