diff options
Diffstat (limited to 'lass')
-rw-r--r-- | lass/1systems/echelon.nix | 1 | ||||
-rw-r--r-- | lass/1systems/mors.nix | 7 | ||||
-rw-r--r-- | lass/2configs/base.nix | 2 | ||||
-rw-r--r-- | lass/2configs/bitlbee.nix | 3 | ||||
-rw-r--r-- | lass/2configs/git.nix | 1 | ||||
-rw-r--r-- | lass/2configs/go.nix | 21 | ||||
-rw-r--r-- | lass/2configs/ircd.nix | 21 | ||||
-rw-r--r-- | lass/5pkgs/default.nix | 1 | ||||
-rw-r--r-- | lass/5pkgs/go/default.nix | 2 | ||||
-rw-r--r-- | lass/5pkgs/newsbot-js/default.nix | 60 | ||||
-rw-r--r-- | lass/5pkgs/newsbot-js/packages.nix | 1442 |
11 files changed, 1544 insertions, 17 deletions
diff --git a/lass/1systems/echelon.nix b/lass/1systems/echelon.nix index 1320e0782..e0948d95e 100644 --- a/lass/1systems/echelon.nix +++ b/lass/1systems/echelon.nix @@ -17,6 +17,7 @@ in { ../2configs/redis.nix ../2configs/go.nix ../2configs/ircd.nix + ../2configs/newsbot-js.nix { networking.interfaces.enp2s1.ip4 = [ { diff --git a/lass/1systems/mors.nix b/lass/1systems/mors.nix index c0c33828b..7076c8b14 100644 --- a/lass/1systems/mors.nix +++ b/lass/1systems/mors.nix @@ -23,7 +23,6 @@ ../2configs/wordpress.nix ../2configs/bitlbee.nix ../2configs/firefoxPatched.nix - ../2configs/realwallpaper.nix ../2configs/skype.nix ]; @@ -179,6 +178,7 @@ sshpass get genid + teamspeak_client ]; #TODO: fix this shit @@ -210,4 +210,9 @@ ]; }; }; + #touchpad config + services.xserver.synaptics = { + enable = true; + tapButtons = false; + }; } diff --git a/lass/2configs/base.nix b/lass/2configs/base.nix index 43c4f4e34..7fdc643a7 100644 --- a/lass/2configs/base.nix +++ b/lass/2configs/base.nix @@ -44,7 +44,7 @@ with lib; build.source = { git.nixpkgs = { url = https://github.com/Lassulus/nixpkgs; - rev = "e916273209560b302ab231606babf5ce1c481f08"; + rev = "b9270a2e8ac3d2cf4c95075a9529528aa1d859da"; }; }; }; diff --git a/lass/2configs/bitlbee.nix b/lass/2configs/bitlbee.nix index 3a0080402..fa14c7fea 100644 --- a/lass/2configs/bitlbee.nix +++ b/lass/2configs/bitlbee.nix @@ -8,8 +8,9 @@ in { ../3modules/bitlbee.nix ]; - config.lass.bitlbee = { + lass.bitlbee = { enable = true; bitlbeePkg = lpkgs.bitlbee; + portNumber = 6666; }; } diff --git a/lass/2configs/git.nix b/lass/2configs/git.nix index d63705ab6..2164b2e33 100644 --- a/lass/2configs/git.nix +++ b/lass/2configs/git.nix @@ -32,6 +32,7 @@ let wai-middleware-time = {}; web-routes-wai-custom = {}; go = {}; + newsbot-js = {}; }; restricted-repos = mapAttrs make-restricted-repo ( diff --git a/lass/2configs/go.nix b/lass/2configs/go.nix index 30d3e6ae5..81a02ec7c 100644 --- a/lass/2configs/go.nix +++ b/lass/2configs/go.nix @@ -1,5 +1,6 @@ -{ config, pkgs, ... }: +{ config, lib, pkgs, ... }: +with lib; { imports = [ ../3modules/go.nix @@ -10,7 +11,19 @@ lass.go = { enable = true; }; - krebs.iptables.tables.filter.INPUT.rules = [ - { predicate = "-i retiolum -p tcp --dport 1337"; target = "ACCEPT"; } - ]; + krebs.nginx = { + enable = true; + servers.go = { + locations = [ + (nameValuePair "/" '' + proxy_set_header Host go; + proxy_pass http://localhost:1337; + '') + ]; + server-names = [ + "go" + "go.retiolum" + ]; + }; + }; } diff --git a/lass/2configs/ircd.nix b/lass/2configs/ircd.nix index de96ad9d6..4d2c134b6 100644 --- a/lass/2configs/ircd.nix +++ b/lass/2configs/ircd.nix @@ -4,7 +4,8 @@ krebs.iptables.tables.filter.INPUT.rules = [ { predicate = "-i retiolum -p tcp --dport 6667"; target = "ACCEPT"; } ]; - config.services.charybdis = { + + services.charybdis = { enable = true; config = '' serverinfo { @@ -45,24 +46,28 @@ class "users" { ping_time = 2 minutes; - number_per_ident = 200; - number_per_ip = 200; - number_per_ip_global = 500; + number_per_ident = 10; + number_per_ip = 2048; + number_per_ip_global = 4096; cidr_ipv4_bitlen = 24; cidr_ipv6_bitlen = 64; - number_per_cidr = 9000; - max_number = 10000; - sendq = 400 kbytes; + number_per_cidr = 65536; + max_number = 3000; + sendq = 1 megabyte; }; exempt { ip = "127.0.0.1"; }; + exempt { + ip = "10.243.0.0/16"; + }; + auth { user = "*@*"; class = "users"; - flags = exceed_limit; + flags = kline_exempt, exceed_limit, flood_exempt; }; channel { diff --git a/lass/5pkgs/default.nix b/lass/5pkgs/default.nix index e3e49e37e..869f808ce 100644 --- a/lass/5pkgs/default.nix +++ b/lass/5pkgs/default.nix @@ -14,4 +14,5 @@ rec { vimperator = callPackage ./firefoxPlugins/vimperator.nix {}; }; go = callPackage ./go/default.nix {}; + newsbot-js = callPackage ./newsbot-js/default.nix {}; } diff --git a/lass/5pkgs/go/default.nix b/lass/5pkgs/go/default.nix index 3b4468d18..9dd166adc 100644 --- a/lass/5pkgs/go/default.nix +++ b/lass/5pkgs/go/default.nix @@ -36,8 +36,6 @@ in nodePackages.buildNodePackage { buildInputs = [ nodejs - nodePackages.redis - np.formidable makeWrapper ]; diff --git a/lass/5pkgs/newsbot-js/default.nix b/lass/5pkgs/newsbot-js/default.nix new file mode 100644 index 000000000..7758b04db --- /dev/null +++ b/lass/5pkgs/newsbot-js/default.nix @@ -0,0 +1,60 @@ +{ stdenv, makeWrapper, lib, buildEnv, fetchgit, nodePackages, nodejs }: + +with lib; + +let + np = nodePackages.override { + generated = ./packages.nix; + self = np; + }; + + node_env = buildEnv { + name = "node_env"; + paths = [ + np.feedparser + np.form-data + np.irc + np.request + np.shell-quote + ]; + pathsToLink = [ "/lib" ]; + ignoreCollisions = true; + }; + +in nodePackages.buildNodePackage { + name = "newsbot-js"; + + src = fetchgit { + url = "http://cgit.echelon/newsbot-js/"; + rev = "cd32ef7b39819f53c7125b22c594202724cc8754"; + sha256 = "425e800f7638a5679ed8a049614a7533f3c8dd09659061885240dc93952ff0ae"; + }; + + phases = [ + "unpackPhase" + "installPhase" + ]; + + deps = (filter (v: nixType v == "derivation") (attrValues np)); + + buildInputs = [ + nodejs + makeWrapper + ]; + + installPhase = '' + mkdir -p $out/bin + + cp newsbot.js $out/ + cat > $out/newsbot << EOF + ${nodejs}/bin/node $out/newsbot.js + EOF + chmod +x $out/newsbot + + wrapProgram $out/newsbot \ + --prefix NODE_PATH : ${node_env}/lib/node_modules + + ln -s $out/newsbot /$out/bin/newsbot + ''; + +} diff --git a/lass/5pkgs/newsbot-js/packages.nix b/lass/5pkgs/newsbot-js/packages.nix new file mode 100644 index 000000000..982a9d55c --- /dev/null +++ b/lass/5pkgs/newsbot-js/packages.nix @@ -0,0 +1,1442 @@ +{ 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"; + 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"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + 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"; + 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"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + 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"; + 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"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."array-filter"."~0.0.0" = + self.by-version."array-filter"."0.0.1"; + by-version."array-filter"."0.0.1" = self.buildNodePackage { + name = "array-filter-0.0.1"; + version = "0.0.1"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz"; + name = "array-filter-0.0.1.tgz"; + sha1 = "7da8cf2e26628ed732803581fd21f67cacd2eeec"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."array-indexofobject"."~0.0.1" = + self.by-version."array-indexofobject"."0.0.1"; + by-version."array-indexofobject"."0.0.1" = self.buildNodePackage { + name = "array-indexofobject-0.0.1"; + version = "0.0.1"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/array-indexofobject/-/array-indexofobject-0.0.1.tgz"; + name = "array-indexofobject-0.0.1.tgz"; + sha1 = "aaa128e62c9b3c358094568c219ff64fe489d42a"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."array-map"."~0.0.0" = + self.by-version."array-map"."0.0.0"; + by-version."array-map"."0.0.0" = self.buildNodePackage { + name = "array-map-0.0.0"; + version = "0.0.0"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz"; + name = "array-map-0.0.0.tgz"; + sha1 = "88a2bab73d1cf7bcd5c1b118a003f66f665fa662"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."array-reduce"."~0.0.0" = + self.by-version."array-reduce"."0.0.0"; + by-version."array-reduce"."0.0.0" = self.buildNodePackage { + name = "array-reduce-0.0.0"; + version = "0.0.0"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz"; + name = "array-reduce-0.0.0.tgz"; + sha1 = "173899d3ffd1c7d9383e4479525dbe278cab5f2b"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + 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"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz"; + name = "asn1-0.1.11.tgz"; + sha1 = "559be18376d08a4ec4dbe80877d27818639b2df7"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + 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"; + 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"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + 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"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/async/-/async-1.4.2.tgz"; + name = "async-1.4.2.tgz"; + sha1 = "6c9edcb11ced4f0dd2f2d40db0d49a109c088aab"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + 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"; + 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"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + 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"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/bl/-/bl-1.0.0.tgz"; + name = "bl-1.0.0.tgz"; + sha1 = "ada9a8a89a6d7ac60862f7dec7db207873e0c3f5"; + }; + deps = { + "readable-stream-2.0.2" = self.by-version."readable-stream"."2.0.2"; + }; + optionalDependencies = { + }; + peerDependencies = []; + 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"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/bluebird/-/bluebird-2.10.2.tgz"; + name = "bluebird-2.10.2.tgz"; + sha1 = "024a5517295308857f14f91f1106fc3b555f446b"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."boom"."2.x.x" = + self.by-version."boom"."2.9.0"; + by-version."boom"."2.9.0" = self.buildNodePackage { + name = "boom-2.9.0"; + version = "2.9.0"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/boom/-/boom-2.9.0.tgz"; + name = "boom-2.9.0.tgz"; + sha1 = "a54b7fd2fee477d351bf9e371680cbea67f12715"; + }; + deps = { + "hoek-2.16.3" = self.by-version."hoek"."2.16.3"; + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."boom"."^2.8.x" = + self.by-version."boom"."2.9.0"; + by-spec."caseless"."~0.11.0" = + self.by-version."caseless"."0.11.0"; + by-version."caseless"."0.11.0" = self.buildNodePackage { + name = "caseless-0.11.0"; + version = "0.11.0"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz"; + name = "caseless-0.11.0.tgz"; + sha1 = "715b96ea9841593cc33067923f5ec60ebda4f7d7"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."chalk"."^1.0.0" = + self.by-version."chalk"."1.1.1"; + by-version."chalk"."1.1.1" = self.buildNodePackage { + name = "chalk-1.1.1"; + version = "1.1.1"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/chalk/-/chalk-1.1.1.tgz"; + name = "chalk-1.1.1.tgz"; + sha1 = "509afb67066e7499f7eb3535c77445772ae2d019"; + }; + deps = { + "ansi-styles-2.1.0" = self.by-version."ansi-styles"."2.1.0"; + "escape-string-regexp-1.0.3" = self.by-version."escape-string-regexp"."1.0.3"; + "has-ansi-2.0.0" = self.by-version."has-ansi"."2.0.0"; + "strip-ansi-3.0.0" = self.by-version."strip-ansi"."3.0.0"; + "supports-color-2.0.0" = self.by-version."supports-color"."2.0.0"; + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."combined-stream"."^1.0.5" = + self.by-version."combined-stream"."1.0.5"; + by-version."combined-stream"."1.0.5" = self.buildNodePackage { + name = "combined-stream-1.0.5"; + version = "1.0.5"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz"; + name = "combined-stream-1.0.5.tgz"; + sha1 = "938370a57b4a51dea2c77c15d5c5fdf895164009"; + }; + deps = { + "delayed-stream-1.0.0" = self.by-version."delayed-stream"."1.0.0"; + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."combined-stream"."~1.0.1" = + self.by-version."combined-stream"."1.0.5"; + by-spec."commander"."^2.8.1" = + self.by-version."commander"."2.8.1"; + by-version."commander"."2.8.1" = self.buildNodePackage { + name = "commander-2.8.1"; + version = "2.8.1"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/commander/-/commander-2.8.1.tgz"; + name = "commander-2.8.1.tgz"; + sha1 = "06be367febfda0c330aa1e2a072d3dc9762425d4"; + }; + deps = { + "graceful-readlink-1.0.1" = self.by-version."graceful-readlink"."1.0.1"; + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."core-util-is"."~1.0.0" = + self.by-version."core-util-is"."1.0.1"; + by-version."core-util-is"."1.0.1" = self.buildNodePackage { + name = "core-util-is-1.0.1"; + version = "1.0.1"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz"; + name = "core-util-is-1.0.1.tgz"; + sha1 = "6b07085aef9a3ccac6ee53bf9d3df0c1521a5538"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."cryptiles"."2.x.x" = + self.by-version."cryptiles"."2.0.5"; + by-version."cryptiles"."2.0.5" = self.buildNodePackage { + name = "cryptiles-2.0.5"; + version = "2.0.5"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz"; + name = "cryptiles-2.0.5.tgz"; + sha1 = "3bdfecdc608147c1c67202fa291e7dca59eaa3b8"; + }; + deps = { + "boom-2.9.0" = self.by-version."boom"."2.9.0"; + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."ctype"."0.5.3" = + self.by-version."ctype"."0.5.3"; + by-version."ctype"."0.5.3" = self.buildNodePackage { + name = "ctype-0.5.3"; + version = "0.5.3"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/ctype/-/ctype-0.5.3.tgz"; + name = "ctype-0.5.3.tgz"; + sha1 = "82c18c2461f74114ef16c135224ad0b9144ca12f"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."delayed-stream"."~1.0.0" = + self.by-version."delayed-stream"."1.0.0"; + by-version."delayed-stream"."1.0.0" = self.buildNodePackage { + name = "delayed-stream-1.0.0"; + version = "1.0.0"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz"; + name = "delayed-stream-1.0.0.tgz"; + sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."escape-string-regexp"."^1.0.2" = + self.by-version."escape-string-regexp"."1.0.3"; + by-version."escape-string-regexp"."1.0.3" = self.buildNodePackage { + name = "escape-string-regexp-1.0.3"; + version = "1.0.3"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz"; + name = "escape-string-regexp-1.0.3.tgz"; + sha1 = "9e2d8b25bc2555c3336723750e03f099c2735bb5"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."extend"."~3.0.0" = + self.by-version."extend"."3.0.0"; + by-version."extend"."3.0.0" = self.buildNodePackage { + name = "extend-3.0.0"; + version = "3.0.0"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/extend/-/extend-3.0.0.tgz"; + name = "extend-3.0.0.tgz"; + sha1 = "5a474353b9f3353ddd8176dfd37b91c83a46f1d4"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."feedparser"."*" = + self.by-version."feedparser"."1.1.3"; + by-version."feedparser"."1.1.3" = self.buildNodePackage { + name = "feedparser-1.1.3"; + version = "1.1.3"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/feedparser/-/feedparser-1.1.3.tgz"; + name = "feedparser-1.1.3.tgz"; + sha1 = "0b725f6b4cbe4b26d518baec0d010ad020156c8b"; + }; + deps = { + "sax-0.6.1" = self.by-version."sax"."0.6.1"; + "addressparser-0.1.3" = self.by-version."addressparser"."0.1.3"; + "array-indexofobject-0.0.1" = self.by-version."array-indexofobject"."0.0.1"; + "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33"; + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + "feedparser" = self.by-version."feedparser"."1.1.3"; + by-spec."forever-agent"."~0.6.0" = + self.by-version."forever-agent"."0.6.1"; + by-version."forever-agent"."0.6.1" = self.buildNodePackage { + name = "forever-agent-0.6.1"; + version = "0.6.1"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz"; + name = "forever-agent-0.6.1.tgz"; + sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."form-data"."*" = + self.by-version."form-data"."1.0.0-rc3"; + by-version."form-data"."1.0.0-rc3" = self.buildNodePackage { + name = "form-data-1.0.0-rc3"; + version = "1.0.0-rc3"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/form-data/-/form-data-1.0.0-rc3.tgz"; + name = "form-data-1.0.0-rc3.tgz"; + sha1 = "d35bc62e7fbc2937ae78f948aaa0d38d90607577"; + }; + deps = { + "async-1.4.2" = self.by-version."async"."1.4.2"; + "combined-stream-1.0.5" = self.by-version."combined-stream"."1.0.5"; + "mime-types-2.1.7" = self.by-version."mime-types"."2.1.7"; + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + "form-data" = self.by-version."form-data"."1.0.0-rc3"; + by-spec."form-data"."~1.0.0-rc1" = + self.by-version."form-data"."1.0.0-rc3"; + by-spec."generate-function"."^2.0.0" = + self.by-version."generate-function"."2.0.0"; + by-version."generate-function"."2.0.0" = self.buildNodePackage { + name = "generate-function-2.0.0"; + version = "2.0.0"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz"; + name = "generate-function-2.0.0.tgz"; + sha1 = "6858fe7c0969b7d4e9093337647ac79f60dfbe74"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."generate-object-property"."^1.1.0" = + self.by-version."generate-object-property"."1.2.0"; + by-version."generate-object-property"."1.2.0" = self.buildNodePackage { + name = "generate-object-property-1.2.0"; + version = "1.2.0"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz"; + name = "generate-object-property-1.2.0.tgz"; + sha1 = "9c0e1c40308ce804f4783618b937fa88f99d50d0"; + }; + deps = { + "is-property-1.0.2" = self.by-version."is-property"."1.0.2"; + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."graceful-readlink".">= 1.0.0" = + self.by-version."graceful-readlink"."1.0.1"; + by-version."graceful-readlink"."1.0.1" = self.buildNodePackage { + name = "graceful-readlink-1.0.1"; + version = "1.0.1"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz"; + name = "graceful-readlink-1.0.1.tgz"; + sha1 = "4cafad76bc62f02fa039b2f94e9a3dd3a391a725"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."har-validator"."^1.6.1" = + self.by-version."har-validator"."1.8.0"; + by-version."har-validator"."1.8.0" = self.buildNodePackage { + name = "har-validator-1.8.0"; + version = "1.8.0"; + bin = true; + src = fetchurl { + url = "http://registry.npmjs.org/har-validator/-/har-validator-1.8.0.tgz"; + name = "har-validator-1.8.0.tgz"; + sha1 = "d83842b0eb4c435960aeb108a067a3aa94c0eeb2"; + }; + deps = { + "bluebird-2.10.2" = self.by-version."bluebird"."2.10.2"; + "chalk-1.1.1" = self.by-version."chalk"."1.1.1"; + "commander-2.8.1" = self.by-version."commander"."2.8.1"; + "is-my-json-valid-2.12.2" = self.by-version."is-my-json-valid"."2.12.2"; + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."has-ansi"."^2.0.0" = + self.by-version."has-ansi"."2.0.0"; + by-version."has-ansi"."2.0.0" = self.buildNodePackage { + name = "has-ansi-2.0.0"; + version = "2.0.0"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz"; + name = "has-ansi-2.0.0.tgz"; + sha1 = "34f5049ce1ecdf2b0649af3ef24e45ed35416d91"; + }; + deps = { + "ansi-regex-2.0.0" = self.by-version."ansi-regex"."2.0.0"; + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."hashish"."~0.0.4" = + self.by-version."hashish"."0.0.4"; + by-version."hashish"."0.0.4" = self.buildNodePackage { + name = "hashish-0.0.4"; + version = "0.0.4"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/hashish/-/hashish-0.0.4.tgz"; + name = "hashish-0.0.4.tgz"; + sha1 = "6d60bc6ffaf711b6afd60e426d077988014e6554"; + }; + deps = { + "traverse-0.6.6" = self.by-version."traverse"."0.6.6"; + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."hawk"."~3.1.0" = + self.by-version."hawk"."3.1.0"; + by-version."hawk"."3.1.0" = self.buildNodePackage { + name = "hawk-3.1.0"; + version = "3.1.0"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/hawk/-/hawk-3.1.0.tgz"; + name = "hawk-3.1.0.tgz"; + sha1 = "8a13ae19977ec607602f3f0b9fd676f18c384e44"; + }; + deps = { + "hoek-2.16.3" = self.by-version."hoek"."2.16.3"; + "boom-2.9.0" = self.by-version."boom"."2.9.0"; + "cryptiles-2.0.5" = self.by-version."cryptiles"."2.0.5"; + "sntp-1.0.9" = self.by-version."sntp"."1.0.9"; + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."hoek"."2.x.x" = + self.by-version."hoek"."2.16.3"; + by-version."hoek"."2.16.3" = self.buildNodePackage { + name = "hoek-2.16.3"; + version = "2.16.3"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz"; + name = "hoek-2.16.3.tgz"; + sha1 = "20bb7403d3cea398e91dc4710a8ff1b8274a25ed"; + }; + deps = { + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."http-signature"."~0.11.0" = + self.by-version."http-signature"."0.11.0"; + by-version."http-signature"."0.11.0" = self.buildNodePackage { + name = "http-signature-0.11.0"; + version = "0.11.0"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/http-signature/-/http-signature-0.11.0.tgz"; + name = "http-signature-0.11.0.tgz"; + sha1 = "1796cf67a001ad5cd6849dca0991485f09089fe6"; + }; + deps = { + "assert-plus-0.1.5" = self.by-version."assert-plus"."0.1.5"; + "asn1-0.1.11" = self.by-version."asn1"."0.1.11"; + "ctype-0.5.3" = self.by-version."ctype"."0.5.3"; + }; + optionalDependencies = { + }; + peerDependencies = []; + os = [ ]; + cpu = [ ]; + }; + by-spec."iconv"."~2.1.6" = + self.by-version."iconv"."2.1.11"; + by-version."iconv"."2.1.11" = self.buildNodePackage { + name = "iconv-2.1.11"; + version = "2.1.11"; + bin = false; + src = fetchurl { + url = "http://registry.npmjs.org/ |