summaryrefslogtreecommitdiffstats
path: root/krebs
diff options
context:
space:
mode:
authormakefu <github@syntax-fehler.de>2017-02-09 16:45:29 +0100
committermakefu <github@syntax-fehler.de>2017-02-09 16:45:29 +0100
commit8cefb4663624bcc4fbf0379b2cc02f2e84f0320b (patch)
tree6bc760e37c02ea2c54c9702c0251e502b18ada75 /krebs
parent4f34c772c2dd4e48a303d3ea3349ec11cd747498 (diff)
parente78a8c0725cbcf3179d63f8f94ca77e7ccb345d8 (diff)
Merge remote-tracking branch 'tv/master'
Diffstat (limited to 'krebs')
-rw-r--r--krebs/3modules/default.nix1
-rw-r--r--krebs/3modules/kapacitor.nix173
-rw-r--r--krebs/3modules/lass/default.nix4
-rw-r--r--krebs/5pkgs/Reaktor/plugins.nix2
-rw-r--r--krebs/5pkgs/builders.nix293
-rw-r--r--krebs/5pkgs/default.nix24
-rw-r--r--krebs/5pkgs/fortclientsslvpn/default.nix4
-rw-r--r--krebs/5pkgs/kapacitor/default.nix23
-rw-r--r--krebs/5pkgs/newsbot-js/packages.nix1273
-rw-r--r--krebs/5pkgs/telegraf/default.nix27
-rw-r--r--krebs/5pkgs/telegraf/deps-1.1.2.nix588
-rw-r--r--krebs/5pkgs/writers.nix301
12 files changed, 1282 insertions, 1431 deletions
diff --git a/krebs/3modules/default.nix b/krebs/3modules/default.nix
index 4b17c4abd..e0810ab63 100644
--- a/krebs/3modules/default.nix
+++ b/krebs/3modules/default.nix
@@ -21,6 +21,7 @@ let
./git.nix
./go.nix
./iptables.nix
+ ./kapacitor.nix
./newsbot-js.nix
./nginx.nix
./nixpkgs.nix
diff --git a/krebs/3modules/kapacitor.nix b/krebs/3modules/kapacitor.nix
new file mode 100644
index 000000000..2ec67c73d
--- /dev/null
+++ b/krebs/3modules/kapacitor.nix
@@ -0,0 +1,173 @@
+{ config, lib, pkgs, ... }:
+
+with builtins;
+with import <stockholm/lib>;
+
+let
+ cfg = config.krebs.kapacitor;
+
+ out = {
+ options.krebs.kapacitor = api;
+ config = mkIf cfg.enable imp;
+ };
+
+ configOptions = recursiveUpdate {
+ hostname = "localhost";
+ data_dir = cfg.dataDir;
+ http = {
+ bind-address = ":9092";
+ auth-enabled = false;
+ log-enabled = false;
+ gtgwrite-tracing = false;
+ pprof-enabled = false;
+ https-enabled = false;
+ https-certificate = "/etc/ssl/kapacitor.pem";
+ shutdown-timeout = "10s";
+ shared-secret = "";
+ };
+
+ replay ={
+ dir = "${cfg.dataDir}/replay";
+ };
+
+ storage = {
+ boltdb = "${cfg.dataDir}/kapacitor.db";
+ };
+
+ task = {
+ dir = "${cfg.dataDir}/tasks";
+ snapshot-interval = "1m0s";
+ };
+
+ influxdb = [{
+ enabled = true;
+ name = "default";
+ default = false;
+ urls = ["http://localhost:8086"];
+ username = "";
+ password = "";
+ ssl-ca = "";
+ ssl-cert = "";
+ ssl-key = "";
+ insecure-skip-verify = false;
+ timeout = "0s";
+ disable-subscriptions = false;
+ subscription-protocol = "http";
+ udp-bind = "";
+ udp-buffer = 1000;
+ udp-read-buffer = 0;
+ startup-timeout = "5m0s";
+ subscriptions-sync-interval = "1m0s";
+ influxdb.excluded-subscriptions = {
+ _kapacitor = ["autogen"];
+ };
+ }];
+
+ logging = {
+ file = "STDERR";
+ level = "INFO";
+ };
+
+ deadman = {
+ interval = "10s";
+ id = "{{ .Group }}:NODE_NAME for task '{{ .TaskName }}'";
+ message = "{{ .ID }} is {{ if eq .Level \"OK\" }}alive{{ else }}dead{{ end }}: {{ index .Fields \"emitted\" | printf \"%0.3f\" }} points/INTERVAL.";
+ global = false;
+ };
+ } cfg.extraConfig;
+
+ api = {
+ enable = mkEnableOption "kapacitor";
+ dataDir = mkOption {
+ type = types.str;
+ default = "/var/lib/kapacitor";
+ };
+ user = mkOption {
+ type = types.user;
+ default = {
+ name = "kapacitor";
+ home = cfg.dataDir;
+ };
+ };
+ group = mkOption {
+ type = types.group;
+ default = {
+ name = "kapacitor";
+ };
+ };
+ extraConfig = mkOption {
+ type = types.attrs;
+ default = {};
+ };
+ alarms = mkOption {
+ type = with types; attrsOf (submodule {
+ options = {
+ database = mkOption {
+ type = str;
+ };
+ text = mkOption {
+ type = str;
+ };
+ };
+ });
+ default = {};
+ };
+ };
+
+ configFile = pkgs.runCommand "kapacitor.toml" {} ''
+ ${pkgs.remarshal}/bin/remarshal -if json -of toml \
+ < ${pkgs.writeText "kapacitor.json" (builtins.toJSON configOptions)} \
+ > $out
+ '';
+
+ imp = {
+ users = {
+ groups.${cfg.group.name} = {
+ inherit (cfg.group) name gid;
+ };
+ users.${cfg.user.name} = {
+ inherit (cfg.user) home name uid;
+ createHome = true;
+ group = cfg.group.name;
+ };
+ };
+
+ systemd.services.kapacitor = {
+ description = "kapacitor";
+ after = [ "network.target" ];
+ wantedBy = [ "multi-user.target" ];
+
+ restartIfChanged = true;
+
+ serviceConfig = {
+ Restart = "always";
+ User = cfg.user.name;
+ ExecStart = "${pkgs.kapacitor}/bin/kapacitord -config ${configFile}";
+ };
+ };
+
+ systemd.services.kapacitor-alarms = {
+ description = "kapacitor-alarms";
+ after = [ "kapacitor.service" ];
+ wantedBy = [ "multi-user.target" ];
+
+ restartIfChanged = true;
+
+ serviceConfig = {
+ Type = "oneshot";
+ User = cfg.user.name;
+ ExecStart = pkgs.writeDash "add_alarms" ''
+ ${pkgs.kapacitor}/bin/kapacitor delete tasks \*
+ ${concatStrings (mapAttrsToList (name: alarm: ''
+ ${pkgs.kapacitor}/bin/kapacitor define ${name} \
+ -type batch \
+ -tick ${pkgs.writeText "${name}.tick" alarm.text} \
+ -dbrp ${alarm.database}.default
+ ${pkgs.kapacitor}/bin/kapacitor enable ${name}
+ '') cfg.alarms)}
+ '';
+ };
+ };
+
+ };
+in out
diff --git a/krebs/3modules/lass/default.nix b/krebs/3modules/lass/default.nix
index d35a9f357..0b67abd11 100644
--- a/krebs/3modules/lass/default.nix
+++ b/krebs/3modules/lass/default.nix
@@ -302,7 +302,9 @@ with import <stockholm/lib>;
ssh.privkey.path = <secrets/ssh.id_ed25519>;
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOPgQIMYiyD4/Co+nlOQWEzCKssemOEXAY/lbIZZaMhj";
};
-
+ iso = {
+ cores = 1;
+ };
};
users = {
lass = {
diff --git a/krebs/5pkgs/Reaktor/plugins.nix b/krebs/5pkgs/Reaktor/plugins.nix
index d4774dd69..e85e41cfe 100644
--- a/krebs/5pkgs/Reaktor/plugins.nix
+++ b/krebs/5pkgs/Reaktor/plugins.nix
@@ -118,7 +118,7 @@ rec {
};
url-title = (buildSimpleReaktorPlugin "url-title" {
- pattern = "^.*(?P<args>http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+)$$";
+ pattern = "^.*(?P<args>http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+).*$$";
path = with pkgs; [ curl perl ];
script = pkgs.writeDash "lambda-pl" ''
if [ "$#" -gt 0 ]; then
diff --git a/krebs/5pkgs/builders.nix b/krebs/5pkgs/builders.nix
deleted file mode 100644
index 49d04be4d..000000000
--- a/krebs/5pkgs/builders.nix
+++ /dev/null
@@ -1,293 +0,0 @@
-{ config, pkgs, ... }:
-with import <stockholm/lib>;
-rec {
- execve = name: { filename, argv ? null, envp ? {}, destination ? "" }: let
- in writeC name { inherit destination; } /* c */ ''
- #include <unistd.h>
-
- static char *const filename = ${toC filename};
-
- ${if argv == null
- then /* Propagate arguments */ /* c */ ''
- #define MAIN_ARGS int argc, char **argv
- ''
- else /* Provide fixed arguments */ /* c */ ''
- #define MAIN_ARGS void
- static char *const argv[] = ${toC (argv ++ [null])};
- ''}
-
- static char *const envp[] = ${toC (
- mapAttrsToList (k: v: "${k}=${v}") envp ++ [null]
- )};
-
- int main (MAIN_ARGS) {
- execve(filename, argv, envp);
- return -1;
- }
- '';
-
- execveBin = name: cfg: execve name (cfg // { destination = "/bin/${name}"; });
-
- makeScriptWriter = interpreter: name: text:
- assert (with types; either absolute-pathname filename).check name;
- pkgs.writeOut (baseNameOf name) {
- ${optionalString (types.absolute-pathname.check name) name} = {
- executable = true;
- text = "#! ${interpreter}\n${text}";
- };
- };
-
- writeBash = name: text:
- assert (with types; either absolute-pathname filename).check name;
- pkgs.writeOut (baseNameOf name) {
- ${optionalString (types.absolute-pathname.check name) name} = {
- check = pkgs.writeDash "shellcheck.sh" ''
- ${pkgs.haskellPackages.ShellCheck}/bin/shellcheck "$1" || :
- '';
- executable = true;
- text = "#! ${pkgs.bash}/bin/bash\n${text}";
- };
- };
-
- writeBashBin = name:
- assert types.filename.check name;
- pkgs.writeBash "/bin/${name}";
-
- writeC = name: { destination ? "" }: src: pkgs.runCommand name {} /* sh */ ''
- PATH=${makeBinPath (with pkgs; [
- binutils
- coreutils
- gcc
- ])}
- src=${pkgs.writeText "${name}.c" src}
- exe=$out${destination}
- mkdir -p "$(dirname "$exe")"
- gcc -O -Wall -o "$exe" $src
- strip --strip-unneeded "$exe"
- '';
-
- writeDash = makeScriptWriter "${pkgs.dash}/bin/dash";
-
- writeDashBin = name:
- assert types.filename.check name;
- pkgs.writeDash "/bin/${name}";
-
- writeEximConfig = name: text: pkgs.runCommand name {
- inherit text;
- passAsFile = [ "text" ];
- } /* sh */ ''
- # TODO validate exim config even with config.nix.useChroot == true
- # currently doing so will fail because "user exim was not found"
- #${pkgs.exim}/bin/exim -C "$textPath" -bV >/dev/null
- mv "$textPath" $out
- '';
-
- writeOut = name: specs0:
- let
- writers.link =
- { path
- , link
- }:
- assert path == "" || types.absolute-pathname.check path;
- assert types.package.check link;
- {
- install = /* sh */ ''
- ${optionalString (dirOf path != "/") /* sh */ ''
- ${pkgs.coreutils}/bin/mkdir -p $out${dirOf path}
- ''}
- ${pkgs.coreutils}/bin/ln -s ${link} $out${path}
- '';
- };
-
- writers.text =
- { path
- , check ? null
- , executable ? false
- , mode ? if executable then "0755" else "0644"
- , text
- }:
- assert path == "" || types.absolute-pathname.check path;
- assert types.bool.check executable;
- assert types.file-mode.check mode;
- rec {
- var = "file_${hashString "sha1" path}";
- val = text;
- install = /* sh */ ''
- ${optionalString (check != null) /* sh */ ''
- ${check} ''$${var}Path
- ''}
- ${pkgs.coreutils}/bin/install -m ${mode} -D ''$${var}Path $out${path}
- '';
- };
-
- write = spec: writers.${spec.type} (removeAttrs spec ["type"]);
-
- specs =
- mapAttrsToList
- (path: spec: let
- known-types = [ "link" "text" ];
- found-types = attrNames (getAttrs known-types spec);
- type = assert length found-types == 1; head found-types;
- in spec // { inherit path type; })
- specs0;
-
- files = map write specs;
-
- filevars = genAttrs' (filter (hasAttr "var") files)
- (spec: nameValuePair spec.var spec.val);
-
- env = filevars // { passAsFile = attrNames filevars; };
- in
- pkgs.runCommand name env /* sh */ ''
- set -efu
- ${concatMapStringsSep "\n" (getAttr "install") files}
- '';
-
- writeHaskell =
- k:
- let
- k' = parseDrvName k;
- name = k'.name;
- version = if k'.version != "" then k'.version else "0";
- in
- { base-depends ? ["base"]
- , executables ? {}
- , ghc-options ? ["-Wall" "-O3" "-threaded" "-rtsopts"]
- , haskellPackages ? pkgs.haskellPackages
- , library ? null
- , license ? "WTFPL"
- }:
- let
- isExecutable = executables != {};
- isLibrary = library != null;
-
- cabal-file = pkgs.writeText "${name}-${version}.cabal" /* cabal */ ''
- build-type: Simple
- cabal-version: >= 1.2
- name: ${name}
- version: ${version}
- ${concatStringsSep "\n" (mapAttrsToList exe-section executables)}
- ${optionalString isLibrary (lib-section library)}
- '';
-
- exe-install =
- exe-name:
- { file ? pkgs.writeText "${name}-${exe-name}.hs" text
- , relpath ? "${exe-name}.hs"
- , text
- , ... }:
- if types.filename.check exe-name
- then /* sh */ "install -D ${file} $out/${relpath}"
- else throw "argument ‘exe-name’ is not a ${types.filename.name}";
-
- exe-section =
- exe-name:
- { build-depends ? base-depends ++ extra-depends
- , extra-depends ? []
- , file ? pkgs.writeText "${name}-${exe-name}.hs" text
- , relpath ? "${exe-name}.hs"
- , text
- , ... }: /* cabal */ ''
- executable ${exe-name}
- build-depends: ${concatStringsSep "," build-depends}
- ghc-options: ${toString ghc-options}
- main-is: ${relpath}
- '';
-
- get-depends =
- { build-depends ? base-depends ++ extra-depends
- , extra-depends ? []
- , ...
- }:
- build-depends;
-
- lib-install =
- { exposed-modules
- , ... }:
- concatStringsSep "\n" (mapAttrsToList mod-install exposed-modules);
-
- lib-section =
- { build-depends ? base-depends ++ extra-depends
- , extra-depends ? []
- , exposed-modules
- , ... }: /* cabal */ ''
- library
- build-depends: ${concatStringsSep "," build-depends}
- ghc-options: ${toString ghc-options}
- exposed-modules: ${concatStringsSep "," (attrNames exposed-modules)}
- '';
-
- mod-install =
- mod-name:
- { file ? pkgs.writeText "${name}-${mod-name}.hs" text
- , relpath ? "${replaceStrings ["."] ["/"] mod-name}.hs"
- , text
- , ... }:
- if types.haskell.modid.check mod-name
- then /* sh */ "install -D ${file} $out/${relpath}"
- else throw "argument ‘mod-name’ is not a ${types.haskell.modid.name}";
- in
- haskellPackages.mkDerivation {
- inherit isExecutable isLibrary license version;
- executableHaskellDepends =
- attrVals
- (concatMap get-depends (attrValues executables))
- haskellPackages;
- libraryHaskellDepends =
- attrVals
- (optionals isLibrary (get-depends library))
- haskellPackages;
- pname = name;
- src = pkgs.runCommand "${name}-${version}-src" {} /* sh */ ''
- install -D ${cabal-file} $out/${cabal-file.name}
- ${optionalString isLibrary (lib-install library)}
- ${concatStringsSep "\n" (mapAttrsToList exe-install executables)}
- '';
- };
-
- writeJq = name: src: pkgs.runCommand name {} /* sh */ ''
- name=${assert types.filename.check name; name}
- src=${shell.escape src}
-
- # syntax check
- printf '%s' "$src" > src.jq
- ${pkgs.jq}/bin/jq -f src.jq < /dev/null
-
- cp src.jq "$out"
- '';
-
- writeJSON = name: value: pkgs.writeText name (toJSON value);
-
- writeNixFromCabal =
- trace (toString [
- "The function `writeNixFromCabal` has been deprecated in favour of"
- "`writeHaskell`."
- ])
- (name: path: pkgs.runCommand name {} /* sh */ ''
- ${pkgs.cabal2nix}/bin/cabal2nix ${path} > $out
- '');
-
- writePython2 = name: src: pkgs.runCommand name {} /* sh */ ''
- name=${assert types.filename.check name; name}
- src=${shell.escape src}
-
- # syntax check
- printf '%s' "$src" > src.py
- ${pkgs.python2}/bin/python -m py_compile src.py
-
- cp src.py "$out"
- '';
-
- writePython3 = name: src: pkgs.runCommand name {} /* sh */ ''
- name=${assert types.filename.check name; name}
- src=${shell.escape src}
-
- # syntax check
- printf '%s' "$src" > src.py
- ${pkgs.python3}/bin/python -m py_compile src.py
-
- cp src.py "$out"
- '';
-
- writeSed = makeScriptWriter "${pkgs.gnused}/bin/sed -f";
-}
diff --git a/krebs/5pkgs/default.nix b/krebs/5pkgs/default.nix
index e01b6e804..8bb244cd3 100644
--- a/krebs/5pkgs/default.nix
+++ b/krebs/5pkgs/default.nix
@@ -1,13 +1,16 @@
{ config, lib, pkgs, ... }@args:
with import <stockholm/lib>;
{
- nixpkgs.config.packageOverrides = pkgs: let
+ imports = [
+ ./writers.nix
+ ];
+ nixpkgs.config.packageOverrides = oldpkgs: let
# This callPackage will try to detect obsolete overrides.
callPackage = path: args: let
override = pkgs.callPackage path args;
upstream = optionalAttrs (override ? "name")
- (pkgs.${(parseDrvName override.name).name} or {});
+ (oldpkgs.${(parseDrvName override.name).name} or {});
in if upstream ? "name" &&
override ? "name" &&
compareVersions upstream.name override.name != -1
@@ -15,14 +18,13 @@ with import <stockholm/lib>;
else override;
in {}
- // import ./builders.nix args
// mapAttrs (_: flip callPackage {})
(filterAttrs (_: dir: pathExists (dir + "/default.nix"))
(subdirsOf ./.))
// {
empty = pkgs.runCommand "empty-1.0.0" {} "mkdir $out";
- haskellPackages = pkgs.haskellPackages.override {
+ haskellPackages = oldpkgs.haskellPackages.override {
overrides = self: super:
mapAttrs (name: path: self.callPackage path {})
(mapAttrs'
@@ -45,17 +47,15 @@ with import <stockholm/lib>;
buildbot-worker = callPackage ./buildbot/worker.nix {};
# https://github.com/proot-me/PRoot/issues/106
- proot = overrideDerivation pkgs.proot (oldAttrs: {
- patches = singleton (pkgs.fetchurl {
- url = https://github.com/openmole/PRoot/commit/10119a1f1fd7dea012464ae176c2b5fc3eb18928.diff;
- sha256 = "0cmd95mz8p5ifjvfvi4g9zzyxqddbscxin2j3a9zbmbjl2wi458g";
- });
- });
+ proot = pkgs.writeDashBin "proot" ''
+ export PROOT_NO_SECCOMP=1
+ exec ${oldpkgs.proot}/bin/proot "$@"
+ '';
# XXX symlinkJoin changed arguments somewhere around nixpkgs d541e0d
symlinkJoin = { name, paths, ... }@args: let
- x = pkgs.symlinkJoin args;
- in if typeOf x != "lambda" then x else pkgs.symlinkJoin name paths;
+ x = oldpkgs.symlinkJoin args;
+ in if typeOf x != "lambda" then x else oldpkgs.symlinkJoin name paths;
test = {
infest-cac-centos7 = callPackage ./test/infest-cac-centos7 {};
diff --git a/krebs/5pkgs/fortclientsslvpn/default.nix b/krebs/5pkgs/fortclientsslvpn/default.nix
index 07420c4d3..cbcfab05f 100644
--- a/krebs/5pkgs/fortclientsslvpn/default.nix
+++ b/krebs/5pkgs/fortclientsslvpn/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, gtk, glib, libSM, gdk_pixbuf, libX11, libXinerama, iproute,
+{ stdenv, lib, fetchurl, gnome3, glib, libSM, gdk_pixbuf, libX11, libXinerama, iproute,
makeWrapper, libredirect, ppp, coreutils, gawk, pango }:
stdenv.mkDerivation rec {
name = "forticlientsslvpn";
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
];
guiLibPath = lib.makeLibraryPath [
- gtk
+ gnome3.gtk
glib
libSM
gdk_pixbuf
diff --git a/krebs/5pkgs/kapacitor/default.nix b/krebs/5pkgs/kapacitor/default.nix
deleted file mode 100644
index 804826941..000000000
--- a/krebs/5pkgs/kapacitor/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ stdenv, lib, fetchFromGitHub, buildGoPackage }:
-
-buildGoPackage rec {
- name = "kapacitor-${version}";
- version = "1.0.0";
-
- goPackagePath = "github.com/influxdata/kapacitor";
-
- src = fetchFromGitHub {
- owner = "influxdata";
- repo = "kapacitor";
- rev = "v${version}";
- sha256 = "14l9bhj6qdif79s4dyqqbnjgj3m4iarvw0ckld1wdhpdgvl8w9qh";
- };
-
- meta = with lib; {
- description = "Open source framework for processing, monitoring, and alerting on time series data";
- license = licenses.mit;
- homepage = https://influxdata.com/time-series-platform/kapacitor/;
- maintainers = with maintainers; [offline];
- platforms = with platforms; linux;
- };
-}
diff --git a/krebs/5pkgs/newsbot-js/packages.nix b/krebs/5pkgs/newsbot-js/packages.nix
index 982a9d55c..62921cb8f 100644
--- a/krebs/5pkgs/newsbot-js/packages.nix
+++ b/krebs/5pkgs/newsbot-js/packages.nix
@@ -1,35 +1,16 @@
{ self, fetchurl, fetchgit ? null, lib }:
{
- by-spec."addressparser"."~0.1.3" =
- self.by-version."addressparser"."0.1.3";
- by-version."addressparser"."0.1.3" = self.buildNodePackage {
- name = "addressparser-0.1.3";
- version = "0.1.3";
- bin = false;
- src = fetchurl {
- url = "http://registry.npmjs.org/addressparser/-/addressparser-0.1.3.tgz";
- name = "addressparser-0.1.3.tgz";
- sha1 = "9e9ab43d257e1ae784e1df5f580c9f5240f58874";
- };
- deps = {
- };
- optionalDependencies = {
- };
- peerDependencies = [];
- os = [ ];
- cpu = [ ];
- };
- by-spec."ansi-color"."0.2.1" =
- self.by-version."ansi-color"."0.2.1";
- by-version."ansi-color"."0.2.1" = self.buildNodePackage {
- name = "ansi-color-0.2.1";
- version = "0.2.1";
+ by-spec."addressparser"."^1.0.1" =
+ self.by-version."addressparser"."1.0.1";
+ by-version."addressparser"."1.0.1" = self.buildNodePackage {
+ name = "addressparser-1.0.1";
+ version = "1.0.1";
bin = false;
src = fetchurl {
- url = "http://registry.npmjs.org/ansi-color/-/ansi-color-0.2.1.tgz";
- name = "ansi-color-0.2.1.tgz";
- sha1 = "3e75c037475217544ed763a8db5709fa9ae5bf9a";
+ url = "https://registry.npmjs.org/addressparser/-/addressparser-1.0.1.tgz";
+ name = "addressparser-1.0.1.tgz";
+ sha1 = "47afbe1a2a9262191db6838e4fd1d39b40821746";
};
deps = {
};
@@ -40,15 +21,15 @@
cpu = [ ];
};
by-spec."ansi-regex"."^2.0.0" =
- self.by-version."ansi-regex"."2.0.0";
- by-version."ansi-regex"."2.0.0" = self.buildNodePackage {
- name = "ansi-regex-2.0.0";
- version = "2.0.0";
+ self.by-version."ansi-regex"."2.1.1";
+ by-version."ansi-regex"."2.1.1" = self.buildNodePackage {
+ name = "ansi-regex-2.1.1";
+ version = "2.1.1";
bin = false;
src = fetchurl {
- url = "http://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz";
- name = "ansi-regex-2.0.0.tgz";
- sha1 = "c5061b6e0ef8a81775e50f5d66151bf6bf371107";
+ url = "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz";
+ name = "ansi-regex-2.1.1.tgz";
+ sha1 = "c3b33ab5ee360d86e0e628f0468ae7ef27d654df";
};
deps = {
};
@@ -58,16 +39,16 @@
os = [ ];
cpu = [ ];
};
- by-spec."ansi-styles"."^2.1.0" =
- self.by-version."ansi-styles"."2.1.0";
- by-version."ansi-styles"."2.1.0" = self.buildNodePackage {
- name = "ansi-styles-2.1.0";
- version = "2.1.0";
+ by-spec."ansi-styles"."^2.2.1" =
+ self.by-version."ansi-styles"."2.2.1";
+ by-version."ansi-styles"."2.2.1" = self.buildNodePackage {
+ name = "ansi-styles-2.2.1";
+ version = "2.2.1";
bin = false;
src = fetchurl {
- url = "http://registry.npmjs.org/ansi-styles/-/ansi-styles-2.1.0.tgz";
- name = "ansi-styles-2.1.0.tgz";
- sha1 = "990f747146927b559a932bf92959163d60c0d0e2";
+ url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz";
+ name = "ansi-styles-2.2.1.tgz";
+ sha1 = "b432dd3358b634cf75e1e4664368240533c1ddbe";
};
deps = {
};
@@ -84,7 +65,7 @@
version = "0.0.1";
bin = false;
src = fetchurl {
- url = "http://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz";
+ url = "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz";
name = "array-filter-0.0.1.tgz";
sha1 = "7da8cf2e26628ed732803581fd21f67cacd2eeec";
};
@@ -103,7 +84,7 @@
version = "0.0.1";
bin = false;
src = fetchurl {
- url = "http://registry.npmjs.org/array-indexofobject/-/array-indexofobject-0.0.1.tgz";
+ url = "https://registry.npmjs.org/array-indexofobject/-/array-indexofobject-0.0.1.tgz";
name = "array-indexofobject-0.0.1.tgz";
sha1 = "aaa128e62c9b3c358094568c219ff64fe489d42a";
};
@@ -122,7 +103,7 @@
version = "0.0.0";
bin = false;
src = fetchurl {
- url = "http://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz";
+ url = "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz";
name = "array-map-0.0.0.tgz";
sha1 = "88a2bab73d1cf7bcd5c1b118a003f66f665fa662";
};
@@ -141,7 +122,7 @@
version = "0.0.0";
bin = false;
src = fetchurl {
- url = "http://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz";
+ url = "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz";
name = "array-reduce-0.0.0.tgz";
sha1 = "173899d3ffd1c7d9383e4479525dbe278cab5f2b";
};
@@ -153,16 +134,35 @@
os = [ ];
cpu = [ ];
};
- by-spec."asn1"."0.1.11" =
- self.by-version."asn1"."0.1.11";
- by-version."asn1"."0.1.11" = self.buildNodePackage {
- name = "asn1-0.1.11";
- version = "0.1.11";
+ by-spec."asn1"."~0.2.3" =
+ self.by-version."asn1"."0.2.3";
+ by-version."asn1"."0.2.3" = self.buildNodePackage {
+ name = "asn1-0.2.3";
+ version = "0.2.3";
+ bin = false;
+ src = fetchurl {
+ url = "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz";
+ name = "asn1-0.2.3.tgz";
+ sha1 = "dac8787713c9966849fc8180777ebe9c1ddf3b86";
+ };
+ deps = {
+ };
+ optionalDependencies = {
+ };
+ peerDependencies = [];
+ os = [ ];
+ cpu = [ ];
+ };
+ by-spec."assert-plus"."^0.2.0" =
+ self.by-version."assert-plus"."0.2.0";
+ by-version."assert-plus"."0.2.0" = self.buildNodePackage {
+ name = "assert-plus-0.2.0";
+ version = "0.2.0";
bin = false;
src = fetchurl {
- url = "http://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz";
- name = "asn1-0.1.11.tgz";
- sha1 = "559be18376d08a4ec4dbe80877d27818639b2df7";
+ url = "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz";
+ name = "assert-plus-0.2.0.tgz";
+ sha1 = "d74e1b87e7affc0db8aadb7021f3fe48101ab234";
};
deps = {
};
@@ -172,16 +172,16 @@
os = [ ];
cpu = [ ];
};
- by-spec."assert-plus"."^0.1.5" =
- self.by-version."assert-plus"."0.1.5";
- by-version."assert-plus"."0.1.5" = self.buildNodePackage {
- name = "assert-plus-0.1.5";
- version = "0.1.5";
+ by-spec."assert-plus"."^1.0.0" =
+ self.by-version."assert-plus"."1.0.0";
+ by-version."assert-plus"."1.0.0" = self.buildNodePackage {
+ name = "assert-plus-1.0.0";
+ version = "1.0.0";
bin = false;
src = fetchurl {
- url = "http://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz";
- name = "assert-plus-0.1.5.tgz";
- sha1 = "ee74009413002d84cec7219c6ac811812e723160";
+ url = "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz";
+ name = "assert-plus-1.0.0.tgz";
+ sha1 = "f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525";
};
deps = {
};
@@ -191,16 +191,16 @@
os = [ ];
cpu = [ ];
};
- by-spec."async"."^1.4.0" =
- self.by-version."async"."1.4.2";
- by-version."async"."1.4.2" = self.buildNodePackage {
- name = "async-1.4.2";
- version = "1.4.2";
+ by-spec."asynckit"."^0.4.0" =
+ self.by-version."asynckit"."0.4.0";
+ by-version."asynckit"."0.4.0" = self.buildNodePackage {
+ name = "asynckit-0.4.0";
+ version = "0.4.0";
bin = false;
src = fetchurl {
- url = "http://registry.npmjs.org/async/-/async-1.4.2.tgz";
- name = "async-1.4.2.tgz";
- sha1 = "6c9edcb11ced4f0dd2f2d40db0d49a109c088aab";
+ url = "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz";
+ name = "asynckit-0.4.0.tgz";
+ sha1 = "c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79";
};
deps = {
};
@@ -210,16 +210,16 @@
os = [ ];
cpu = [ ];
};
- by-spec."aws-sign2"."~0.5.0" =
- self.by-version."aws-sign2"."0.5.0";
- by-version."aws-sign2"."0.5.0" = self.buildNodePackage {
- name = "aws-sign2-0.5.0";
- version = "0.5.0";
+ by-spec."aws-sign2"."~0.6.0" =
+ self.by-version."aws-sign2"."0.6.0";
+ by-version."aws-sign2"."0.6.0" = self.buildNodePackage {
+ name = "aws-sign2-0.6.0";
+ version = "0.6.0";
bin = false;
src = fetchurl {
- url = "http://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz";
- name = "aws-sign2-0.5.0.tgz";
- sha1 = "c57103f7a17fc037f02d7c2e64b602ea223f7d63";
+ url = "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz";
+ name = "aws-sign2-0.6.0.tgz";
+ sha1 = "14342dd38dbcc94d0e5b87d763cd63612c0e794f";
};
deps = {
};
@@ -229,19 +229,18 @@
os = [ ];
cpu = [ ];
};
- by-spec."bl"."~1.0.0" =
- self.by-version."bl"."1.0.0";
- by-version."bl"."1.0.0" = self.buildNodePackage {
- name = "bl-1.0.0";
- version = "1.0.0";
+ by-spec."aws4"."^1.2.1" =
+ self.by-version."aws4"."1.5.0";
+ by-version."aws4"."1.5.0" = self.buildNodePackage {
+ name = "aws4-1.5.0";
+ version = "1.5.0";
bin = false;
src = fetchurl {
- url = "http://registry.npmjs.org/bl/-/bl-1.0.0.tgz";
- name = "bl-1.0.0.tgz";
- sha1 = "ada9a8a89a6d7ac60862f7dec7db207873e0c3f5";
+ url = "https://registry.npmjs.org/aws4/-/aws4-1.5.0.tgz";
+ name = "aws4-1.5.0.tgz";
+ sha1 = "0a29ffb79c31c9e712eeb087e8e7a64b4a56d755";
};
deps = {
- "readable-stream-2.0.2" = self.by-version."readable-stream"."2.0.2";
};
optionalDependencies = {
};
@@ -249,18 +248,19 @@
os = [ ];
cpu = [ ];
};
- by-spec."bluebird"."^2.9.30" =
- self.by-version."bluebird"."2.10.2";
- by-version."bluebird"."2.10.2" = self.buildNodePackage {
- name = "bluebird-2.10.2";
- version = "2.10.2";
+ by-spec."bcrypt-pbkdf"."^1.0.0" =
+ self.by-version."bcrypt-pbkdf"."1.0.1";
+ by-version."bcrypt-pbkdf"."1.0.1" = self.buildNodePackage {
+ name = "bcrypt-pbkdf-1.0.1";
+ version = "1.0.1";
bin = false;