diff options
| -rwxr-xr-x | .graveyard/git/git-clone-into (renamed from git/git-clone-into) | 0 | ||||
| -rwxr-xr-x | .graveyard/git/git-eternal-move (renamed from git/git-eternal-move) | 0 | ||||
| -rw-r--r-- | cholerab/thesauron | 11 | ||||
| -rwxr-xr-x | git/gitolite-hooks/irc-announce | 104 | ||||
| -rw-r--r-- | retiolum/hosts/Discordius | 11 | ||||
| -rw-r--r-- | retiolum/hosts/euer | 12 | ||||
| -rw-r--r-- | retiolum/hosts/kaah | 10 | ||||
| -rw-r--r-- | retiolum/hosts/miefda | 11 | ||||
| -rw-r--r-- | retiolum/hosts/miefda0 | 10 | ||||
| -rw-r--r-- | retiolum/hosts/ohz | 10 | ||||
| -rw-r--r-- | retiolum/hosts/pante_miner | 10 | ||||
| -rw-r--r-- | retiolum/hosts/supernode | 13 | ||||
| -rwxr-xr-x | services/lib/filter | 54 | 
13 files changed, 179 insertions, 77 deletions
| diff --git a/git/git-clone-into b/.graveyard/git/git-clone-into index 67e820e6..67e820e6 100755 --- a/git/git-clone-into +++ b/.graveyard/git/git-clone-into diff --git a/git/git-eternal-move b/.graveyard/git/git-eternal-move index 50361e7b..50361e7b 100755 --- a/git/git-eternal-move +++ b/.graveyard/git/git-eternal-move diff --git a/cholerab/thesauron b/cholerab/thesauron index 36bea15c..e8ce358a 100644 --- a/cholerab/thesauron +++ b/cholerab/thesauron @@ -12,6 +12,12 @@ eigentlich adv.    die nicht der Fall ist.  Antonym: tatsaechlich +ghost n. +[de] +- Host im Darknet welcher evtl. irgendwie noch da ist (als dd image auf anderen +  Festplatten) aber wohl nie wieder kommen wird.  +Siehe: Wiederbelebung +  KD;RP abbr. (pronounciation: kah-derp)  [en]  - Short for Krebs Darknet / Retiolum Prefix. @@ -77,3 +83,8 @@ Verkrebsung n.  [de]  - Synonym fuer die Installation von Krebs (oder eine einzelnen Krebs     Komponente) auf einem beliebigem System. + +Wiederbelebung n. +[de] +- Ein ghost wird im Darknet wieder erreichbar +Siehe: ghost diff --git a/git/gitolite-hooks/irc-announce b/git/gitolite-hooks/irc-announce new file mode 100755 index 00000000..32ae8f26 --- /dev/null +++ b/git/gitolite-hooks/irc-announce @@ -0,0 +1,104 @@ +#! /bin/sh +set -euf + +config_file="$GL_ADMIN_BASE/conf/irc-announce.conf" +if test -f "$config_file"; then +  . "$config_file" +fi + +# XXX when changing IRC_CHANNEL or IRC_SERVER/_PORT, don't forget to update +#     any relevant gitolite LOCAL_CODE! +# CAVEAT we hope that IRC_NICK is unique +IRC_NICK="${IRC_NICK-gl$GL_TID}" +IRC_CHANNEL="${IRC_CHANNEL-#retiolum}" +IRC_SERVER="${IRC_SERVER-ire.retiolum}" +IRC_PORT="${IRC_PORT-6667}" + +# for privmsg_cat below +export IRC_CHANNEL + +# collect users that are mentioned in the gitolite configuration +interested_users="$(perl -e ' +  do "gl-conf"; +  print join(" ", keys%{ $one_repo{$ENV{"GL_REPO"}} }); +')" + +# CAVEAT beware of real TABs in grep pattern! +# CAVEAT there will never be more than 42 relevant log entries! +log="$(tail -n 42 "$GL_LOGFILE" | grep "^[^	]*	$GL_TID	")" +update_log="$(echo "$log" | grep "^[^	]*	$GL_TID	update")" + +# (debug output) +env | sed 's/^/env: /' +echo "$log" | sed 's/^/log: /' + +# see http://gitolite.com/gitolite/dev-notes.html#lff +reponame=$(echo "$update_log" | cut -f 4) +username=$(echo "$update_log" | cut -f 5) +ref_name=$(echo "$update_log" | cut -f 7 | sed 's|^refs/heads/||') +old_sha=$(echo "$update_log" | cut -f 8) +new_sha=$(echo "$update_log" | cut -f 9) + +# check if new branch is created +if test $old_sha = 0000000000000000000000000000000000000000; then +  # TODO what should we really show? +  old_sha=$new_sha^ +fi + +# +git_log="$(git log $old_sha..$new_sha --pretty=oneline --abbrev-commit)" +commit_count=$(echo "$git_log" | wc -l) + +# echo2 and cat2 are used output to both, stdout and stderr +# This is used to see what we send to the irc server. (debug output) +echo2() { echo "$*"; echo "$*" >&2; } +cat2() { tee /dev/stderr; } + +# privmsg_cat transforms stdin to a privmsg +privmsg_cat() { awk '{ print "PRIVMSG "ENVIRON["IRC_CHANNEL"]" :"$0 }'; } + +# +# +# +{ +  echo2 "USER $LOGNAME 0 * :$LOGNAME@$(hostname)" +  echo2 "NICK $IRC_NICK" + +  # wait for MODE message +  # CAVEAT 1 second was enough while testing...^_^ +  sleep 1 + +  echo2 "JOIN $IRC_CHANNEL" + +  echo "$interested_users" \ +    | tr ' ' '\n' \ +    | grep -v "^$GL_USER" \ +    | sed 's/$/: poke/' \ +    | privmsg_cat \ +    | cat2 + +  printf '[13%s] %s pushed %s new commit%s to 6%s %s\n' \ +      "$reponame" \ +      "$username" \ +      "$commit_count" \ +      "$(test $commit_count == 1 || echo s)" \ +      "$(hostname)" \ +      "$ref_name" \ +    | privmsg_cat \ +    | cat2 + +  echo "$git_log" \ +    | sed 's/^/14/;s/ / /' \ +    | privmsg_cat \ +    | cat2 + +  echo2 "PART $IRC_CHANNEL" + +  # TESTME does this sleep help to send all messages? +  sleep 5 + +  echo2 'QUIT :Gone to have lunch' + +  printf  +} \ +  | nc -c "$IRC_SERVER" "$IRC_PORT" diff --git a/retiolum/hosts/Discordius b/retiolum/hosts/Discordius deleted file mode 100644 index 561b28ca..00000000 --- a/retiolum/hosts/Discordius +++ /dev/null @@ -1,11 +0,0 @@ -Subnet = 10.243.144.246 -Subnet = 42:017a:4584:17e1:685a:3991:6533:067b - ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEAsOoWkyydyfW9ml7SBV8d+qXU8E1c4l0vEpdBnmOouZozo1bzzkH3 -bLn2DkZaOLCqVUC1twbeGi2a7tXHh4dLvkIcT38V3XbEwxHhMn7enpKr79GO/VFf -Lu8t5dLbmPFFTOEeC54ke8X4MdlMrUMuXiGspnl/vc1NBSJIVECl6zdqvZt/UTWA -vI7evk3F+Tf5dPATqSMdxE5506i2y/W6obwYwaXdPbyBsAQkgdTjfVUe2u0GKfld -/THprmZYTwlBEZ3YAf12OdfO1aRsDpbogpZs/rcnebScDj7myzh7FkLHdH9nIfxg -dfGxSBV7kRMwQmgfKjp/yETPjvRz0OMZoQIDAQAB ------END RSA PUBLIC KEY----- diff --git a/retiolum/hosts/euer b/retiolum/hosts/euer deleted file mode 100644 index d2240575..00000000 --- a/retiolum/hosts/euer +++ /dev/null @@ -1,12 +0,0 @@ -#Address = euer.krebsco.de -Address = 84.23.67.119 -Subnet = 42:974a:3ecf:3c49:06c0:4cd1:3c6f:59d9/128 -Subnet = 10.243.0.95/32 ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEArx2mZOPEfS8fvmQYSzWuMmNtfposJlctDfGVmhMVotaFIpIBcKuL -dHZHI8BAStaM++DuqKv/QBjk9jF6BRAdZqHn98LHXR+VRJmFvgelEFe0uPvIRMe2 -IMzi9Ly0f0f5L90ulZBMkudl56nBcEPuG5ge9RLDINIX5nDVh0oQzvrwWaIiVuy/ -oKDFLaoxa3SSsCXbhnbP7ow37+xzvaVCFolu++yLHvinkCc5g3IUkBGwr3kXKHQ7 -J8oDuPgsDZ7d1kMPfzMtGI9xcq8GFeCmJsMAt86XsWD8t9ogQpVUi8NGjR4cbQSI -TbE2iVBsdGLpxbGh833uy7fW5CCnK79DwwIDAQAB ------END RSA PUBLIC KEY----- diff --git a/retiolum/hosts/kaah b/retiolum/hosts/kaah deleted file mode 100644 index d8971c56..00000000 --- a/retiolum/hosts/kaah +++ /dev/null @@ -1,10 +0,0 @@ -#Address = kaah.ath.cx -Subnet = 42.220.181.17/32 ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEAtd9+R7NYs/5LmXoFakuoFzdO/8hy4MMeGjdDqbubKyJmIO/nvQWS -TQns55znLgPIapUtCijxphoQrcTB5LijVXFj/2uipqiOJHVmhA80NiQgYhrFG++x -9AQie2c04xqq+6Bptjs8vnQS6odLsBAiY1OJDpaEPZqzrpSMnYzEwPWqOAzzbVRd -SFDokIhm62xmDK0+M4H8l3zmMnInnxdHd0fMhBJr5lXXqdzXJ3zluU6fZyHysF4c -OnvFrGNrc3MPpgmzULVUUVg+Z4NeQYa5LuhXA9xia0R5d8ALCi34L4tAvCfSi1Lu -RSUiJHeWDvNzwIy9+hxofqqcJqA05kyGLQIDAQAB ------END RSA PUBLIC KEY----- diff --git a/retiolum/hosts/miefda b/retiolum/hosts/miefda deleted file mode 100644 index 1de261d9..00000000 --- a/retiolum/hosts/miefda +++ /dev/null @@ -1,11 +0,0 @@ -Subnet = 10.243.0.30 -Subnet = 42:59fd:1f99:d9b4:9fda:dd80:ff61:6497/128 - ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEAtWySxln5f1ibnguV9FPOGvw15Xn+9HG5qRDv8buu30YGdJ8yaq6L -LwjZjNJ+fbHx5lNkDcD+qZXGi/jBiIFPOnAlNZwcOSlBtlplLX6/2H2Ix3RTrhUm -Dh2s0VLGBPZ+tNO4TtR/RyYJVfVYN6BrKhAWGkffeo0bHFIpiAOQyr1bmbFUMs6q -0SzX987ey3STDVPdiTNHW7ogFS/18QwOcI4eYVoYK6jgPvutNYt5lpP5qRczgCpd -Ra+cZk9Lx1mbS1jEAhCYDmqmEqlA2p2ceTOHibjOMzOPkkzEcIwntP4iU+26E4aW -YS4snJDR9bMXk85rY5Huo9jq7z95T788WQIDAQAB ------END RSA PUBLIC KEY----- diff --git a/retiolum/hosts/miefda0 b/retiolum/hosts/miefda0 new file mode 100644 index 00000000..acf00124 --- /dev/null +++ b/retiolum/hosts/miefda0 @@ -0,0 +1,10 @@ +Subnet = 10.243.8.1 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAqrYc7LfSPjKpgnbfENU3oeAoFIRnG1CKHi0r4Tvy34anMBRHA4yY +olPC/IWiNoEadnCvlAEGtcFFh/xncNm+rW+BhO1WPLuo0wDe5fxJrkApuuhwP/lk +DMNrKtPOH6PV18yuQTtWgmiLo9gT15rRTDs8SaEf9eyTEV6zWVRDFDiFqwuY77iJ +GihKSlKGDYCUdT8TdaguUQ8akdAUhfXk0F33fAqTYwT25BDAXJdeldTLTb/5EADx +UMhnY0CsWgDYz9fpL5UNUDe3Gu53GghFS5RWvApasbzmlbrCwCF7MFDfc/yJFCrE +lF3Nm+GVqU6Uu6cNJ9VYHCu+uxk4PIU5GQIDAQAB +-----END RSA PUBLIC KEY----- +ECDSAPublicKey = DEwsTd8tdaQLx/o0EgIOl9l+d0MqDRLEVWnBT9imfRyuzXWatwgXotADc723HxhZ4NXlvuOu+er7PdWstif3nS9/qC diff --git a/retiolum/hosts/ohz b/retiolum/hosts/ohz deleted file mode 100644 index e452743b..00000000 --- a/retiolum/hosts/ohz +++ /dev/null @@ -1,10 +0,0 @@ -Subnet = 10.243.118.171/32 -Subnet = 42:a06d:7412:809a:b74a:8052:daba:c99f/128 ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEA7vZFyHtBC9WbXTKcJ2mXxTsZnZqGrDzP7PVtkaBQfTT6J2Qtct5i -0klA8yvXHUeVdt+hho7rISX4LJr+RDVdhU4ZgrcyJ3rR3moRGzLUV2VLroc1Mnbs -kkK1mowNk/jZpf6XyRpGL+NFMCZexmfjTdMaMLhzoRbA6w/ffPSSuDZdbG2F5bMk -BmF6biPcS9Z652ePXh9ViUUKBpLTHQvgK5/iZjI6ik/eit50jrjO6MapUVP/7qob -VeXE7Zos3UuHLiKegN68VbFQp4qu7jNH4jRun3Pm/Zd/OaGCREIDnfyIyauDNkaT -QUEL+h0zsM+t2rLT08Wo/sdNX16iMrs9FwIDAQAB ------END RSA PUBLIC KEY----- diff --git a/retiolum/hosts/pante_miner b/retiolum/hosts/pante_miner deleted file mode 100644 index c363681f..00000000 --- a/retiolum/hosts/pante_miner +++ /dev/null @@ -1,10 +0,0 @@ -Subnet = 10.243.26.211 -Subnet = 42:b6c2:e63c:d178:a71d:e36b:8ef6:abde ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEA65AhOXR3oOUcJi6qxnCWC7BduLyBth8SWsXhzKvyTLEqXBH8KcuL -H9UOrSLnwcueE2wMeHh5Rz4S3J+dwUJkGvD6eMXyJDiuIoaB8B7Iqjo1beS3gf9D -4nOv6YBjE0LsUwGKnZIR2E852MBcKUdZx4WdAYL8lB9ucFVBjKln8GxTZ1q4GEFx -XiCJddvCY9HnjlUBhCRghmRUYlgbhkNJhp0zclS8qXhqCa4cjrc586NY6dZDiIhY -AivuJayZEnrM/iEFobLcQnmq8n5o9iHCKbqRhemLeO2BAwn7SwSXnF1iTqbzK5df -zaA/G/6esPKyLfjJ7rgNBtUSfEC0Ro8yFQIDAQAB ------END RSA PUBLIC KEY----- diff --git a/retiolum/hosts/supernode b/retiolum/hosts/supernode deleted file mode 100644 index 354beba0..00000000 --- a/retiolum/hosts/supernode +++ /dev/null @@ -1,13 +0,0 @@ -Address = 46.252.21.5 -Subnet = 42:0:0:0:0:0:0:255/128 -Subnet = 10.243.0.1/32 -Subnet = 0.0.0.0/0 -Compression = 9 ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEAr3DlBmQxP9UTBCkohK8FCYSk2td4Ov5lQYvC3Adx04lEWHfp+0nP -sShYqqN9Aj3iCqj/DHx5jGuSqjyTmmFWIOMM9IwKMo2Oiz/PcBM56N6gzIHuR5wj -+0bV0NRhePD2Tqo3zsEly9Hxw7xmz8azm5l4GcyOtgdRV7R1T3j/jB/9Kv2sj2Y7 -1zhSedCxjt/+NosiZZGE2JhLjzMgsCZSroAIKCZ3X/DP81mTTRxibjol82/Qn61I -b7GbuuB7SwjtZ+9xjsExN1JX5+AFuw9a3AkYuKWLpP50YY16/OTPq7flmB/EtK+Z -rrESIYKtX7pJbLc8Ywi0hBL5oPm07q+0BQIDAQAB ------END RSA PUBLIC KEY----- diff --git a/services/lib/filter b/services/lib/filter new file mode 100755 index 00000000..f69a5b0d --- /dev/null +++ b/services/lib/filter @@ -0,0 +1,54 @@ +#! /bin/sh +# +# usage: +#   export PATH="//services/lib:$PATH" +#   cd services +#   ls | filter owner == $LOGNAME | filter hasnt mail +# +set -euf + +main() { +  case $# in +    2) op1 "$@";; +    3) op2 "$@";; +    *) echo 'You are made of stupid!' >&2; exit 23;; +  esac +} + +# op1 OP SCHEMA +op1() { +  case "$1" in +    has) +      xargs grep -H "^$2:" \ +        | cut -d: -f1  +      ;; +    hasnt) +      a=$(mktemp) +      b=$(mktemp) +      trap "rm $a $b; trap - EXIT INT QUIT" EXIT INT QUIT +      cat > $a +      cat $a | xargs grep -H "^$2:" | cut -d: -f1 > $b +      diff -u $b $a | sed -n '/^++/d;s/^+\(.*\)/\1/p' | grep . +  esac +} + +# op2 SCHEMA OP RHS +op2() { +  case "$2" in +    ==|is) +      xargs grep -H "^$1:$3$" \ +        | cut -d: -f1 +      ;; +    !=|isnt) +      xargs grep -H "^$1:" \ +        | grep -v ":$1:$3" \ +        | cut -d: -f1 +      ;; +    contains) +      xargs grep -H "^$1:.*$3.*$" \ +        | cut -d: -f1 +      ;; +  esac +} + +main "$@" | 
