From da2be9e628e997d0d10e544331ce61b078b61502 Mon Sep 17 00:00:00 2001 From: lassulus Date: Mon, 30 Dec 2013 03:15:24 +0100 Subject: krebs: cleanup --- Cancer/ircbot/bot.py | 81 +++++++++++++++++++++++++++++++++++++++++++++ Cancer/ircbot/feeds | 2 ++ gold/ledger/lib/balance | 88 +++++++++++++++++++++++++++++++++++++++++++++++++ ircbot/bot.py | 81 --------------------------------------------- ircbot/feeds | 2 -- ledger/lib/balance | 88 ------------------------------------------------- 6 files changed, 171 insertions(+), 171 deletions(-) create mode 100755 Cancer/ircbot/bot.py create mode 100644 Cancer/ircbot/feeds create mode 100755 gold/ledger/lib/balance delete mode 100755 ircbot/bot.py delete mode 100644 ircbot/feeds delete mode 100755 ledger/lib/balance diff --git a/Cancer/ircbot/bot.py b/Cancer/ircbot/bot.py new file mode 100755 index 00000000..25a1014f --- /dev/null +++ b/Cancer/ircbot/bot.py @@ -0,0 +1,81 @@ +#!/usr/bin/python +import irc.bot +import feedparser +import _thread +import math +from time import sleep + +class TestBot(irc.bot.SingleServerIRCBot): + def __init__(self, rss, name, server='10.243.231.66', port=6667, chan='#news', timeout=60): + irc.bot.SingleServerIRCBot.__init__(self, [(server, port)], name, name) + self.url = rss + self.feed = feedparser.parse(self.url) + self.name = name + self.server = server + self.port = port + self.chan = chan + self.to = timeout + self.oldnews = [] + self.sendqueue = [] + for entry in self.feed.entries: + try: + self.sendqueue.append(entry.title + " " + entry.link + " com: " + entry.comments) + except AttributeError: + self.sendqueue.append(entry.title + " " + entry.link) + + self.oldnews.append(entry.link) + + def start(self): + self.upd_thread = _thread.start_new_thread(self.updateloop, ()) + self.bot = _thread.start_new_thread(irc.bot.SingleServerIRCBot.start, (self,)) + + + def updateloop(self): + while True: + sleep(self.to) + self.feed = feedparser.parse(self.url) + for entry in self.feed.entries: + if not entry.link in self.oldnews: + try: + self.send(entry.title + " " + entry.link + " com: " + entry.comments) + except AttributeError: + self.send(entry.title + " " + entry.link) + self.oldnews.append(entry.link) + + def sendall(self): + while len(self.sendqueue) > 0: + sleep(1) + self.send(self.sendqueue.pop()) + + def send(self, string): + if len(string) < 450: + self.connection.privmsg(self.chan, string) + else: + space = 0 + for x in range(math.ceil(len(string)/400)): + oldspace = space + space = string.find(" ", (x+1)*400, (x+1)*400+50) + self.connection.privmsg(self.chan, string[oldspace:space]) + sleep(1) + + + def on_welcome(self, connection, event): + connection.join(self.chan) + +# def on_privmsg(self, connection, event): +# print event.source().split('!')[0], event.arguments() + +F = open("feeds", "r") +lines = F.readlines() +F.close() + +botarray = [] +for line in lines: + lineArray = line.split('|') + bot = TestBot(lineArray[1], lineArray[0]) + #bot.start() + botarray.append(bot) + +def startall(): + for bot in botarray: + bot.start() diff --git a/Cancer/ircbot/feeds b/Cancer/ircbot/feeds new file mode 100644 index 00000000..50fe0667 --- /dev/null +++ b/Cancer/ircbot/feeds @@ -0,0 +1,2 @@ +HN|http://news.ycombinator.com/rss +Fefe|http://blog.fefe.de/rss.xml diff --git a/gold/ledger/lib/balance b/gold/ledger/lib/balance new file mode 100755 index 00000000..deb50d15 --- /dev/null +++ b/gold/ledger/lib/balance @@ -0,0 +1,88 @@ +#! /usr/bin/awk -f +# +# ledger balance calculator +# +# usage: +# [colorize=false] [scale=N] //ledger/lib/balance LEDGER_FILE... +# [colorize=false] [scale=N] //ledger/lib/balance < LEDGER_FILE +# +# description: +# The ledger balance calculator computes the balance of each account it +# encounters in the provided ledger files. +# +# example: +# //ledger/lib/balance < //cholerab/ledger-spec.markdown +# +# see also: +# //cholerab/ledger-spec.markdown (ledger file format) +# + +BEGIN { + colorize = ENVIRON["colorize"] == "" || ENVIRON["colorize"] == "true" + # TODO use bc for arbitrary precision arithmetic + scale = ENVIRON["scale"] +} + +/^[[:space:]]*[0-9]+-[0-9][0-9]-[0-9][0-9]/{ + tx($2, $3, $4, $5) +} + +END { + display_accounts() +} + +function tx (dst, src, amt, u) { + withdraw(src, amt, u) + deposit(dst, amt, u) +} + +function deposit (name, amt, u) { + accounts[name][u] += amt +} + +function withdraw (name, amt, u) { + accounts[name][u] -= amt +} + +function display_accounts() { + max_name_len = 0 + for (name in accounts) { + if (length(name) > max_name_len) { + max_name_len = length(name) + } + } + + max_balance_len = 0 + for (name in accounts) { + for (u in accounts[name]) { + n = length(int(accounts[name][u])) + if (n > max_balance_len) { + max_balance_len = n + } + } + } + if (scale > 0) { + max_balance_len += length(".") + scale + } + + for (name in accounts) { + for (u in accounts[name]) { + balance = accounts[name][u] + if (balance == 0) { + continue + } + + fmt = "NAME BALANCE UNIT\n" + + if (colorize) { + sub("BALANCE", "[" (balance < 0 ? 31 : 32) "m&", fmt) + } + + sub("NAME", "%-" max_name_len "s", fmt) + sub("BALANCE", "%" max_balance_len "." scale "f", fmt) + sub("UNIT", "%s", fmt) + + printf fmt, name, balance, u + } + } +} diff --git a/ircbot/bot.py b/ircbot/bot.py deleted file mode 100755 index 25a1014f..00000000 --- a/ircbot/bot.py +++ /dev/null @@ -1,81 +0,0 @@ -#!/usr/bin/python -import irc.bot -import feedparser -import _thread -import math -from time import sleep - -class TestBot(irc.bot.SingleServerIRCBot): - def __init__(self, rss, name, server='10.243.231.66', port=6667, chan='#news', timeout=60): - irc.bot.SingleServerIRCBot.__init__(self, [(server, port)], name, name) - self.url = rss - self.feed = feedparser.parse(self.url) - self.name = name - self.server = server - self.port = port - self.chan = chan - self.to = timeout - self.oldnews = [] - self.sendqueue = [] - for entry in self.feed.entries: - try: - self.sendqueue.append(entry.title + " " + entry.link + " com: " + entry.comments) - except AttributeError: - self.sendqueue.append(entry.title + " " + entry.link) - - self.oldnews.append(entry.link) - - def start(self): - self.upd_thread = _thread.start_new_thread(self.updateloop, ()) - self.bot = _thread.start_new_thread(irc.bot.SingleServerIRCBot.start, (self,)) - - - def updateloop(self): - while True: - sleep(self.to) - self.feed = feedparser.parse(self.url) - for entry in self.feed.entries: - if not entry.link in self.oldnews: - try: - self.send(entry.title + " " + entry.link + " com: " + entry.comments) - except AttributeError: - self.send(entry.title + " " + entry.link) - self.oldnews.append(entry.link) - - def sendall(self): - while len(self.sendqueue) > 0: - sleep(1) - self.send(self.sendqueue.pop()) - - def send(self, string): - if len(string) < 450: - self.connection.privmsg(self.chan, string) - else: - space = 0 - for x in range(math.ceil(len(string)/400)): - oldspace = space - space = string.find(" ", (x+1)*400, (x+1)*400+50) - self.connection.privmsg(self.chan, string[oldspace:space]) - sleep(1) - - - def on_welcome(self, connection, event): - connection.join(self.chan) - -# def on_privmsg(self, connection, event): -# print event.source().split('!')[0], event.arguments() - -F = open("feeds", "r") -lines = F.readlines() -F.close() - -botarray = [] -for line in lines: - lineArray = line.split('|') - bot = TestBot(lineArray[1], lineArray[0]) - #bot.start() - botarray.append(bot) - -def startall(): - for bot in botarray: - bot.start() diff --git a/ircbot/feeds b/ircbot/feeds deleted file mode 100644 index 50fe0667..00000000 --- a/ircbot/feeds +++ /dev/null @@ -1,2 +0,0 @@ -HN|http://news.ycombinator.com/rss -Fefe|http://blog.fefe.de/rss.xml diff --git a/ledger/lib/balance b/ledger/lib/balance deleted file mode 100755 index deb50d15..00000000 --- a/ledger/lib/balance +++ /dev/null @@ -1,88 +0,0 @@ -#! /usr/bin/awk -f -# -# ledger balance calculator -# -# usage: -# [colorize=false] [scale=N] //ledger/lib/balance LEDGER_FILE... -# [colorize=false] [scale=N] //ledger/lib/balance < LEDGER_FILE -# -# description: -# The ledger balance calculator computes the balance of each account it -# encounters in the provided ledger files. -# -# example: -# //ledger/lib/balance < //cholerab/ledger-spec.markdown -# -# see also: -# //cholerab/ledger-spec.markdown (ledger file format) -# - -BEGIN { - colorize = ENVIRON["colorize"] == "" || ENVIRON["colorize"] == "true" - # TODO use bc for arbitrary precision arithmetic - scale = ENVIRON["scale"] -} - -/^[[:space:]]*[0-9]+-[0-9][0-9]-[0-9][0-9]/{ - tx($2, $3, $4, $5) -} - -END { - display_accounts() -} - -function tx (dst, src, amt, u) { - withdraw(src, amt, u) - deposit(dst, amt, u) -} - -function deposit (name, amt, u) { - accounts[name][u] += amt -} - -function withdraw (name, amt, u) { - accounts[name][u] -= amt -} - -function display_accounts() { - max_name_len = 0 - for (name in accounts) { - if (length(name) > max_name_len) { - max_name_len = length(name) - } - } - - max_balance_len = 0 - for (name in accounts) { - for (u in accounts[name]) { - n = length(int(accounts[name][u])) - if (n > max_balance_len) { - max_balance_len = n - } - } - } - if (scale > 0) { - max_balance_len += length(".") + scale - } - - for (name in accounts) { - for (u in accounts[name]) { - balance = accounts[name][u] - if (balance == 0) { - continue - } - - fmt = "NAME BALANCE UNIT\n" - - if (colorize) { - sub("BALANCE", "[" (balance < 0 ? 31 : 32) "m&", fmt) - } - - sub("NAME", "%-" max_name_len "s", fmt) - sub("BALANCE", "%" max_balance_len "." scale "f", fmt) - sub("UNIT", "%s", fmt) - - printf fmt, name, balance, u - } - } -} -- cgit v1.2.3 From 1c96d86d8affa665bce215170748504e1790ba82 Mon Sep 17 00:00:00 2001 From: makefu Date: Mon, 30 Dec 2013 03:46:06 +0100 Subject: fix fix_dircolors --- ship/src/arch_autoinstall | 34 +++++++++++++++++++++------------- ship/src/fix_dircolors | 4 +++- 2 files changed, 24 insertions(+), 14 deletions(-) diff --git a/ship/src/arch_autoinstall b/ship/src/arch_autoinstall index 8b2d50a9..baa9e2a0 100755 --- a/ship/src/arch_autoinstall +++ b/ship/src/arch_autoinstall @@ -8,18 +8,26 @@ shack_printer_ip=10.42.0.135 extra_pkg="xorg vim xfce4 feh chromium zsh sudo git flashplugin alsa-oss alsa-lib alsa-utils grub-bios slim ntp tor network-manager-applet networkmanager openssh cups cups-filters" info "writing stdout to /tmp/install.log" -exec | tee -a /tmp/install.log -if find /dev/disk/by-label/ -name ARCH_\* |xargs readlink |grep sda; then - if test -e /dev/sdb; then - #todo: retest or something - rootdisk='/dev/sdb' - else - warn "could not find rootdrive" - die "You're on your own, good luck!" - fi -else - rootdisk='/dev/sda' -fi +exec >> /tmp/install.log +tail -f /tmp/install.log& +defer 'pkill tail' + +installer_disk(){ + find /dev/disk/by-label/ -name ARCH_\* 2>/dev/null | xargs readlink +} + +find_rootdisk(){ + for i in sd vd hd;do + for j in a b;do + dsk="/dev/$i$j" + test "$(installer_disk)" == "$dsk" && continue + test -e "$dsk" && echo "$dsk" && return + done + done +} + +rootdisk=$(find_rootdisk) +test "$rootdisk" || die "cannot find your root disk" info "Your rootdisk is $rootdisk" sleep 3 @@ -56,7 +64,7 @@ sleep 1 info "installing!" info "Setting http proxy" -if http_head heidi.shack:3142 -W 5&>/dev/null; then +if http_head heidi.shack:3142 &>/dev/null; then http_proxy=heidi.shack:3142 info "Heidi is reachable, will use this box as proxy" else diff --git a/ship/src/fix_dircolors b/ship/src/fix_dircolors index 57229210..b2e2ffdb 100755 --- a/ship/src/fix_dircolors +++ b/ship/src/fix_dircolors @@ -1,5 +1,7 @@ #!/bin/sh -#@core +#@info +#@strict +#@include core exists dircolors || die "no dircolors in PATH, bailing out" info "fixing dircolors for $(id -un)" -- cgit v1.2.3 From cc538a66dffe40de6bc699363dae4d80ea1aa149 Mon Sep 17 00:00:00 2001 From: makefu Date: Mon, 30 Dec 2013 03:46:31 +0100 Subject: //infest/bootstrap.sh -> //ship/src --- infest/bootstrap.sh | 31 ------------------------------- ship/src/get_repo | 22 ++++++++++++++++++++++ 2 files changed, 22 insertions(+), 31 deletions(-) delete mode 100644 infest/bootstrap.sh create mode 100644 ship/src/get_repo diff --git a/infest/bootstrap.sh b/infest/bootstrap.sh deleted file mode 100644 index 5d85c769..00000000 --- a/infest/bootstrap.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/sh -set -euf -# Can be overwritten before install -KREBSDIR=${KREBSDIR:-/krebs} -[ "`id -u`" -eq "0" ] || echo "not running as root, stuff may not work. change KREBSDIR env to bootstrap somewhere else!"; - - -# brute force install git, krebs style -command -v git || \ - apt-get install -y git-core || \ - yum install git || \ - opkg install git || \ - ipkg install git || \ - pacman -Sy git || \ - { echo "please install git manually!"; exit 1;} || exit 1 - -[ -e "$KREBSDIR" ] || git clone --depth 1 https://github.com/krebscode/painload.git "$KREBSDIR" \ - || { echo "cloning failed :(" ; exit 1; } || exit 1 - -cd $KREBSDIR || { echo "cannot change into $KREBSDIR folder:(" ; exit 1; } || exit 1 - - - -PATH=$PATH:$KREBSDIR/punani/bin - -# install the rest -punani install make - - -echo "do 'make infest' in $KREBSDIR" -echo "have a nice day" diff --git a/ship/src/get_repo b/ship/src/get_repo new file mode 100644 index 00000000..5476e650 --- /dev/null +++ b/ship/src/get_repo @@ -0,0 +1,22 @@ +#!/bin/sh +#@info +#@strict +#@include punani +# Can be overwritten before install + +KREBSDIR=${KREBSDIR:-/krebs} +( is_root || ! test "$KREBSDIR" = "/krebs" ) || die "not running as root, stuff may not work. change KREBSDIR env to bootstrap somewhere else!"; + +info "installing git to clone repo" +punani install git + +[ -e "$KREBSDIR" ] && die "krebs dir already exists" + +git clone --depth 1 https://github.com/krebscode/painload.git "$KREBSDIR" || die "cloning failed :(" + +cd $KREBSDIR || die "cannot change into $KREBSDIR folder:(" ; + +info "installing make" +punani install make + +info "have a nice day" -- cgit v1.2.3