diff options
| -rwxr-xr-x | btc/mtgox/ticker_text.sh | 3 | ||||
| -rw-r--r-- | cholerab/install_stories/debian_squeeze_minimal | 23 | ||||
| -rwxr-xr-x | cholerab/knut/index.js | 4 | ||||
| -rw-r--r-- | cholerab/news/Issue#0 | 32 | ||||
| -rw-r--r-- | cholerab/news/Issue#1 | 62 | ||||
| -rw-r--r-- | cholerab/shirts/bestellliste | 56 | ||||
| -rw-r--r-- | cholerab/thesauron | 11 | ||||
| -rw-r--r-- | evan/satz-liste | 14 | ||||
| -rw-r--r-- | gold/Makefile | 3 | ||||
| -rw-r--r-- | gold/btcguild/index.js (renamed from btc/btcguild/index.js) | 0 | ||||
| -rwxr-xr-x | gold/json/render/ticker (renamed from btc/mtgox/json_ticker_helper.py) | 0 | ||||
| -rw-r--r-- | gold/mining/CONFIGURE (renamed from btc/mining/CONFIGURE) | 0 | ||||
| -rw-r--r-- | gold/mining/Makefile (renamed from btc/mining/Makefile) | 0 | ||||
| -rw-r--r-- | gold/mining/README (renamed from btc/mining/README) | 0 | ||||
| -rw-r--r-- | gold/mining/TODO (renamed from btc/mining/TODO) | 0 | ||||
| -rwxr-xr-x | gold/mining/bin/archlinux-cruise-control (renamed from btc/mining/bin/archlinux-cruise-control) | 0 | ||||
| -rwxr-xr-x | gold/mining/bin/ati_temper (renamed from btc/mining/bin/ati_temper) | 0 | ||||
| -rwxr-xr-x | gold/mining/bin/cleanup_tmp (renamed from btc/mining/bin/cleanup_tmp) | 0 | ||||
| -rwxr-xr-x | gold/mining/bin/ensure-router (renamed from btc/mining/bin/ensure-router) | 0 | ||||
| -rwxr-xr-x | gold/mining/bin/ensure-wlan0 (renamed from btc/mining/bin/ensure-wlan0) | 0 | ||||
| -rw-r--r-- | gold/mining/poll_btcguild (renamed from btc/mining/poll_btcguild) | 0 | ||||
| -rw-r--r-- | gold/mining/user/.config/autostart/startup.desktop (renamed from btc/mining/user/.config/autostart/startup.desktop) | 0 | ||||
| -rw-r--r-- | gold/mining/user/mining.ovdr (renamed from btc/mining/user/mining.ovdr) | 0 | ||||
| -rwxr-xr-x | gold/mining/user/startup.sh (renamed from btc/mining/user/startup.sh) | 0 | ||||
| -rwxr-xr-x | gold/mtgox/mtgox.getDepth (renamed from btc/mtgox/mtgox.getDepth) | 0 | ||||
| -rwxr-xr-x | gold/mtgox/mtgox.getTrades (renamed from btc/mtgox/mtgox.getTrades) | 0 | ||||
| -rwxr-xr-x | gold/mtgox/mtgox.ticker (renamed from btc/mtgox/mtgox.ticker) | 0 | ||||
| -rwxr-xr-x | gold/mtgox/ticker_text.sh | 4 | ||||
| -rwxr-xr-x | gold/scex/ticker | 2 | ||||
| -rwxr-xr-x | gold/scex/ticker_text.sh | 4 | ||||
| -rw-r--r-- | gold/scex/tracer/index.js | 89 | ||||
| -rw-r--r-- | gold/scex/tracer/slurp.js | 38 | ||||
| -rw-r--r-- | ovh/README | 20 | ||||
| -rw-r--r-- | retiolum/hosts/EUcancER | 11 | 
34 files changed, 333 insertions, 43 deletions
| diff --git a/btc/mtgox/ticker_text.sh b/btc/mtgox/ticker_text.sh deleted file mode 100755 index 2bcac134..00000000 --- a/btc/mtgox/ticker_text.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -dirname=`dirname  $(readlink -f $0)` -$dirname/mtgox.ticker | python $dirname/json_ticker_helper.py diff --git a/cholerab/install_stories/debian_squeeze_minimal b/cholerab/install_stories/debian_squeeze_minimal new file mode 100644 index 00000000..0d5e64b2 --- /dev/null +++ b/cholerab/install_stories/debian_squeeze_minimal @@ -0,0 +1,23 @@ +apt-get update +apt-get upgrade +apt-get install curl git-core vim make +curl https://raw.github.com/krebscode/painload/master/util/auto/krebs + +KREBSDIR=${1-/krebs} +[ ! -e $KREBSDIR ] && git clone https://github.com/krebscode/painload ${KREBSDIR}|| printf "painload already deployed\n"  +cp /krebs/infest/skel/etc/profile /etc/profile +# not copying rc.local +cp /krebs/infest/skel/home /root +# not copying .ssh +cp /krebs/infest/skel/etc/motd.tail /etc/motd.tail +cp /krebs/infest/skel/etc/motd.tail /etc/motd + +# retiolum +apt-get install python +# fix matcher script +# fix makefile + +# fix fuer vhosts die tun haben aber noch nicht eingerichtet +mkdir /dev/net +mknod /dev/net/tun c 10 200 +mknod /dev/tap0 c 36 16 diff --git a/cholerab/knut/index.js b/cholerab/knut/index.js index e7278678..9c536006 100755 --- a/cholerab/knut/index.js +++ b/cholerab/knut/index.js @@ -1,7 +1,7 @@  #! /usr/bin/env node -var host = '0.0.0.0'; -var port = 42101; +var host = process.env.host || '127.0.0.1'; +var port = Number(process.env.port) || 42101;  var pipe = '/tmp/krebscode.painload.cholerab.ttycnser.' + process.env.LOGNAME; diff --git a/cholerab/news/Issue#0 b/cholerab/news/Issue#0 new file mode 100644 index 00000000..532c5c3b --- /dev/null +++ b/cholerab/news/Issue#0 @@ -0,0 +1,32 @@ +Krebs News 2011-08-24 +====================== +0. urkrebs hat ein usb-relais  +----------------------- + +in /krebs/claws ist der code um das relais anzusteuern, "make install" +sollte das richtige tun, danach steht ein tool names "rcontrol" im +/krebs/bin ordner zur verfuegung. + +1. neuer supernode +------------------ +seit heut eingerichtet ist ein neuer Supernode fuers Tinc : EUcancER + +auch das updaten wurde vereinfacht! +cd /krebs +git pull  +make -C retiolum update + +und danach in /etc/tinc/retiolum/tinc.conf: +ConnectTo = EUcancER + +die kisten von EUserv sind wohl serioes und recht stable + +fuer interessenten: +http://hoohead.hoohost.org/2011/08/kostenloser-vserver/ + +ich hab uebrigens die kiste schon seit 2 jahren (und seit dem total +vergessen), ist genauso eine beta kiste. + +Gruesse, + +Felix diff --git a/cholerab/news/Issue#1 b/cholerab/news/Issue#1 new file mode 100644 index 00000000..e5fd78df --- /dev/null +++ b/cholerab/news/Issue#1 @@ -0,0 +1,62 @@ +# Krebs News Issue #1 (2011-08-24) +## 0. krebsco.de & ovh soapi + +Krebs hat jetzt ein offizielles Zuhause im Internet.  Das Ministerium +dankt KM momo, dass er die Domain geclaimt und das erste Jahr gesponsort +hat! + +Die Zone kann momentan wie in [`//ovh/README`][0.1] beschrieben bearbeitet +werden.  Wenn ihr das nicht koennt oder wollt, aber dennoch eine Maschine unter +`krebsco.de` erreichbar haben moechtet, dann schickt eine Bewerbung an uns und +es wird, wie immer, das Richtige passieren. + +Niob: Sehr relevante und awesome [`Graphen`][0.2]. + +[0.1]: https://github.com/krebscode/painload/tree/master/ovh +[0.2]: http://euer.krebsco.de/graphs + +## 1. SC ist das neue BTC + +Zumindest sind chinaman und bergwerk umgestiegen und bringen nun ueber +100% mehr Gewinn ein, wenn unsere Prognosen stimmen sollten...`^_-` + +Die passenden Ticker und Tracer sind unter [`//gold/scex`][1.1] zu +finden: + +    $ //gold/scex/ticker_text.sh # bzw. +    $ node //gold/scex/tracer + +Installer kommen ASAP oder auch nicht.`^_^` + +[1.1]: https://github.com/krebscode/painload/tree/master/gold/scex + +## 2. Knights + +Eine neue Kaste ist entstanden: die Cancer Knights.  Sie arbeiten fuer +uns und fuehlen sich besser, weil sie ueber den Crab People stehen.  Sie +stellen Ressourcen wie Hardware und Arbeitskraft bereit, haben keine +Rechte.  Sobald drei Cancer Knights zusammen kommen haben sie die Chance +Krebsminister werden. Bevor dies geschieht muessen sie geschossen zu drei +Krebsministern in der Realen Welt gehen und werden dann in einem noch zu  +definierenden Ritual zu Krebsministern ernannt. Ab dann koennen sie zum  +punchen aufgefordern werden bzw.automatisch punchen bzw. autopunchen. + +Infin aus Hannover wird der erste Cancer Knight.  Er hat die +Krebsanimation sowie den 3D-Krebs auf dem CCCAMP11 gemacht.   +Danke Infin, du verdienst den Titel, trage ihn mit Wuerde! + +## 3. Thesauron + +Wie allgemein gueltig unterliegen alle Sprachen dem staetigen Wandel. +Um spaeter zu wissen woher wir kamen und die Linguisten unter uns zu +befriedigen wurde der Grundstein zur Dokumentation der Relevanten +Sprache, ihrer Entwicklung, etc. gelegt. + +Die ersten Schritte sind in [`//cholerab/thesauron`][3.1] zu finden und +auch _du_ fuehlst dich angesprochen diese zu erweitern!  Entweder direkt +via GitHub's fork & pull request, durch eine formlose Mail an [die Krebs +Mailingliste][3.2] oder auf einem der anderen, zahllosen Wege, auf dem +ihr uns errreichen koennt. + +[3.1]: https://github.com/krebscode/painload/tree/master/gold/scex +[3.2]: mailto:krebs@syntax-fehler.de diff --git a/cholerab/shirts/bestellliste b/cholerab/shirts/bestellliste index 9a42b443..08bd72dc 100644 --- a/cholerab/shirts/bestellliste +++ b/cholerab/shirts/bestellliste @@ -1,24 +1,32 @@ -                GEZ ERH -tv:       2 M   j -          1 S   j -ulrich:   1 M -felix:    2 M   j   j -          1 S   j   j -Lassulus: 2 M   j   j -Pfleidi:  1 L -Tensai:   1 L -Momo:     1 XXL -hadez:    1 L   j   j -          1 M   j   j -Phil:     1 S -Lukas:    1 M   v   j -Jan:      1 2XL -Ronny:    1 M -Marc:     1 L -Lotho:    1 XL -Sascha:   1 XL -Moritz:   1 M -RIPE:     1 XL -kh:       1 L   j   j -miefda:   1 L   j   j -          1 XL  j   j +          # S G∃  Feedback +tv        2 M j- +          1 S j- +ulrich    1 M ?j  gut +felix     2 M jj +          1 S jj +Lassulus  2 M jj +Pfleidi   1 L -- +Tensai    1 L jj +Momo      1 2 jj  Der Siebdruck sieht echt gut aus, kein bisschen verschmiert. +hadez     1 L jj +          1 M jj +Phil      1 S -- +Lukas     1 M ?j +Jan       1 2 -- +Ronny     1 M -- +Marc      1 L -- +Lotho     1 X -- +Sascha    1 X -- +Moritz    1 M -- +RIPE      1 X -- +kh        1 L jj gute Verarbeitung, guter Gesamteindruck, passt wie angegossen +miefda    1 L jj +          1 X jj + +G = Gezahlt ∈ { -, j, ? } +∃ = Erhalten ∈ { -, j, ? } +j = ja +- = nein +? = vielleicht +S = Größe ∈ { S, M, L, X = XL, 2 = XXL, ... } +# = Anzahl diff --git a/cholerab/thesauron b/cholerab/thesauron new file mode 100644 index 00000000..07e274f5 --- /dev/null +++ b/cholerab/thesauron @@ -0,0 +1,11 @@ +Cholerab n. +- Kunstwort aus Kollaboration und Cholera.  Beschreibt den Zustand, dass +  Zusammenarbeit niemals gut, einfach und ohne Schmerzen funktioniert. +- Teamwork-Plattform für Krebscode. + +Nahziel n. +- Ziel mit höchst möglicher Priorität. + +Nahzielerfahrung n. +- das Erlebnis der (endgültigen) Nichterreichung eines Nahziels (obwohl +  nur noch wenig ((quasi-) infinitesimal viel) nötig gewesen wäre). diff --git a/evan/satz-liste b/evan/satz-liste deleted file mode 100644 index e14aaf78..00000000 --- a/evan/satz-liste +++ /dev/null @@ -1,14 +0,0 @@ -wenn ich meinen erzeugten abfall vor dem nach hause gehen beseitige steigt mein soziales ansehen -bringe eine pflanze mit -ein sauberer scheck ist ein guter scheck -auch du weißt wie man den geschirrspüler einräumt -wer die toilette putzt kommt in den himmel -der große bruder sieht es gerne wenn die genossen die vereinsräume in stand halten -muelltrennung bringt gutes karma -dokumentiere deine projekte -werbe neue mitglieder -fnord -bewässere die Pflanzen -Öffne ein Fenster -wische die tische -Weniger Licht ist mehr diff --git a/gold/Makefile b/gold/Makefile new file mode 100644 index 00000000..ff553def --- /dev/null +++ b/gold/Makefile @@ -0,0 +1,3 @@ +install: +	ln -snf $$PWD/mtgox/ticker_text.sh ../bin/mtgox_ticker +	ln -snf $$PWD/scex/ticker_text.sh ../bin/scex_ticker diff --git a/btc/btcguild/index.js b/gold/btcguild/index.js index 1f33db06..1f33db06 100644 --- a/btc/btcguild/index.js +++ b/gold/btcguild/index.js diff --git a/btc/mtgox/json_ticker_helper.py b/gold/json/render/ticker index 727dd594..727dd594 100755 --- a/btc/mtgox/json_ticker_helper.py +++ b/gold/json/render/ticker diff --git a/btc/mining/CONFIGURE b/gold/mining/CONFIGURE index 299cbd53..299cbd53 100644 --- a/btc/mining/CONFIGURE +++ b/gold/mining/CONFIGURE diff --git a/btc/mining/Makefile b/gold/mining/Makefile index 8701920f..8701920f 100644 --- a/btc/mining/Makefile +++ b/gold/mining/Makefile diff --git a/btc/mining/README b/gold/mining/README index ad8c3468..ad8c3468 100644 --- a/btc/mining/README +++ b/gold/mining/README diff --git a/btc/mining/TODO b/gold/mining/TODO index bafaa72a..bafaa72a 100644 --- a/btc/mining/TODO +++ b/gold/mining/TODO diff --git a/btc/mining/bin/archlinux-cruise-control b/gold/mining/bin/archlinux-cruise-control index de5a0fa4..de5a0fa4 100755 --- a/btc/mining/bin/archlinux-cruise-control +++ b/gold/mining/bin/archlinux-cruise-control diff --git a/btc/mining/bin/ati_temper b/gold/mining/bin/ati_temper index 283a6024..283a6024 100755 --- a/btc/mining/bin/ati_temper +++ b/gold/mining/bin/ati_temper diff --git a/btc/mining/bin/cleanup_tmp b/gold/mining/bin/cleanup_tmp index e1395b19..e1395b19 100755 --- a/btc/mining/bin/cleanup_tmp +++ b/gold/mining/bin/cleanup_tmp diff --git a/btc/mining/bin/ensure-router b/gold/mining/bin/ensure-router index 5eedabc9..5eedabc9 100755 --- a/btc/mining/bin/ensure-router +++ b/gold/mining/bin/ensure-router diff --git a/btc/mining/bin/ensure-wlan0 b/gold/mining/bin/ensure-wlan0 index fa92c4f5..fa92c4f5 100755 --- a/btc/mining/bin/ensure-wlan0 +++ b/gold/mining/bin/ensure-wlan0 diff --git a/btc/mining/poll_btcguild b/gold/mining/poll_btcguild index 92a02657..92a02657 100644 --- a/btc/mining/poll_btcguild +++ b/gold/mining/poll_btcguild diff --git a/btc/mining/user/.config/autostart/startup.desktop b/gold/mining/user/.config/autostart/startup.desktop index 67c35ef8..67c35ef8 100644 --- a/btc/mining/user/.config/autostart/startup.desktop +++ b/gold/mining/user/.config/autostart/startup.desktop diff --git a/btc/mining/user/mining.ovdr b/gold/mining/user/mining.ovdr index d6cf6fec..d6cf6fec 100644 --- a/btc/mining/user/mining.ovdr +++ b/gold/mining/user/mining.ovdr diff --git a/btc/mining/user/startup.sh b/gold/mining/user/startup.sh index 6274a892..6274a892 100755 --- a/btc/mining/user/startup.sh +++ b/gold/mining/user/startup.sh diff --git a/btc/mtgox/mtgox.getDepth b/gold/mtgox/mtgox.getDepth index 9a607979..9a607979 100755 --- a/btc/mtgox/mtgox.getDepth +++ b/gold/mtgox/mtgox.getDepth diff --git a/btc/mtgox/mtgox.getTrades b/gold/mtgox/mtgox.getTrades index 73e5a68d..73e5a68d 100755 --- a/btc/mtgox/mtgox.getTrades +++ b/gold/mtgox/mtgox.getTrades diff --git a/btc/mtgox/mtgox.ticker b/gold/mtgox/mtgox.ticker index b24dfb35..b24dfb35 100755 --- a/btc/mtgox/mtgox.ticker +++ b/gold/mtgox/mtgox.ticker diff --git a/gold/mtgox/ticker_text.sh b/gold/mtgox/ticker_text.sh new file mode 100755 index 00000000..f585ffea --- /dev/null +++ b/gold/mtgox/ticker_text.sh @@ -0,0 +1,4 @@ +#! /bin/sh +set -euf +cd $(dirname `readlink -f $0`) +./mtgox.ticker | ../json/render/ticker diff --git a/gold/scex/ticker b/gold/scex/ticker new file mode 100755 index 00000000..a95d5910 --- /dev/null +++ b/gold/scex/ticker @@ -0,0 +1,2 @@ +#! /bin/sh +exec curl -ksS http://scexchange.bitparking.com:8080/api/ticker diff --git a/gold/scex/ticker_text.sh b/gold/scex/ticker_text.sh new file mode 100755 index 00000000..fbaff55b --- /dev/null +++ b/gold/scex/ticker_text.sh @@ -0,0 +1,4 @@ +#! /bin/sh +set -euf +cd $(dirname `readlink -f $0`) +./ticker | ../json/render/ticker diff --git a/gold/scex/tracer/index.js b/gold/scex/tracer/index.js new file mode 100644 index 00000000..7ee6de1b --- /dev/null +++ b/gold/scex/tracer/index.js @@ -0,0 +1,89 @@ +#! /usr/bin/env node +// +// usage: [idle_mark=N] tracer +// +// Where the optional idle_mark tells the tracer to output idle marks every N +// seconds. +// +var http = require('http'); +var slurp = require('./slurp'); + +var options = { +  host: 'scexchange.bitparking.com', +  port: 8080, +  path: '/api/t2' +}; + +var interval = 1000; +var idle_mark = Number(process.env.idle_mark) * interval; + +var last_id = 0; +var last_price = 0; +var last_output = new Date(0); +function t2 () { +  var now = new Date() +  http.get(options, function(res) { +    slurp(res, function (data) { +      try { +        data = JSON.parse(data); +      } catch (exn) { +        return console.error('[1;31m' + exn.stack + '[m'); +      }; +      data = data.sort(function (a, b) { +        return a.id - b.id; +      }).filter(function (x) { +        return x.id > last_id; +      }); +      if (data.length > 0) { +        data.forEach(function (x) { +          last_id = x.id; + +          x.date = new Date(Number(x.date) * 1000); + +          var price = render_price(x.price, last_price); +          last_price = x.price; + +          var c = ({ buy: '[32m', sell: '[31m' })[x.type]; +          var m = ''; +          m += x.id +          m += ' ' + JSON.parse(JSON.stringify(x.date)) +          m += ' ' + price +          m += ' ' + c + x.amount + '[m' +          console.log(m); +          last_output = now; +        }); +      } else { +        if (idle_mark) { +          if (now - last_output >= idle_mark) { +            var price = render_price(last_price); +            var m = last_id +            m += ' ' + JSON.parse(JSON.stringify(now)); +            m += ' ' + price +            console.log(m); +            last_output = now; +          }; +        }; +      }; +    }); +  }).on('error', function(e) { +    console.log("Got error: " + e.message); +  }); +}; + +function render_price(price, last_price) { +  var rendered_price = price.toString(); +  while (rendered_price.length < 'x.xxxxxxxx'.length) { +    rendered_price += 0; +  }; +  if (last_price) { +    if (price > last_price) { +      rendered_price = '[32m' + rendered_price + '[m' +    }; +    if (price < last_price) { +      rendered_price = '[31m' + rendered_price + '[m' +    }; +  }; +  return rendered_price; +}; + +setInterval(t2, interval); diff --git a/gold/scex/tracer/slurp.js b/gold/scex/tracer/slurp.js new file mode 100644 index 00000000..70319743 --- /dev/null +++ b/gold/scex/tracer/slurp.js @@ -0,0 +1,38 @@ +module.exports = (function () { + +  function join_buffers (buffers, length) { +    var buffer = new Buffer(length); +    var targetStart = 0; +    buffers.forEach(function (x) { +      x.copy(buffer, targetStart); +      targetStart += x.length; +    }); +    return buffer; +  }; + +  function finish_it (req, buffers, length, callback) { +    req.content = join_buffers(buffers, length); +    return callback(req.content); +  }; + +  function nop () {}; + +  return function (req, callback) { +    if (req.hasOwnProperty('content')) { +      return callback(req.content); +    }; +    var content = []; +    var length = 0; +    var end_handler = finish_it; +    req.on('data', function (data) { +      content.push(data); +      length += data.length; +    }); +    [ 'end', 'close' ].forEach(function (event) { +      req.on(event, function () { +        finish_it(req, content, length, callback); +        end_handler = nop; +      }); +    }); +  }; +})(); diff --git a/ovh/README b/ovh/README new file mode 100644 index 00000000..806f4b0e --- /dev/null +++ b/ovh/README @@ -0,0 +1,20 @@ +#? /bin/sh +set -euf + +# install ovh soapi + +cd /path/to/krebscode/painload + +make -C ovh/soapi install + +# edit the zone + +export PATH="$PWD/bin${PATH+:$PATH}" +export KREBS_OVH_USER=... +export KREBS_OVH_PASS=... + +zoneExport > /tmp/foo +$EDITOR /tmp/foo +zoneImport < /tmp/foo + +# Have a nice day!^_^ diff --git a/retiolum/hosts/EUcancER b/retiolum/hosts/EUcancER new file mode 100644 index 00000000..ae2d5f9d --- /dev/null +++ b/retiolum/hosts/EUcancER @@ -0,0 +1,11 @@ +Address = 84.23.67.119 +Subnet = 10.7.7.144 +Subnet = 42:974a:3ecf:3c49:06c0:4cd1:3c6f:59d9/128 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEArx2mZOPEfS8fvmQYSzWuMmNtfposJlctDfGVmhMVotaFIpIBcKuL +dHZHI8BAStaM++DuqKv/QBjk9jF6BRAdZqHn98LHXR+VRJmFvgelEFe0uPvIRMe2 +IMzi9Ly0f0f5L90ulZBMkudl56nBcEPuG5ge9RLDINIX5nDVh0oQzvrwWaIiVuy/ +oKDFLaoxa3SSsCXbhnbP7ow37+xzvaVCFolu++yLHvinkCc5g3IUkBGwr3kXKHQ7 +J8oDuPgsDZ7d1kMPfzMtGI9xcq8GFeCmJsMAt86XsWD8t9ogQpVUi8NGjR4cbQSI +TbE2iVBsdGLpxbGh833uy7fW5CCnK79DwwIDAQAB +-----END RSA PUBLIC KEY----- | 
