From 1eb3e2017502ddb94cc57e7edc2812893b686163 Mon Sep 17 00:00:00 2001
From: tv <tv@also>
Date: Sat, 15 Jan 2011 18:27:25 +0100
Subject: initial commit

---
 README.md | 13 +++++++++++++
 1 file changed, 13 insertions(+)
 create mode 100644 README.md

diff --git a/README.md b/README.md
new file mode 100644
index 00000000..0ef38df3
--- /dev/null
+++ b/README.md
@@ -0,0 +1,13 @@
+# Genericore irclog
+
+This package contains a Genericore output module to forward logs to IRC.
+
+*Please note that this is early development software
+ that lacks proper documentation, tests, and a lot of useful or even necessary features.*
+
+## System requirements
+
+- [node](http://nodejs.org/) v0.2.5 or compatible
+- [node-amqp](https://github.com/ry/node-amqp) v0.0.2 or compatible
+- [node-irc](https://github.com/martynsmith/node-irc) v0.1.2 or compatible
+
-- 
cgit v1.2.3


From 8e4a4e7a5c8b3adce4a6c33a305093aee8221201 Mon Sep 17 00:00:00 2001
From: tv <tv@also>
Date: Fri, 21 Jan 2011 23:48:24 +0100
Subject: WIP commit

---
 README.md      |   1 -
 src/lib/irc.js |  67 ++++++++++++++++++++++++
 src/main.js    | 162 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 229 insertions(+), 1 deletion(-)
 create mode 100644 src/lib/irc.js
 create mode 100644 src/main.js

diff --git a/README.md b/README.md
index 0ef38df3..f324d221 100644
--- a/README.md
+++ b/README.md
@@ -9,5 +9,4 @@ This package contains a Genericore output module to forward logs to IRC.
 
 - [node](http://nodejs.org/) v0.2.5 or compatible
 - [node-amqp](https://github.com/ry/node-amqp) v0.0.2 or compatible
-- [node-irc](https://github.com/martynsmith/node-irc) v0.1.2 or compatible
 
diff --git a/src/lib/irc.js b/src/lib/irc.js
new file mode 100644
index 00000000..5f904a74
--- /dev/null
+++ b/src/lib/irc.js
@@ -0,0 +1,67 @@
+
+var Client = function (config) {
+  var client = this;
+  var net = require('net');
+  var sys = require('sys');
+  var log = function (x) {
+    sys.puts('TCP server: ' + x);
+  };
+
+  client.connect = function (callback) {
+    var stream = net.createConnection(config.port, config.server);
+    stream.on('connect', function () {
+      stream.write(
+        'NICK ' + config.nick + '\n' +
+        'USER ' + config.nick + ' 0 *:Karl Koch\n' +
+        'JOIN ' + config.channel + '\n'
+      );
+      //client.write = function (text) {
+      //  stream.write('PRIVMSG ' + config.channel + ' :' + text);
+      //};
+      client.write = msg_start_send;
+      callback();
+    });
+    //stream.on('secure', function () {
+    //});
+
+    var msg = [];
+
+    var msg_start_send = function (x) {
+      client.write = msg_append;
+      setTimeout(function () {
+        var x = msg.join('\n') + '\n';
+        msg = [];
+        client.write = msg_start_send;
+        stream.write('PRIVMSG ' + config.channel + ' :' + x);
+      }, 1000);
+    };
+
+    var msg_append = function (x) {
+      msg[msg.length] = x;
+    };
+
+
+    stream.on('data', function (data) {
+      data = String(data);
+      log('' + data + '');
+      if (data.substring(0,4) === 'PING') {
+        log('PONG!');
+        stream.write('PONG ' + data.substring(4));
+      }
+    });
+    //stream.on('end', function () {
+    //});
+    //stream.on('timeout', function () {
+    //});
+    //stream.on('drain', function () {
+    //});
+    //stream.on('error', function (exception) {
+    //});
+    //stream.on('clonse', function (exception) {
+    //});
+  };
+};
+
+exports.createClient = function (config) {
+  return new Client(config);
+};
diff --git a/src/main.js b/src/main.js
new file mode 100644
index 00000000..b9e67a19
--- /dev/null
+++ b/src/main.js
@@ -0,0 +1,162 @@
+
+var connect = require('genericore').connect;
+
+var config = {
+  irc: {}
+};
+
+connect(config.irc, {
+  debug: function (message) {
+  },
+  ready: function (client) {
+
+  }
+});
+
+
+
+// {
+//     userName: 'nodebot',
+//     realName: 'nodeJS IRC client',
+//     port: 6667,
+//     debug: false,
+//     showErrors: false,
+//     autoRejoin: true,
+//     channels: [],
+//     secure: false
+// }
+
+var config = {
+  "irc": {
+    "nick": "a43243afds",
+    "server": "irc.freenode.net",
+    "port": 6667,
+    "channel": "#genericoredump"
+  },
+  "amqp": {
+    "reconnect_timeout": 10000,
+    "connection": {
+      "host": "141.31.8.11",
+      "port": 5672,
+      "login": "shack",
+      "password": "shackit",
+      "vhost": "/"
+    },
+    "exchange": {
+      "name": "log",
+      "options": {
+        "type": "fanout",
+        "passive": false,
+        "durable": false,
+        "auto_delete": false,
+        "internal": false,
+        "nowait": false
+      }
+    },
+    "queue": {
+      "name": "irclog2",
+      "options": {
+        "passive": false,
+        "durable": false,
+        "exclusive": false,
+        "autoDelete": false,
+        "nowait": false
+      }
+    }
+  }
+};
+
+//var irc = require('./lib/irc');
+var irc = require('./lib/irc').createClient(config.irc);
+var amqp = require('amqp');
+
+// TODO var amqp = require('./lib/amqp').createClient(config.amqp);
+//  where createClient will bind to all connected (exchange,queue) pairs
+// irc.connect({
+//   ready: function () {
+//     amqp.connect({
+//       message: function (message) {
+//         console.log(message);
+//         irc.privmsg(config.irc.channel, message.data);
+//       }
+//     });
+//   }
+// });
+
+// TODO call back when joined
+irc.connect(function () {
+  var connection = amqp.createConnection(config.amqp.connection);
+  connection.on('ready', function () {
+    var queue = connection.queue(config.amqp.queue.name, config.amqp.queue.options);
+
+    queue.bind(config.amqp.exchange.name, config.amqp.queue.name);
+
+    console.log('receiving messages');
+    queue.subscribe(function (message) {
+      console.log(message.data);
+      irc.write(message.data);
+    });
+  });
+});
+
+// amqp.connect(function () {
+//   amqp.connection.exchange("log", config.amqp.exchange.options).on(
+//     'open', function () {
+//       log = function (message) {
+//         exchange.publish(config.amqp.exchange.name, message);
+//       };
+//     }
+//   );
+// 
+//   tcp.serve(function (message) {
+//     var data = parse(message);
+//     log('[mailsrc,tcp] incoming: ' + data['Header-Fields']['Subject']);
+//     console.log('publishing: ' + data['Header-Fields'].From);
+//     amqp.publish({ type: 'mail', subtype: 0, data: data });
+//   });
+// });
+// 
+// 
+// var client = new irc.Client(config.server, config.nick, {
+//   channels: [config.channel],
+// });
+// 
+// client.on('error', function (err) {
+//   console.log('>>>\n' + require('sys').inspect(err));
+// });
+// 
+// 
+// var amqp = require('amqp');
+// client.join(config.channel, function () {
+// 
+//   var connection = amqp.createConnection(config.amqp.connection);
+// 
+//   // Wait for connection to become established.
+//   connection.on('ready', function () {
+//     // Create a queue and bind to all messages.
+//     // Use the default 'amq.topic' exchange
+//     var q = connection.queue(config.amqp.queue.name, config.amqp.queue);
+//     // Catch all messages
+//     q.bind(config.amqp.exchange.name, config.amqp.queue.name);
+// 
+//     // Receive messages
+//     console.log('receiving messages');
+//     q.subscribe(function (message) {
+//       // Print messages to stdout
+//       console.log(message);
+//       client.say(config.channel, message.data);
+//     });
+//   });
+// });
+ 
+
+
+
+
+// client.on('pm', function (from, message) {
+//   sys.puts(from + ' => ME: ' + message);
+// });
+// 
+// client.on('message#yourchannel', function (from, message) {
+//   sys.puts(from + ' => #yourchannel: ' + message);
+// });
-- 
cgit v1.2.3


From 5b8c10a61103fd6b68885c513f7a0ad23f8e7d70 Mon Sep 17 00:00:00 2001
From: tv <tv@also>
Date: Sun, 29 May 2011 13:59:54 +0200
Subject: prepare import into krebscode/painload

---
 README.md                  |  12 ----
 modules/roboctl/index.js   | 162 +++++++++++++++++++++++++++++++++++++++++++++
 modules/roboctl/lib/irc.js |  67 +++++++++++++++++++
 src/lib/irc.js             |  67 -------------------
 src/main.js                | 162 ---------------------------------------------
 5 files changed, 229 insertions(+), 241 deletions(-)
 delete mode 100644 README.md
 create mode 100644 modules/roboctl/index.js
 create mode 100644 modules/roboctl/lib/irc.js
 delete mode 100644 src/lib/irc.js
 delete mode 100644 src/main.js

diff --git a/README.md b/README.md
deleted file mode 100644
index f324d221..00000000
--- a/README.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# Genericore irclog
-
-This package contains a Genericore output module to forward logs to IRC.
-
-*Please note that this is early development software
- that lacks proper documentation, tests, and a lot of useful or even necessary features.*
-
-## System requirements
-
-- [node](http://nodejs.org/) v0.2.5 or compatible
-- [node-amqp](https://github.com/ry/node-amqp) v0.0.2 or compatible
-
diff --git a/modules/roboctl/index.js b/modules/roboctl/index.js
new file mode 100644
index 00000000..b9e67a19
--- /dev/null
+++ b/modules/roboctl/index.js
@@ -0,0 +1,162 @@
+
+var connect = require('genericore').connect;
+
+var config = {
+  irc: {}
+};
+
+connect(config.irc, {
+  debug: function (message) {
+  },
+  ready: function (client) {
+
+  }
+});
+
+
+
+// {
+//     userName: 'nodebot',
+//     realName: 'nodeJS IRC client',
+//     port: 6667,
+//     debug: false,
+//     showErrors: false,
+//     autoRejoin: true,
+//     channels: [],
+//     secure: false
+// }
+
+var config = {
+  "irc": {
+    "nick": "a43243afds",
+    "server": "irc.freenode.net",
+    "port": 6667,
+    "channel": "#genericoredump"
+  },
+  "amqp": {
+    "reconnect_timeout": 10000,
+    "connection": {
+      "host": "141.31.8.11",
+      "port": 5672,
+      "login": "shack",
+      "password": "shackit",
+      "vhost": "/"
+    },
+    "exchange": {
+      "name": "log",
+      "options": {
+        "type": "fanout",
+        "passive": false,
+        "durable": false,
+        "auto_delete": false,
+        "internal": false,
+        "nowait": false
+      }
+    },
+    "queue": {
+      "name": "irclog2",
+      "options": {
+        "passive": false,
+        "durable": false,
+        "exclusive": false,
+        "autoDelete": false,
+        "nowait": false
+      }
+    }
+  }
+};
+
+//var irc = require('./lib/irc');
+var irc = require('./lib/irc').createClient(config.irc);
+var amqp = require('amqp');
+
+// TODO var amqp = require('./lib/amqp').createClient(config.amqp);
+//  where createClient will bind to all connected (exchange,queue) pairs
+// irc.connect({
+//   ready: function () {
+//     amqp.connect({
+//       message: function (message) {
+//         console.log(message);
+//         irc.privmsg(config.irc.channel, message.data);
+//       }
+//     });
+//   }
+// });
+
+// TODO call back when joined
+irc.connect(function () {
+  var connection = amqp.createConnection(config.amqp.connection);
+  connection.on('ready', function () {
+    var queue = connection.queue(config.amqp.queue.name, config.amqp.queue.options);
+
+    queue.bind(config.amqp.exchange.name, config.amqp.queue.name);
+
+    console.log('receiving messages');
+    queue.subscribe(function (message) {
+      console.log(message.data);
+      irc.write(message.data);
+    });
+  });
+});
+
+// amqp.connect(function () {
+//   amqp.connection.exchange("log", config.amqp.exchange.options).on(
+//     'open', function () {
+//       log = function (message) {
+//         exchange.publish(config.amqp.exchange.name, message);
+//       };
+//     }
+//   );
+// 
+//   tcp.serve(function (message) {
+//     var data = parse(message);
+//     log('[mailsrc,tcp] incoming: ' + data['Header-Fields']['Subject']);
+//     console.log('publishing: ' + data['Header-Fields'].From);
+//     amqp.publish({ type: 'mail', subtype: 0, data: data });
+//   });
+// });
+// 
+// 
+// var client = new irc.Client(config.server, config.nick, {
+//   channels: [config.channel],
+// });
+// 
+// client.on('error', function (err) {
+//   console.log('>>>\n' + require('sys').inspect(err));
+// });
+// 
+// 
+// var amqp = require('amqp');
+// client.join(config.channel, function () {
+// 
+//   var connection = amqp.createConnection(config.amqp.connection);
+// 
+//   // Wait for connection to become established.
+//   connection.on('ready', function () {
+//     // Create a queue and bind to all messages.
+//     // Use the default 'amq.topic' exchange
+//     var q = connection.queue(config.amqp.queue.name, config.amqp.queue);
+//     // Catch all messages
+//     q.bind(config.amqp.exchange.name, config.amqp.queue.name);
+// 
+//     // Receive messages
+//     console.log('receiving messages');
+//     q.subscribe(function (message) {
+//       // Print messages to stdout
+//       console.log(message);
+//       client.say(config.channel, message.data);
+//     });
+//   });
+// });
+ 
+
+
+
+
+// client.on('pm', function (from, message) {
+//   sys.puts(from + ' => ME: ' + message);
+// });
+// 
+// client.on('message#yourchannel', function (from, message) {
+//   sys.puts(from + ' => #yourchannel: ' + message);
+// });
diff --git a/modules/roboctl/lib/irc.js b/modules/roboctl/lib/irc.js
new file mode 100644
index 00000000..5f904a74
--- /dev/null
+++ b/modules/roboctl/lib/irc.js
@@ -0,0 +1,67 @@
+
+var Client = function (config) {
+  var client = this;
+  var net = require('net');
+  var sys = require('sys');
+  var log = function (x) {
+    sys.puts('TCP server: ' + x);
+  };
+
+  client.connect = function (callback) {
+    var stream = net.createConnection(config.port, config.server);
+    stream.on('connect', function () {
+      stream.write(
+        'NICK ' + config.nick + '\n' +
+        'USER ' + config.nick + ' 0 *:Karl Koch\n' +
+        'JOIN ' + config.channel + '\n'
+      );
+      //client.write = function (text) {
+      //  stream.write('PRIVMSG ' + config.channel + ' :' + text);
+      //};
+      client.write = msg_start_send;
+      callback();
+    });
+    //stream.on('secure', function () {
+    //});
+
+    var msg = [];
+
+    var msg_start_send = function (x) {
+      client.write = msg_append;
+      setTimeout(function () {
+        var x = msg.join('\n') + '\n';
+        msg = [];
+        client.write = msg_start_send;
+        stream.write('PRIVMSG ' + config.channel + ' :' + x);
+      }, 1000);
+    };
+
+    var msg_append = function (x) {
+      msg[msg.length] = x;
+    };
+
+
+    stream.on('data', function (data) {
+      data = String(data);
+      log('' + data + '');
+      if (data.substring(0,4) === 'PING') {
+        log('PONG!');
+        stream.write('PONG ' + data.substring(4));
+      }
+    });
+    //stream.on('end', function () {
+    //});
+    //stream.on('timeout', function () {
+    //});
+    //stream.on('drain', function () {
+    //});
+    //stream.on('error', function (exception) {
+    //});
+    //stream.on('clonse', function (exception) {
+    //});
+  };
+};
+
+exports.createClient = function (config) {
+  return new Client(config);
+};
diff --git a/src/lib/irc.js b/src/lib/irc.js
deleted file mode 100644
index 5f904a74..00000000
--- a/src/lib/irc.js
+++ /dev/null
@@ -1,67 +0,0 @@
-
-var Client = function (config) {
-  var client = this;
-  var net = require('net');
-  var sys = require('sys');
-  var log = function (x) {
-    sys.puts('TCP server: ' + x);
-  };
-
-  client.connect = function (callback) {
-    var stream = net.createConnection(config.port, config.server);
-    stream.on('connect', function () {
-      stream.write(
-        'NICK ' + config.nick + '\n' +
-        'USER ' + config.nick + ' 0 *:Karl Koch\n' +
-        'JOIN ' + config.channel + '\n'
-      );
-      //client.write = function (text) {
-      //  stream.write('PRIVMSG ' + config.channel + ' :' + text);
-      //};
-      client.write = msg_start_send;
-      callback();
-    });
-    //stream.on('secure', function () {
-    //});
-
-    var msg = [];
-
-    var msg_start_send = function (x) {
-      client.write = msg_append;
-      setTimeout(function () {
-        var x = msg.join('\n') + '\n';
-        msg = [];
-        client.write = msg_start_send;
-        stream.write('PRIVMSG ' + config.channel + ' :' + x);
-      }, 1000);
-    };
-
-    var msg_append = function (x) {
-      msg[msg.length] = x;
-    };
-
-
-    stream.on('data', function (data) {
-      data = String(data);
-      log('' + data + '');
-      if (data.substring(0,4) === 'PING') {
-        log('PONG!');
-        stream.write('PONG ' + data.substring(4));
-      }
-    });
-    //stream.on('end', function () {
-    //});
-    //stream.on('timeout', function () {
-    //});
-    //stream.on('drain', function () {
-    //});
-    //stream.on('error', function (exception) {
-    //});
-    //stream.on('clonse', function (exception) {
-    //});
-  };
-};
-
-exports.createClient = function (config) {
-  return new Client(config);
-};
diff --git a/src/main.js b/src/main.js
deleted file mode 100644
index b9e67a19..00000000
--- a/src/main.js
+++ /dev/null
@@ -1,162 +0,0 @@
-
-var connect = require('genericore').connect;
-
-var config = {
-  irc: {}
-};
-
-connect(config.irc, {
-  debug: function (message) {
-  },
-  ready: function (client) {
-
-  }
-});
-
-
-
-// {
-//     userName: 'nodebot',
-//     realName: 'nodeJS IRC client',
-//     port: 6667,
-//     debug: false,
-//     showErrors: false,
-//     autoRejoin: true,
-//     channels: [],
-//     secure: false
-// }
-
-var config = {
-  "irc": {
-    "nick": "a43243afds",
-    "server": "irc.freenode.net",
-    "port": 6667,
-    "channel": "#genericoredump"
-  },
-  "amqp": {
-    "reconnect_timeout": 10000,
-    "connection": {
-      "host": "141.31.8.11",
-      "port": 5672,
-      "login": "shack",
-      "password": "shackit",
-      "vhost": "/"
-    },
-    "exchange": {
-      "name": "log",
-      "options": {
-        "type": "fanout",
-        "passive": false,
-        "durable": false,
-        "auto_delete": false,
-        "internal": false,
-        "nowait": false
-      }
-    },
-    "queue": {
-      "name": "irclog2",
-      "options": {
-        "passive": false,
-        "durable": false,
-        "exclusive": false,
-        "autoDelete": false,
-        "nowait": false
-      }
-    }
-  }
-};
-
-//var irc = require('./lib/irc');
-var irc = require('./lib/irc').createClient(config.irc);
-var amqp = require('amqp');
-
-// TODO var amqp = require('./lib/amqp').createClient(config.amqp);
-//  where createClient will bind to all connected (exchange,queue) pairs
-// irc.connect({
-//   ready: function () {
-//     amqp.connect({
-//       message: function (message) {
-//         console.log(message);
-//         irc.privmsg(config.irc.channel, message.data);
-//       }
-//     });
-//   }
-// });
-
-// TODO call back when joined
-irc.connect(function () {
-  var connection = amqp.createConnection(config.amqp.connection);
-  connection.on('ready', function () {
-    var queue = connection.queue(config.amqp.queue.name, config.amqp.queue.options);
-
-    queue.bind(config.amqp.exchange.name, config.amqp.queue.name);
-
-    console.log('receiving messages');
-    queue.subscribe(function (message) {
-      console.log(message.data);
-      irc.write(message.data);
-    });
-  });
-});
-
-// amqp.connect(function () {
-//   amqp.connection.exchange("log", config.amqp.exchange.options).on(
-//     'open', function () {
-//       log = function (message) {
-//         exchange.publish(config.amqp.exchange.name, message);
-//       };
-//     }
-//   );
-// 
-//   tcp.serve(function (message) {
-//     var data = parse(message);
-//     log('[mailsrc,tcp] incoming: ' + data['Header-Fields']['Subject']);
-//     console.log('publishing: ' + data['Header-Fields'].From);
-//     amqp.publish({ type: 'mail', subtype: 0, data: data });
-//   });
-// });
-// 
-// 
-// var client = new irc.Client(config.server, config.nick, {
-//   channels: [config.channel],
-// });
-// 
-// client.on('error', function (err) {
-//   console.log('>>>\n' + require('sys').inspect(err));
-// });
-// 
-// 
-// var amqp = require('amqp');
-// client.join(config.channel, function () {
-// 
-//   var connection = amqp.createConnection(config.amqp.connection);
-// 
-//   // Wait for connection to become established.
-//   connection.on('ready', function () {
-//     // Create a queue and bind to all messages.
-//     // Use the default 'amq.topic' exchange
-//     var q = connection.queue(config.amqp.queue.name, config.amqp.queue);
-//     // Catch all messages
-//     q.bind(config.amqp.exchange.name, config.amqp.queue.name);
-// 
-//     // Receive messages
-//     console.log('receiving messages');
-//     q.subscribe(function (message) {
-//       // Print messages to stdout
-//       console.log(message);
-//       client.say(config.channel, message.data);
-//     });
-//   });
-// });
- 
-
-
-
-
-// client.on('pm', function (from, message) {
-//   sys.puts(from + ' => ME: ' + message);
-// });
-// 
-// client.on('message#yourchannel', function (from, message) {
-//   sys.puts(from + ' => #yourchannel: ' + message);
-// });
-- 
cgit v1.2.3


From 090bbee109c46704e2c6e666ab27dd47c235d709 Mon Sep 17 00:00:00 2001
From: tv <tv@also>
Date: Sun, 29 May 2011 14:07:38 +0200
Subject: roboctl: reduced index.js

---
 modules/roboctl/index.js | 162 ++---------------------------------------------
 1 file changed, 7 insertions(+), 155 deletions(-)

diff --git a/modules/roboctl/index.js b/modules/roboctl/index.js
index b9e67a19..bef53109 100644
--- a/modules/roboctl/index.js
+++ b/modules/roboctl/index.js
@@ -1,162 +1,14 @@
-
-var connect = require('genericore').connect;
-
 var config = {
-  irc: {}
+  "nick": "roboctl",
+  "server": "irc.freenode.net",
+  "port": 6667,
+  "channel": "#tincspasm"
 };
 
-connect(config.irc, {
-  debug: function (message) {
-  },
-  ready: function (client) {
-
-  }
-});
-
-
-
-// {
-//     userName: 'nodebot',
-//     realName: 'nodeJS IRC client',
-//     port: 6667,
-//     debug: false,
-//     showErrors: false,
-//     autoRejoin: true,
-//     channels: [],
-//     secure: false
-// }
-
-var config = {
-  "irc": {
-    "nick": "a43243afds",
-    "server": "irc.freenode.net",
-    "port": 6667,
-    "channel": "#genericoredump"
-  },
-  "amqp": {
-    "reconnect_timeout": 10000,
-    "connection": {
-      "host": "141.31.8.11",
-      "port": 5672,
-      "login": "shack",
-      "password": "shackit",
-      "vhost": "/"
-    },
-    "exchange": {
-      "name": "log",
-      "options": {
-        "type": "fanout",
-        "passive": false,
-        "durable": false,
-        "auto_delete": false,
-        "internal": false,
-        "nowait": false
-      }
-    },
-    "queue": {
-      "name": "irclog2",
-      "options": {
-        "passive": false,
-        "durable": false,
-        "exclusive": false,
-        "autoDelete": false,
-        "nowait": false
-      }
-    }
-  }
-};
-
-//var irc = require('./lib/irc');
-var irc = require('./lib/irc').createClient(config.irc);
-var amqp = require('amqp');
-
-// TODO var amqp = require('./lib/amqp').createClient(config.amqp);
-//  where createClient will bind to all connected (exchange,queue) pairs
-// irc.connect({
-//   ready: function () {
-//     amqp.connect({
-//       message: function (message) {
-//         console.log(message);
-//         irc.privmsg(config.irc.channel, message.data);
-//       }
-//     });
-//   }
-// });
+irc = require('./lib/irc').createClient(config);
 
 // TODO call back when joined
 irc.connect(function () {
-  var connection = amqp.createConnection(config.amqp.connection);
-  connection.on('ready', function () {
-    var queue = connection.queue(config.amqp.queue.name, config.amqp.queue.options);
-
-    queue.bind(config.amqp.exchange.name, config.amqp.queue.name);
-
-    console.log('receiving messages');
-    queue.subscribe(function (message) {
-      console.log(message.data);
-      irc.write(message.data);
-    });
-  });
+  console.log('like a boss');
+  //irc.write();
 });
-
-// amqp.connect(function () {
-//   amqp.connection.exchange("log", config.amqp.exchange.options).on(
-//     'open', function () {
-//       log = function (message) {
-//         exchange.publish(config.amqp.exchange.name, message);
-//       };
-//     }
-//   );
-// 
-//   tcp.serve(function (message) {
-//     var data = parse(message);
-//     log('[mailsrc,tcp] incoming: ' + data['Header-Fields']['Subject']);
-//     console.log('publishing: ' + data['Header-Fields'].From);
-//     amqp.publish({ type: 'mail', subtype: 0, data: data });
-//   });
-// });
-// 
-// 
-// var client = new irc.Client(config.server, config.nick, {
-//   channels: [config.channel],
-// });
-// 
-// client.on('error', function (err) {
-//   console.log('>>>\n' + require('sys').inspect(err));
-// });
-// 
-// 
-// var amqp = require('amqp');
-// client.join(config.channel, function () {
-// 
-//   var connection = amqp.createConnection(config.amqp.connection);
-// 
-//   // Wait for connection to become established.
-//   connection.on('ready', function () {
-//     // Create a queue and bind to all messages.
-//     // Use the default 'amq.topic' exchange
-//     var q = connection.queue(config.amqp.queue.name, config.amqp.queue);
-//     // Catch all messages
-//     q.bind(config.amqp.exchange.name, config.amqp.queue.name);
-// 
-//     // Receive messages
-//     console.log('receiving messages');
-//     q.subscribe(function (message) {
-//       // Print messages to stdout
-//       console.log(message);
-//       client.say(config.channel, message.data);
-//     });
-//   });
-// });
- 
-
-
-
-
-// client.on('pm', function (from, message) {
-//   sys.puts(from + ' => ME: ' + message);
-// });
-// 
-// client.on('message#yourchannel', function (from, message) {
-//   sys.puts(from + ' => #yourchannel: ' + message);
-// });
-- 
cgit v1.2.3


From 9ea4cbe1e006f703d1367f5aa3229849775b7128 Mon Sep 17 00:00:00 2001
From: tv <tv@also>
Date: Sun, 29 May 2011 14:27:19 +0200
Subject: roboctl: parse nick from tinc.conf

---
 modules/roboctl/index.js | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/modules/roboctl/index.js b/modules/roboctl/index.js
index bef53109..ac92c969 100644
--- a/modules/roboctl/index.js
+++ b/modules/roboctl/index.js
@@ -1,5 +1,9 @@
+
+nick = /(^|\n) *Name *= *(\S*) *($|\n)/
+    .exec(require('fs').readFileSync('/etc/tinc/retiolum/tinc.conf'))[2];
+
 var config = {
-  "nick": "roboctl",
+  "nick": nick + '-krebs',
   "server": "irc.freenode.net",
   "port": 6667,
   "channel": "#tincspasm"
@@ -9,6 +13,6 @@ irc = require('./lib/irc').createClient(config);
 
 // TODO call back when joined
 irc.connect(function () {
-  console.log('like a boss');
+  console.log('like a boss: ' + nick);
   //irc.write();
 });
-- 
cgit v1.2.3


From edaa1d7f7a0ed33c019fce185b8aff7563498b6e Mon Sep 17 00:00:00 2001
From: tv <tv@also>
Date: Sun, 29 May 2011 15:41:15 +0200
Subject: modules/node: node installer

---
 modules/node/Makefile | 8 ++++++++
 1 file changed, 8 insertions(+)
 create mode 100644 modules/node/Makefile

diff --git a/modules/node/Makefile b/modules/node/Makefile
new file mode 100644
index 00000000..00e27b6f
--- /dev/null
+++ b/modules/node/Makefile
@@ -0,0 +1,8 @@
+
+
+.PHONY: all
+all: node-v0.4.8
+	cd $< && ./configure && make && make install
+
+node-%:
+	cur http://nodejs.org/dist/$@.tar.gz | tar zx
-- 
cgit v1.2.3


From e0ec5d2e8560ae433ee677622b24ba82dbe7630b Mon Sep 17 00:00:00 2001
From: tv <tv@also>
Date: Sun, 29 May 2011 15:47:21 +0200
Subject: lowered filesystem hierarchy--everything are modules

---
 Makefile                                           |  10 +-
 Monitoring/Makefile                                |   8 +
 Monitoring/TODO                                    |   5 +
 Monitoring/conf/hostgroups_nagios2.cfg             |  31 ++
 Monitoring/conf/krebs_hosts.cfg                    |  78 +++++
 Monitoring/conf/krebsnet.cfg                       |  20 ++
 Monitoring/conf/localhost.cfg                      |  60 ++++
 Monitoring/conf/other_hosts.cfg                    |  23 ++
 Monitoring/conf/shack_infrastructure.cfg           | 231 ++++++++++++++
 Monitoring/conf/shacknet.cfg                       |  34 ++
 Monitoring/conf/tinc_hosts.cfg                     |  45 +++
 Monitoring/conf/tincnet.cfg                        |  31 ++
 Monitoring/htdocs/images/logos/krebs/favicon.ico   | Bin 0 -> 822 bytes
 Monitoring/htdocs/images/logos/krebs/krebs.gd2     | Bin 0 -> 1047 bytes
 Monitoring/htdocs/images/logos/krebs/krebs.png     | Bin 0 -> 323 bytes
 Monitoring/htdocs/images/logos/krebs/shack.gd2     | Bin 0 -> 1047 bytes
 Monitoring/htdocs/images/logos/krebs/shack.png     | Bin 0 -> 316 bytes
 Monitoring/htdocs/images/logos/krebs/tinc.gd2      | Bin 0 -> 1305 bytes
 Monitoring/htdocs/images/logos/krebs/tinc.png      | Bin 0 -> 361 bytes
 .../images/logos/krebs/wireless_access_point.gd2   | Bin 0 -> 1047 bytes
 .../images/logos/krebs/wireless_access_point.png   | Bin 0 -> 883 bytes
 .../logos/krebs/wireless_access_point_64.png       | Bin 0 -> 5364 bytes
 Monitoring/plugins/check_sip                       | 252 +++++++++++++++
 bigeye/bigeyed                                     |  70 +++++
 census/Makefile                                    |   6 +
 census/README.md                                   |  13 +
 census/TODO.md                                     |   3 +
 census/VERSION                                     |   1 +
 census/arping.py                                   |  37 +++
 census/arping_users.py                             |  54 ++++
 census/mac_names.lst                               |   1 +
 infest/Makefile                                    |  18 ++
 infest/bin/make-patch                              |  57 ++++
 infest/bootstrap.sh                                |  23 ++
 infest/core/angstrom                               |   4 +
 infest/core/debian                                 |   6 +
 infest/host-patch/beagleboard/Makefile             |   9 +
 infest/host-patch/beagleboard/profile.patch        |  42 +++
 infest/skel/etc/motd.tail                          |  10 +
 infest/skel/etc/profile                            |  58 ++++
 infest/skel/etc/rc.local                           |  10 +
 infest/skel/home/.ssh/authorized_keys              |   6 +
 infest/skel/home/.vimrc                            |  31 ++
 modules/Monitoring/Makefile                        |   8 -
 modules/Monitoring/TODO                            |   5 -
 modules/Monitoring/conf/hostgroups_nagios2.cfg     |  31 --
 modules/Monitoring/conf/krebs_hosts.cfg            |  78 -----
 modules/Monitoring/conf/krebsnet.cfg               |  20 --
 modules/Monitoring/conf/localhost.cfg              |  60 ----
 modules/Monitoring/conf/other_hosts.cfg            |  23 --
 modules/Monitoring/conf/shack_infrastructure.cfg   | 231 --------------
 modules/Monitoring/conf/shacknet.cfg               |  34 --
 modules/Monitoring/conf/tinc_hosts.cfg             |  45 ---
 modules/Monitoring/conf/tincnet.cfg                |  31 --
 .../htdocs/images/logos/krebs/favicon.ico          | Bin 822 -> 0 bytes
 .../Monitoring/htdocs/images/logos/krebs/krebs.gd2 | Bin 1047 -> 0 bytes
 .../Monitoring/htdocs/images/logos/krebs/krebs.png | Bin 323 -> 0 bytes
 .../Monitoring/htdocs/images/logos/krebs/shack.gd2 | Bin 1047 -> 0 bytes
 .../Monitoring/htdocs/images/logos/krebs/shack.png | Bin 316 -> 0 bytes
 .../Monitoring/htdocs/images/logos/krebs/tinc.gd2  | Bin 1305 -> 0 bytes
 .../Monitoring/htdocs/images/logos/krebs/tinc.png  | Bin 361 -> 0 bytes
 .../images/logos/krebs/wireless_access_point.gd2   | Bin 1047 -> 0 bytes
 .../images/logos/krebs/wireless_access_point.png   | Bin 883 -> 0 bytes
 .../logos/krebs/wireless_access_point_64.png       | Bin 5364 -> 0 bytes
 modules/Monitoring/plugins/check_sip               | 252 ---------------
 modules/bigeye/bigeyed                             |  70 -----
 modules/infest/Makefile                            |  18 --
 modules/infest/bin/make-patch                      |  57 ----
 modules/infest/bootstrap.sh                        |  23 --
 modules/infest/core/angstrom                       |   4 -
 modules/infest/core/debian                         |   6 -
 modules/infest/host-patch/beagleboard/Makefile     |   9 -
 .../infest/host-patch/beagleboard/profile.patch    |  42 ---
 modules/infest/skel/etc/motd.tail                  |  10 -
 modules/infest/skel/etc/profile                    |  58 ----
 modules/infest/skel/etc/rc.local                   |  10 -
 modules/infest/skel/home/.ssh/authorized_keys      |   6 -
 modules/infest/skel/home/.vimrc                    |  31 --
 modules/morse/COPYING                              |  14 -
 modules/morse/README                               |  32 --
 modules/morse/morse.sh                             | 160 ----------
 modules/node/Makefile                              |   8 -
 modules/noise/Makefile                             |  16 -
 modules/noise/TODO                                 |  60 ----
 modules/noise/cron/bin/zeit                        |  18 --
 modules/noise/init.d/noise                         |  48 ---
 modules/noise/modules/cat                          |  14 -
 modules/noise/modules/chat                         |  33 --
 modules/noise/modules/date                         |   6 -
 modules/noise/modules/echo                         |   6 -
 modules/noise/modules/ein_mal_eins                 |  37 ---
 modules/noise/modules/espeak                       |  34 --
 modules/noise/modules/help                         |  24 --
 modules/noise/modules/join                         |  15 -
 modules/noise/modules/lang                         |  22 --
 modules/noise/modules/mpc                          |  14 -
 modules/noise/modules/names                        |  22 --
 modules/noise/modules/nick                         |  10 -
 modules/noise/modules/part                         |  15 -
 modules/noise/modules/ping                         |  24 --
 modules/noise/modules/play                         |  36 ---
 modules/noise/modules/pong                         |  26 --
 modules/noise/modules/query                        |  23 --
 modules/noise/modules/send_to_channel              |  17 -
 modules/noise/modules/sendmail                     |  55 ----
 modules/noise/modules/shackstatus                  | 104 ------
 modules/noise/modules/sleep                        |  10 -
 modules/noise/modules/stream                       |  64 ----
 modules/noise/modules/temp                         |  56 ----
 modules/noise/modules/test                         |  13 -
 modules/noise/modules/twitter                      | 125 --------
 modules/noise/modules/vvs                          |  17 -
 modules/noise/modules/wall                         |   8 -
 modules/noise/modules/zeit                         |  19 --
 modules/noise/noise                                | 182 -----------
 modules/noise/noise-as-user                        |   4 -
 modules/noise/noise-server                         |   4 -
 modules/people/Makefile                            |   6 -
 modules/people/README.md                           |  13 -
 modules/people/TODO.md                             |   3 -
 modules/people/VERSION                             |   1 -
 modules/people/arping.py                           |  37 ---
 modules/people/arping_users.py                     |  54 ----
 modules/people/mac_names.lst                       |   1 -
 modules/retiolum/Makefile                          |  15 -
 modules/retiolum/README                            |  29 --
 modules/retiolum/bin/fillxx                        |   6 -
 modules/retiolum/bin/hosts                         |  11 -
 modules/retiolum/bin/ipv6                          |  35 ---
 modules/retiolum/bin/tinc                          |  18 --
 modules/retiolum/bin/update_tinc_hosts             |  33 --
 modules/retiolum/doc/install_dotcloud              |  85 -----
 modules/retiolum/doc/install_no.de                 |   4 -
 modules/retiolum/scripts/README                    |  16 -
 modules/retiolum/scripts/adv_graphgen/README       |  28 --
 modules/retiolum/scripts/adv_graphgen/parse.py     | 101 ------
 modules/retiolum/scripts/adv_graphgen/sanitize.sh  |  13 -
 modules/retiolum/scripts/autostart/Makefile        |  14 -
 modules/retiolum/scripts/autostart/tinc            |  94 ------
 modules/retiolum/scripts/tinc_multicast/retiolum   |  34 --
 .../retiolum/scripts/tinc_multicast/retiolum.py    | 349 ---------------------
 modules/retiolum/scripts/tinc_setup/README         |  18 --
 .../retiolum/scripts/tinc_setup/autoupdate_cron.sh |   7 -
 modules/retiolum/scripts/tinc_setup/bootstrap.sh   |  11 -
 modules/retiolum/scripts/tinc_setup/build_arch.sh  |  14 -
 .../retiolum/scripts/tinc_setup/build_debian.sh    |  32 --
 .../scripts/tinc_setup/build_debian_clean.sh       |  31 --
 modules/retiolum/scripts/tinc_setup/build_ec2.sh   |  16 -
 modules/retiolum/scripts/tinc_setup/build_no.de.sh |   1 -
 modules/retiolum/scripts/tinc_setup/install.sh     |  72 -----
 modules/retiolum/scripts/tinc_setup/tinc-up        |  20 --
 .../retiolum/scripts/tinc_setup/write_channel.py   |  26 --
 modules/roboctl/index.js                           |  18 --
 modules/roboctl/lib/irc.js                         |  67 ----
 modules/streams/Makefile                           |  10 -
 modules/streams/README                             |  10 -
 modules/streams/deepmix                            |  27 --
 modules/streams/groove                             |  29 --
 modules/streams/radiotux                           |  29 --
 modules/temper/.gitignore                          |   1 -
 modules/temper/99-tempsensor.rules                 |   1 -
 modules/temper/Makefile                            |  14 -
 modules/temper/temper.c                            | 277 ----------------
 modules/temper/temper.h                            |  39 ---
 modules/webcams/cam1.sh                            |   2 -
 modules/zoneminder/Makefile                        |  14 -
 modules/zoneminder/zmdc.pl-LD_PRELOAD.patch        |  10 -
 modules/zoneminder/zoneminder.conf                 |   2 -
 morse/COPYING                                      |  14 +
 morse/README                                       |  32 ++
 morse/morse.sh                                     | 160 ++++++++++
 node/Makefile                                      |   8 +
 noise/Makefile                                     |  16 +
 noise/TODO                                         |  60 ++++
 noise/cron/bin/zeit                                |  18 ++
 noise/init.d/noise                                 |  48 +++
 noise/modules/cat                                  |  14 +
 noise/modules/chat                                 |  33 ++
 noise/modules/date                                 |   6 +
 noise/modules/echo                                 |   6 +
 noise/modules/ein_mal_eins                         |  37 +++
 noise/modules/espeak                               |  34 ++
 noise/modules/help                                 |  24 ++
 noise/modules/join                                 |  15 +
 noise/modules/lang                                 |  22 ++
 noise/modules/mpc                                  |  14 +
 noise/modules/names                                |  22 ++
 noise/modules/nick                                 |  10 +
 noise/modules/part                                 |  15 +
 noise/modules/ping                                 |  24 ++
 noise/modules/play                                 |  36 +++
 noise/modules/pong                                 |  26 ++
 noise/modules/query                                |  23 ++
 noise/modules/send_to_channel                      |  17 +
 noise/modules/sendmail                             |  55 ++++
 noise/modules/shackstatus                          | 104 ++++++
 noise/modules/sleep                                |  10 +
 noise/modules/stream                               |  64 ++++
 noise/modules/temp                                 |  56 ++++
 noise/modules/test                                 |  13 +
 noise/modules/twitter                              | 125 ++++++++
 noise/modules/vvs                                  |  17 +
 noise/modules/wall                                 |   8 +
 noise/modules/zeit                                 |  19 ++
 noise/noise                                        | 182 +++++++++++
 noise/noise-as-user                                |   4 +
 noise/noise-server                                 |   4 +
 retiolum/Makefile                                  |  15 +
 retiolum/README                                    |  29 ++
 retiolum/bin/fillxx                                |   6 +
 retiolum/bin/hosts                                 |  11 +
 retiolum/bin/ipv6                                  |  35 +++
 retiolum/bin/tinc                                  |  18 ++
 retiolum/bin/update_tinc_hosts                     |  33 ++
 retiolum/doc/install_dotcloud                      |  85 +++++
 retiolum/doc/install_no.de                         |   4 +
 retiolum/scripts/README                            |  16 +
 retiolum/scripts/adv_graphgen/README               |  28 ++
 retiolum/scripts/adv_graphgen/parse.py             | 101 ++++++
 retiolum/scripts/adv_graphgen/sanitize.sh          |  13 +
 retiolum/scripts/autostart/Makefile                |  14 +
 retiolum/scripts/autostart/tinc                    |  94 ++++++
 retiolum/scripts/tinc_multicast/retiolum           |  34 ++
 retiolum/scripts/tinc_multicast/retiolum.py        | 349 +++++++++++++++++++++
 retiolum/scripts/tinc_setup/README                 |  18 ++
 retiolum/scripts/tinc_setup/autoupdate_cron.sh     |   7 +
 retiolum/scripts/tinc_setup/bootstrap.sh           |  11 +
 retiolum/scripts/tinc_setup/build_arch.sh          |  14 +
 retiolum/scripts/tinc_setup/build_debian.sh        |  32 ++
 retiolum/scripts/tinc_setup/build_debian_clean.sh  |  31 ++
 retiolum/scripts/tinc_setup/build_ec2.sh           |  16 +
 retiolum/scripts/tinc_setup/build_no.de.sh         |   1 +
 retiolum/scripts/tinc_setup/install.sh             |  72 +++++
 retiolum/scripts/tinc_setup/tinc-up                |  20 ++
 retiolum/scripts/tinc_setup/write_channel.py       |  26 ++
 roboctl/index.js                                   |  18 ++
 roboctl/lib/irc.js                                 |  67 ++++
 streams/Makefile                                   |  10 +
 streams/README                                     |  10 +
 streams/deepmix                                    |  27 ++
 streams/groove                                     |  29 ++
 streams/radiotux                                   |  29 ++
 temper/.gitignore                                  |   1 +
 temper/99-tempsensor.rules                         |   1 +
 temper/Makefile                                    |  14 +
 temper/temper.c                                    | 277 ++++++++++++++++
 temper/temper.h                                    |  39 +++
 webcams/cam1.sh                                    |   2 +
 zoneminder/Makefile                                |  14 +
 zoneminder/zmdc.pl-LD_PRELOAD.patch                |  10 +
 zoneminder/zoneminder.conf                         |   2 +
 251 files changed, 4360 insertions(+), 4360 deletions(-)
 create mode 100644 Monitoring/Makefile
 create mode 100644 Monitoring/TODO
 create mode 100644 Monitoring/conf/hostgroups_nagios2.cfg
 create mode 100644 Monitoring/conf/krebs_hosts.cfg
 create mode 100644 Monitoring/conf/krebsnet.cfg
 create mode 100644 Monitoring/conf/localhost.cfg
 create mode 100644 Monitoring/conf/other_hosts.cfg
 create mode 100644 Monitoring/conf/shack_infrastructure.cfg
 create mode 100644 Monitoring/conf/shacknet.cfg
 create mode 100644 Monitoring/conf/tinc_hosts.cfg
 create mode 100644 Monitoring/conf/tincnet.cfg
 create mode 100644 Monitoring/htdocs/images/logos/krebs/favicon.ico
 create mode 100644 Monitoring/htdocs/images/logos/krebs/krebs.gd2
 create mode 100644 Monitoring/htdocs/images/logos/krebs/krebs.png
 create mode 100644 Monitoring/htdocs/images/logos/krebs/shack.gd2
 create mode 100644 Monitoring/htdocs/images/logos/krebs/shack.png
 create mode 100644 Monitoring/htdocs/images/logos/krebs/tinc.gd2
 create mode 100644 Monitoring/htdocs/images/logos/krebs/tinc.png
 create mode 100644 Monitoring/htdocs/images/logos/krebs/wireless_access_point.gd2
 create mode 100644 Monitoring/htdocs/images/logos/krebs/wireless_access_point.png
 create mode 100644 Monitoring/htdocs/images/logos/krebs/wireless_access_point_64.png
 create mode 100755 Monitoring/plugins/check_sip
 create mode 100755 bigeye/bigeyed
 create mode 100644 census/Makefile
 create mode 100644 census/README.md
 create mode 100644 census/TODO.md
 create mode 100644 census/VERSION
 create mode 100755 census/arping.py
 create mode 100755 census/arping_users.py
 create mode 100644 census/mac_names.lst
 create mode 100644 infest/Makefile
 create mode 100755 infest/bin/make-patch
 create mode 100644 infest/bootstrap.sh
 create mode 100755 infest/core/angstrom
 create mode 100755 infest/core/debian
 create mode 100644 infest/host-patch/beagleboard/Makefile
 create mode 100644 infest/host-patch/beagleboard/profile.patch
 create mode 100644 infest/skel/etc/motd.tail
 create mode 100755 infest/skel/etc/profile
 create mode 100755 infest/skel/etc/rc.local
 create mode 100644 infest/skel/home/.ssh/authorized_keys
 create mode 100644 infest/skel/home/.vimrc
 delete mode 100644 modules/Monitoring/Makefile
 delete mode 100644 modules/Monitoring/TODO
 delete mode 100644 modules/Monitoring/conf/hostgroups_nagios2.cfg
 delete mode 100644 modules/Monitoring/conf/krebs_hosts.cfg
 delete mode 100644 modules/Monitoring/conf/krebsnet.cfg
 delete mode 100644 modules/Monitoring/conf/localhost.cfg
 delete mode 100644 modules/Monitoring/conf/other_hosts.cfg
 delete mode 100644 modules/Monitoring/conf/shack_infrastructure.cfg
 delete mode 100644 modules/Monitoring/conf/shacknet.cfg
 delete mode 100644 modules/Monitoring/conf/tinc_hosts.cfg
 delete mode 100644 modules/Monitoring/conf/tincnet.cfg
 delete mode 100644 modules/Monitoring/htdocs/images/logos/krebs/favicon.ico
 delete mode 100644 modules/Monitoring/htdocs/images/logos/krebs/krebs.gd2
 delete mode 100644 modules/Monitoring/htdocs/images/logos/krebs/krebs.png
 delete mode 100644 modules/Monitoring/htdocs/images/logos/krebs/shack.gd2
 delete mode 100644 modules/Monitoring/htdocs/images/logos/krebs/shack.png
 delete mode 100644 modules/Monitoring/htdocs/images/logos/krebs/tinc.gd2
 delete mode 100644 modules/Monitoring/htdocs/images/logos/krebs/tinc.png
 delete mode 100644 modules/Monitoring/htdocs/images/logos/krebs/wireless_access_point.gd2
 delete mode 100644 modules/Monitoring/htdocs/images/logos/krebs/wireless_access_point.png
 delete mode 100644 modules/Monitoring/htdocs/images/logos/krebs/wireless_access_point_64.png
 delete mode 100755 modules/Monitoring/plugins/check_sip
 delete mode 100755 modules/bigeye/bigeyed
 delete mode 100644 modules/infest/Makefile
 delete mode 100755 modules/infest/bin/make-patch
 delete mode 100644 modules/infest/bootstrap.sh
 delete mode 100755 modules/infest/core/angstrom
 delete mode 100755 modules/infest/core/debian
 delete mode 100644 modules/infest/host-patch/beagleboard/Makefile
 delete mode 100644 modules/infest/host-patch/beagleboard/profile.patch
 delete mode 100644 modules/infest/skel/etc/motd.tail
 delete mode 100755 modules/infest/skel/etc/profile
 delete mode 100755 modules/infest/skel/etc/rc.local
 delete mode 100644 modules/infest/skel/home/.ssh/authorized_keys
 delete mode 100644 modules/infest/skel/home/.vimrc
 delete mode 100644 modules/morse/COPYING
 delete mode 100644 modules/morse/README
 delete mode 100755 modules/morse/morse.sh
 delete mode 100644 modules/node/Makefile
 delete mode 100644 modules/noise/Makefile
 delete mode 100644 modules/noise/TODO
 delete mode 100755 modules/noise/cron/bin/zeit
 delete mode 100755 modules/noise/init.d/noise
 delete mode 100755 modules/noise/modules/cat
 delete mode 100755 modules/noise/modules/chat
 delete mode 100755 modules/noise/modules/date
 delete mode 100755 modules/noise/modules/echo
 delete mode 100755 modules/noise/modules/ein_mal_eins
 delete mode 100755 modules/noise/modules/espeak
 delete mode 100755 modules/noise/modules/help
 delete mode 100755 modules/noise/modules/join
 delete mode 100755 modules/noise/modules/lang
 delete mode 100755 modules/noise/modules/mpc
 delete mode 100755 modules/noise/modules/names
 delete mode 100755 modules/noise/modules/nick
 delete mode 100755 modules/noise/modules/part
 delete mode 100755 modules/noise/modules/ping
 delete mode 100755 modules/noise/modules/play
 delete mode 100755 modules/noise/modules/pong
 delete mode 100755 modules/noise/modules/query
 delete mode 100755 modules/noise/modules/send_to_channel
 delete mode 100755 modules/noise/modules/sendmail
 delete mode 100755 modules/noise/modules/shackstatus
 delete mode 100755 modules/noise/modules/sleep
 delete mode 100755 modules/noise/modules/stream
 delete mode 100755 modules/noise/modules/temp
 delete mode 100755 modules/noise/modules/test
 delete mode 100755 modules/noise/modules/twitter
 delete mode 100755 modules/noise/modules/vvs
 delete mode 100755 modules/noise/modules/wall
 delete mode 100755 modules/noise/modules/zeit
 delete mode 100755 modules/noise/noise
 delete mode 100755 modules/noise/noise-as-user
 delete mode 100755 modules/noise/noise-server
 delete mode 100644 modules/people/Makefile
 delete mode 100644 modules/people/README.md
 delete mode 100644 modules/people/TODO.md
 delete mode 100644 modules/people/VERSION
 delete mode 100755 modules/people/arping.py
 delete mode 100755 modules/people/arping_users.py
 delete mode 100644 modules/people/mac_names.lst
 delete mode 100644 modules/retiolum/Makefile
 delete mode 100644 modules/retiolum/README
 delete mode 100755 modules/retiolum/bin/fillxx
 delete mode 100755 modules/retiolum/bin/hosts
 delete mode 100755 modules/retiolum/bin/ipv6
 delete mode 100755 modules/retiolum/bin/tinc
 delete mode 100755 modules/retiolum/bin/update_tinc_hosts
 delete mode 100644 modules/retiolum/doc/install_dotcloud
 delete mode 100644 modules/retiolum/doc/install_no.de
 delete mode 100644 modules/retiolum/scripts/README
 delete mode 100644 modules/retiolum/scripts/adv_graphgen/README
 delete mode 100755 modules/retiolum/scripts/adv_graphgen/parse.py
 delete mode 100755 modules/retiolum/scripts/adv_graphgen/sanitize.sh
 delete mode 100644 modules/retiolum/scripts/autostart/Makefile
 delete mode 100755 modules/retiolum/scripts/autostart/tinc
 delete mode 100755 modules/retiolum/scripts/tinc_multicast/retiolum
 delete mode 100755 modules/retiolum/scripts/tinc_multicast/retiolum.py
 delete mode 100644 modules/retiolum/scripts/tinc_setup/README
 delete mode 100644 modules/retiolum/scripts/tinc_setup/autoupdate_cron.sh
 delete mode 100644 modules/retiolum/scripts/tinc_setup/bootstrap.sh
 delete mode 100755 modules/retiolum/scripts/tinc_setup/build_arch.sh
 delete mode 100755 modules/retiolum/scripts/tinc_setup/build_debian.sh
 delete mode 100755 modules/retiolum/scripts/tinc_setup/build_debian_clean.sh
 delete mode 100755 modules/retiolum/scripts/tinc_setup/build_ec2.sh
 delete mode 100644 modules/retiolum/scripts/tinc_setup/build_no.de.sh
 delete mode 100755 modules/retiolum/scripts/tinc_setup/install.sh
 delete mode 100755 modules/retiolum/scripts/tinc_setup/tinc-up
 delete mode 100644 modules/retiolum/scripts/tinc_setup/write_channel.py
 delete mode 100644 modules/roboctl/index.js
 delete mode 100644 modules/roboctl/lib/irc.js
 delete mode 100644 modules/streams/Makefile
 delete mode 100644 modules/streams/README
 delete mode 100755 modules/streams/deepmix
 delete mode 100755 modules/streams/groove
 delete mode 100755 modules/streams/radiotux
 delete mode 100644 modules/temper/.gitignore
 delete mode 100644 modules/temper/99-tempsensor.rules
 delete mode 100644 modules/temper/Makefile
 delete mode 100644 modules/temper/temper.c
 delete mode 100644 modules/temper/temper.h
 delete mode 100755 modules/webcams/cam1.sh
 delete mode 100644 modules/zoneminder/Makefile
 delete mode 100644 modules/zoneminder/zmdc.pl-LD_PRELOAD.patch
 delete mode 100644 modules/zoneminder/zoneminder.conf
 create mode 100644 morse/COPYING
 create mode 100644 morse/README
 create mode 100755 morse/morse.sh
 create mode 100644 node/Makefile
 create mode 100644 noise/Makefile
 create mode 100644 noise/TODO
 create mode 100755 noise/cron/bin/zeit
 create mode 100755 noise/init.d/noise
 create mode 100755 noise/modules/cat
 create mode 100755 noise/modules/chat
 create mode 100755 noise/modules/date
 create mode 100755 noise/modules/echo
 create mode 100755 noise/modules/ein_mal_eins
 create mode 100755 noise/modules/espeak
 create mode 100755 noise/modules/help
 create mode 100755 noise/modules/join
 create mode 100755 noise/modules/lang
 create mode 100755 noise/modules/mpc
 create mode 100755 noise/modules/names
 create mode 100755 noise/modules/nick
 create mode 100755 noise/modules/part
 create mode 100755 noise/modules/ping
 create mode 100755 noise/modules/play
 create mode 100755 noise/modules/pong
 create mode 100755 noise/modules/query
 create mode 100755 noise/modules/send_to_channel
 create mode 100755 noise/modules/sendmail
 create mode 100755 noise/modules/shackstatus
 create mode 100755 noise/modules/sleep
 create mode 100755 noise/modules/stream
 create mode 100755 noise/modules/temp
 create mode 100755 noise/modules/test
 create mode 100755 noise/modules/twitter
 create mode 100755 noise/modules/vvs
 create mode 100755 noise/modules/wall
 create mode 100755 noise/modules/zeit
 create mode 100755 noise/noise
 create mode 100755 noise/noise-as-user
 create mode 100755 noise/noise-server
 create mode 100644 retiolum/Makefile
 create mode 100644 retiolum/README
 create mode 100755 retiolum/bin/fillxx
 create mode 100755 retiolum/bin/hosts
 create mode 100755 retiolum/bin/ipv6
 create mode 100755 retiolum/bin/tinc
 create mode 100755 retiolum/bin/update_tinc_hosts
 create mode 100644 retiolum/doc/install_dotcloud
 create mode 100644 retiolum/doc/install_no.de
 create mode 100644 retiolum/scripts/README
 create mode 100644 retiolum/scripts/adv_graphgen/README
 create mode 100755 retiolum/scripts/adv_graphgen/parse.py
 create mode 100755 retiolum/scripts/adv_graphgen/sanitize.sh
 create mode 100644 retiolum/scripts/autostart/Makefile
 create mode 100755 retiolum/scripts/autostart/tinc
 create mode 100755 retiolum/scripts/tinc_multicast/retiolum
 create mode 100755 retiolum/scripts/tinc_multicast/retiolum.py
 create mode 100644 retiolum/scripts/tinc_setup/README
 create mode 100644 retiolum/scripts/tinc_setup/autoupdate_cron.sh
 create mode 100644 retiolum/scripts/tinc_setup/bootstrap.sh
 create mode 100755 retiolum/scripts/tinc_setup/build_arch.sh
 create mode 100755 retiolum/scripts/tinc_setup/build_debian.sh
 create mode 100755 retiolum/scripts/tinc_setup/build_debian_clean.sh
 create mode 100755 retiolum/scripts/tinc_setup/build_ec2.sh
 create mode 100644 retiolum/scripts/tinc_setup/build_no.de.sh
 create mode 100755 retiolum/scripts/tinc_setup/install.sh
 create mode 100755 retiolum/scripts/tinc_setup/tinc-up
 create mode 100644 retiolum/scripts/tinc_setup/write_channel.py
 create mode 100644 roboctl/index.js
 create mode 100644 roboctl/lib/irc.js
 create mode 100644 streams/Makefile
 create mode 100644 streams/README
 create mode 100755 streams/deepmix
 create mode 100755 streams/groove
 create mode 100755 streams/radiotux
 create mode 100644 temper/.gitignore
 create mode 100644 temper/99-tempsensor.rules
 create mode 100644 temper/Makefile
 create mode 100644 temper/temper.c
 create mode 100644 temper/temper.h
 create mode 100755 webcams/cam1.sh
 create mode 100644 zoneminder/Makefile
 create mode 100644 zoneminder/zmdc.pl-LD_PRELOAD.patch
 create mode 100644 zoneminder/zoneminder.conf

diff --git a/Makefile b/Makefile
index 4e8a8e65..188e6ca2 100644
--- a/Makefile
+++ b/Makefile
@@ -4,16 +4,16 @@ DIST = debian
 all: select-target
 
 infest:
-	make -C modules/infest
+	make -C infest
 
 install-core:
 	core/$(DIST)
 
 noise:
-	make -C modules/noise infest
+	make -C noise infest
 streams:
-	make -C modules/streams
+	make -C streams
 monitoring:
-	make -C modules/Monitoring debian
+	make -C Monitoring debian
 zoneminder:
-	make -C modules/zoneminder fix it so hard
+	make -C zoneminder fix it so hard
diff --git a/Monitoring/Makefile b/Monitoring/Makefile
new file mode 100644
index 00000000..cc1d8903
--- /dev/null
+++ b/Monitoring/Makefile
@@ -0,0 +1,8 @@
+.phony: debian
+debian:
+	[ `which nagios3` ] || apt-get install nagios3
+	rm /etc/nagios3/conf.d/localhost_nagios2.cfg  || true
+	cp -r conf/* /etc/nagios3/conf.d/
+	cp -R htdocs/* /usr/share/nagios3/htdocs/
+	cp -r plugins /usr/lib/nagios
+	/etc/init.d/nagios3 reload
diff --git a/Monitoring/TODO b/Monitoring/TODO
new file mode 100644
index 00000000..6d74fdcd
--- /dev/null
+++ b/Monitoring/TODO
@@ -0,0 +1,5 @@
+add guest user
+add guest user to 
+>     * authorized_for_all_services=usernagios,guest
+>     * authorized_for_all_hosts=usernagios,guest
+in /etc/nagios3/somewhere
diff --git a/Monitoring/conf/hostgroups_nagios2.cfg b/Monitoring/conf/hostgroups_nagios2.cfg
new file mode 100644
index 00000000..63acbf50
--- /dev/null
+++ b/Monitoring/conf/hostgroups_nagios2.cfg
@@ -0,0 +1,31 @@
+# Some generic hostgroup definitions
+
+# A simple wildcard hostgroup
+define hostgroup {
+        hostgroup_name  all
+		alias           All Servers
+		members         *
+        }
+
+# A list of your Debian GNU/Linux servers
+define hostgroup {
+        hostgroup_name  debian-servers
+		alias           Debian GNU/Linux Servers
+		members         localhost
+        }
+
+# A list of your web servers
+define hostgroup {
+        hostgroup_name  http-servers
+		alias           HTTP servers
+		members         localhost
+        }
+
+# A list of your ssh-accessible servers
+define hostgroup {
+        hostgroup_name  ssh-servers
+		alias           SSH servers
+		members         localhost
+        }
+
+
diff --git a/Monitoring/conf/krebs_hosts.cfg b/Monitoring/conf/krebs_hosts.cfg
new file mode 100644
index 00000000..a929fa19
--- /dev/null
+++ b/Monitoring/conf/krebs_hosts.cfg
@@ -0,0 +1,78 @@
+
+#
+# Ur-Krebs
+#
+define host{
+        use                     generic-host
+        host_name               krebs.shack
+        alias                   krebs
+        _tinc_address           10.7.7.156
+        address                 10.42.23.5
+        parents                 shack-coreswitch
+        hostgroups              krebs-machines,tinc-nodes,ssh-servers
+        }
+#
+# UTART
+#
+define host{
+        use                     generic-host
+        host_name               utart
+        alias                   UTART
+        _tinc_address           10.7.7.66
+        address                 10.42.23.23
+        parents                 shack-coreswitch
+        hostgroups              krebs-machines,tinc-nodes,ssh-servers
+        }
+#
+# ytart
+# will use tinc ip as long as no static ip is supplied
+#
+define host{
+        use                     generic-host
+        host_name               ytart
+        alias                   ytart
+        _tinc_address           10.7.7.201
+        parents                 shack-wlan-ap5
+        address                 10.7.7.201
+        hostgroups              krebs-machines,tinc-nodes,ssh-servers
+        }
+#
+# uPM
+#
+define host{
+        use                     generic-host
+        host_name               upm
+        alias                   uPM Virtual Machine
+        _tinc_address           10.7.7.99
+        address                 upm.shack
+        parents                 shack-node1
+        hostgroups              krebs-machines,ssh-servers,shack-rz 
+        #,tinc-nodes
+        }
+
+# TODO add upm and genericore as tinc-nodes
+# TODO check MONGODB on uPM
+
+
+
+#TODO verkrebse genericore/get password
+define host{
+        use                     generic-host
+        host_name               genericore
+        alias                   genericore Virtual Machine
+        #_tinc_address           10.7.7.XX
+        address                 genericore.shack
+        parents                 shack-node1
+        hostgroups              ssh-servers,shack-rz
+        #,tinc-nodes,krebs-machines
+        }
+
+define host{
+        use                     generic-host
+        host_name               shepherd
+        alias                   Shepherd Krebs
+        _tinc_address           10.7.7.29
+        address                 10.42.23.42
+        parents                 shack-coreswitch
+        hostgroups              krebs-machines,tinc-nodes,ssh-servers
+        }
diff --git a/Monitoring/conf/krebsnet.cfg b/Monitoring/conf/krebsnet.cfg
new file mode 100644
index 00000000..ae5b898e
--- /dev/null
+++ b/Monitoring/conf/krebsnet.cfg
@@ -0,0 +1,20 @@
+## extended infos for krebsnet
+define hostgroup {
+        hostgroup_name   krebs-machines
+        alias            Krebs Machines
+        }
+define hostextinfo{
+        hostgroup_name   krebs-machines
+        notes            Deployed Krebse
+#       notes_url        http://webserver.localhost.localdomain/hostinfo.pl?host=netware1
+        icon_image       krebs/krebs.png
+        icon_image_alt   Krebs
+        vrml_image       krebs.png
+        statusmap_image  krebs/krebs.gd2
+        }
+#define host{
+#        use             generic-host
+#        register        0
+#        name            tinc-only-host
+#        check_command   check_internal_tinc_up!100.0,20%!500.0,60%
+#        }
diff --git a/Monitoring/conf/localhost.cfg b/Monitoring/conf/localhost.cfg
new file mode 100644
index 00000000..3b098195
--- /dev/null
+++ b/Monitoring/conf/localhost.cfg
@@ -0,0 +1,60 @@
+# A simple configuration file for monitoring the local host
+# This can serve as an example for configuring other servers;
+# Custom services specific to this host are added here, but services
+# defined in nagios2-common_services.cfg may also apply.
+# 
+
+define host{
+        use                     generic-host            ; Name of host template to use
+        host_name               localhost
+        alias                   localhost
+        address                 127.0.0.1
+        hostgroups              krebs-machines
+        }
+
+# Define a service to check the disk space of the root partition
+# on the local machine.  Warning if < 20% free, critical if
+# < 10% free space on partition.
+
+define service{
+        use                             generic-service         ; Name of service template to use
+        host_name                       localhost
+        service_description             Disk Space
+        check_command                   check_all_disks!20%!10%
+        }
+
+
+
+# Define a service to check the number of currently logged in
+# users on the local machine.  Warning if > 20 users, critical
+# if > 50 users.
+
+define service{
+        use                             generic-service         ; Name of service template to use
+        host_name                       localhost
+        service_description             Current Users
+        check_command                   check_users!20!50
+        }
+
+
+# Define a service to check the number of currently running procs
+# on the local machine.  Warning if > 250 processes, critical if
+# > 400 processes.
+
+define service{
+        use                             generic-service         ; Name of service template to use
+        host_name                       localhost
+        service_description             Total Processes
+		check_command                   check_procs!250!400
+        }
+
+
+
+# Define a service to check the load on the local machine. 
+
+define service{
+        use                             generic-service         ; Name of service template to use
+        host_name                       localhost
+        service_description             Current Load
+		check_command                   check_load!5.0!4.0!3.0!10.0!6.0!4.0
+        }
diff --git a/Monitoring/conf/other_hosts.cfg b/Monitoring/conf/other_hosts.cfg
new file mode 100644
index 00000000..bfc36154
--- /dev/null
+++ b/Monitoring/conf/other_hosts.cfg
@@ -0,0 +1,23 @@
+define host{
+        use                     generic-host
+        host_name               google.de
+        alias                   Google Website
+        address                 google.de
+        parents                 shack-modem
+        hostgroups              http-servers
+        }
+
+define host{
+        use                     generic-host
+        host_name               google-dns
+        parents                 shack-gw
+        parents                 s