summaryrefslogtreecommitdiffstats
path: root/infest
diff options
context:
space:
mode:
Diffstat (limited to 'infest')
-rw-r--r--infest/Makefile2
-rw-r--r--infest/bootstrap.sh31
-rwxr-xr-xinfest/core/angstrom4
-rwxr-xr-xinfest/core/debian6
-rw-r--r--infest/deploy-ssh-keys9
-rw-r--r--infest/host-patch/beagleboard/Makefile9
-rw-r--r--infest/host-patch/beagleboard/profile.patch42
-rw-r--r--infest/profiles/README8
-rw-r--r--infest/profiles/makefu/aliases4
-rwxr-xr-xinfest/profiles/makefu/bootstrap.sh44
-rw-r--r--infest/profiles/makefu/dircolors194
-rwxr-xr-xinfest/profiles/makefu/vim/vimrc106
l---------infest/profiles/makefu/vimrc1
-rw-r--r--infest/profiles/makefu/zshrc44
-rw-r--r--infest/skel/etc/iptables/rules.v428
-rw-r--r--infest/skel/etc/motd.tail14
-rwxr-xr-xinfest/skel/etc/profile60
-rwxr-xr-xinfest/skel/etc/rc.local10
-rw-r--r--infest/skel/home/.ssh/authorized_keys6
-rw-r--r--infest/skel/home/.vimrc31
20 files changed, 653 insertions, 0 deletions
diff --git a/infest/Makefile b/infest/Makefile
new file mode 100644
index 00000000..b96e1d7c
--- /dev/null
+++ b/infest/Makefile
@@ -0,0 +1,2 @@
+%:
+ @echo 'whatever you try: you are made of stupid!' >&2
diff --git a/infest/bootstrap.sh b/infest/bootstrap.sh
new file mode 100644
index 00000000..5d85c769
--- /dev/null
+++ b/infest/bootstrap.sh
@@ -0,0 +1,31 @@
+#!/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/infest/core/angstrom b/infest/core/angstrom
new file mode 100755
index 00000000..dafb840f
--- /dev/null
+++ b/infest/core/angstrom
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+opkg install vim vim-syntax
+opkg install git
diff --git a/infest/core/debian b/infest/core/debian
new file mode 100755
index 00000000..fedd1ede
--- /dev/null
+++ b/infest/core/debian
@@ -0,0 +1,6 @@
+#!/bin/sh
+set -x
+[ `which git` ] || apt-get install --yes git-core
+[ `which tmux` ] || apt-get install --yes tmux
+[ `which screen` ] && apt-get remote --yes screen
+[ `which vim` ] || apt-get install --yes vim
diff --git a/infest/deploy-ssh-keys b/infest/deploy-ssh-keys
new file mode 100644
index 00000000..156e2795
--- /dev/null
+++ b/infest/deploy-ssh-keys
@@ -0,0 +1,9 @@
+#!/bin/sh
+cd $(dirname $0)
+U="${1:-$(id -u -n)}"
+H="$(grep "^$U" /etc/passwd | cut -d : -f 6)"
+echo "deploying for user $U to $H/.ssh"
+mkdir -p $H/.ssh
+cp -vr skel/home/.ssh/authorized_keys $H/.ssh
+chown $U $H
+chown -R $U $H/.ssh
diff --git a/infest/host-patch/beagleboard/Makefile b/infest/host-patch/beagleboard/Makefile
new file mode 100644
index 00000000..55952104
--- /dev/null
+++ b/infest/host-patch/beagleboard/Makefile
@@ -0,0 +1,9 @@
+.PHONY: all
+all: select-target
+
+patchfile:
+ diff /krebs/etc/profile /etc/profile > profile.patch || true
+
+patch:
+ cd /;\
+ patch -p0 < /krebs/host-patch/beagleboard/profile.patch
diff --git a/infest/host-patch/beagleboard/profile.patch b/infest/host-patch/beagleboard/profile.patch
new file mode 100644
index 00000000..d96173d7
--- /dev/null
+++ b/infest/host-patch/beagleboard/profile.patch
@@ -0,0 +1,42 @@
+--- /krebs/etc/profile Tue May 24 19:31:39 2011
++++ /etc/profile Tue May 24 20:15:17 2011
+@@ -11,26 +11,13 @@
+ alias la='ls -lA'
+ alias lAtr='ls -lAtr'
+ alias ll='ls -l'
+-alias ls='ls -h --color=auto --group-directories-first'
++alias ls='ls -h --color=auto'
+ alias vi='vim'
+ alias vim='vim -p'
+ alias view='vim -R'
+
+ set -o notify
+
+-if test -n "${BASH_VERSION-}" ; then
+- shopt -s checkhash
+- shopt -s histappend histreedit histverify
+- shopt -s no_empty_cmd_completion
+- complete -d cd
+-
+- function comp_sch() {
+- local cword="${COMP_WORDS[$COMP_CWORD]}"
+- COMPREPLY=( $(sch -l "$cword.*" ) )
+- }
+- complete -F comp_sch sch
+-fi
+-
+ export HISTSIZE='65536'
+ export HISTFILESIZE="$HISTSIZE"
+ export HISTCONTROL='ignoredups'
+@@ -43,10 +30,7 @@
+ PS1='\[\033[${PS1_COLOR}m\]$(PS1)\[\033[32m\]\w\[\033[39m\]${PSx-} ' # green \w
+ PS1='\[\033[32m\]\w\[\033[m\] ' # green \w
+
+-if test -n "${SSH_CLIENT-}" ; then
+- PS1='\[\033[35m\]\h'" $PS1" # prefix with magenta hostname
+- #TERM=xterm-256color xtermcontrol --bg \#292d29 --fg \#d0d0d0
+-fi
++PS1='\[\033[35m\]\h'" $PS1" # prefix with magenta hostname
+
+ export PATH="/krebs/bin:$PATH"
+
diff --git a/infest/profiles/README b/infest/profiles/README
new file mode 100644
index 00000000..79dde1a4
--- /dev/null
+++ b/infest/profiles/README
@@ -0,0 +1,8 @@
+Install different profiles for a user on the system
+
+UseCase:
+./deploy-profile bob
+ [write dotfiles of profile bob for logged-in users ~]
+
+./deploy-profile system
+ [write krebs additions to /etc and /root]
diff --git a/infest/profiles/makefu/aliases b/infest/profiles/makefu/aliases
new file mode 100644
index 00000000..bb01aad9
--- /dev/null
+++ b/infest/profiles/makefu/aliases
@@ -0,0 +1,4 @@
+alias s=sudo
+alias t=task
+alias ll="ls -al"
+alias psg="ps aux | grep"
diff --git a/infest/profiles/makefu/bootstrap.sh b/infest/profiles/makefu/bootstrap.sh
new file mode 100755
index 00000000..67122d0d
--- /dev/null
+++ b/infest/profiles/makefu/bootstrap.sh
@@ -0,0 +1,44 @@
+#!/bin/sh
+set -euf
+cd $(readlink -f $(dirname $0))
+echo "* Using punani to install git vim and zsh"
+../../../punani/bin/punani install git vim zsh
+
+# Backing up false positives
+if [ -e $HOME/.vim ] ; then
+ echo "* Backing up old vim folder"
+ mv -v $HOME/.vim $HOME/.vim.`date +%Y%M%d`
+fi
+
+# write dotfiles
+for dotfile in $(ls .);do
+ [ "x./${dotfile}" = "x$0" ] && continue
+ cp -fr --remove-destination $dotfile $HOME/.$dotfile
+done
+
+#install all the vim stuff with the help of vundle
+cd $HOME/.vim
+mkdir bundle
+mkdir backup
+echo "* Fetching vim-vundle"
+git clone https://github.com/gmarik/vundle.git bundle/vundle > /dev/null && echo "Vim Vundle deployed"
+echo "* Installing Vundle Bundles"
+vim "+:BundleInstall" "+:qall"
+cd -
+
+
+if which zsh &>/dev/null ; then
+ if [ "x$SHELL" != "x`which zsh`" ] ;then
+ echo "* setting zsh as new shell,please enter your user password"
+ chsh -s `which zsh`
+ else
+ echo "* zsh already set as default shell"
+ fi
+ if [ ! -d ~/.oh-my-zsh ] ; then
+ git clone https://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh > /dev/null && echo "oh-my-zsh deployed"
+ else
+ echo "* oh-my-zsh already installed"
+ fi
+else
+ echo "* cannot find zsh :("
+fi
diff --git a/infest/profiles/makefu/dircolors b/infest/profiles/makefu/dircolors
new file mode 100644
index 00000000..1de435ac
--- /dev/null
+++ b/infest/profiles/makefu/dircolors
@@ -0,0 +1,194 @@
+# Configuration file for dircolors, a utility to help you set the
+# LS_COLORS environment variable used by GNU ls with the --color option.
+# Copyright (C) 1996, 1999-2010 Free Software Foundation, Inc.
+# Copying and distribution of this file, with or without modification,
+# are permitted provided the copyright notice and this notice are preserved.
+# The keywords COLOR, OPTIONS, and EIGHTBIT (honored by the
+# slackware version of dircolors) are recognized but ignored.
+# Below, there should be one TERM entry for each termtype that is colorizable
+TERM Eterm
+TERM ansi
+TERM color-xterm
+TERM con132x25
+TERM con132x30
+TERM con132x43
+TERM con132x60
+TERM con80x25
+TERM con80x28
+TERM con80x30
+TERM con80x43
+TERM con80x50
+TERM con80x60
+TERM cons25
+TERM console
+TERM cygwin
+TERM dtterm
+TERM eterm-color
+TERM gnome
+TERM gnome-256color
+TERM jfbterm
+TERM konsole
+TERM kterm
+TERM linux
+TERM linux-c
+TERM mach-color
+TERM mlterm
+TERM putty
+TERM rxvt
+TERM rxvt-256color
+TERM rxvt-cygwin
+TERM rxvt-cygwin-native
+TERM rxvt-unicode
+TERM rxvt-unicode256
+TERM screen
+TERM screen-256color
+TERM screen-256color-bce
+TERM screen-bce
+TERM screen-w
+TERM screen.linux
+TERM vt100
+TERM xterm
+TERM xterm-16color
+TERM xterm-256color
+TERM xterm-88color
+TERM xterm-color
+TERM xterm-debian
+# Below are the color init strings for the basic file types. A color init
+# string consists of one or more of the following numeric codes:
+# Attribute codes:
+# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed
+# Text color codes:
+# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
+# Background color codes:
+# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
+#NORMAL 00 # no color code at all
+#FILE 00 # regular file: use no color at all
+RESET 0 # reset to "normal" color
+DIR 01;36 # directory
+LINK 01;36 # symbolic link. (If you set this to 'target' instead of a
+ # numerical value, the color is as for the file pointed to.)
+MULTIHARDLINK 00 # regular file with more than one link
+FIFO 40;33 # pipe
+SOCK 01;35 # socket
+DOOR 01;35 # door
+BLK 40;33;01 # block device driver
+CHR 40;33;01 # character device driver
+ORPHAN 40;31;01 # symlink to nonexistent file, or non-stat'able file
+SETUID 37;41 # file that is setuid (u+s)
+SETGID 30;43 # file that is setgid (g+s)
+CAPABILITY 30;41 # file with capability
+STICKY_OTHER_WRITABLE 30;42 # dir that is sticky and other-writable (+t,o+w)
+OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky
+STICKY 37;44 # dir with the sticky bit set (+t) and not other-writable
+# This is for files with execute permission:
+EXEC 01;32
+# List any file extensions like '.gz' or '.tar' that you would like ls
+# to colorize below. Put the extension, a space, and the color init string.
+# (and any comments you want to add after a '#')
+# If you use DOS-style suffixes, you may want to uncomment the following:
+#.cmd 01;32 # executables (bright green)
+#.exe 01;32
+#.com 01;32
+#.btm 01;32
+#.bat 01;32
+# Or if you want to colorize scripts even if they do not have the
+# executable bit actually set.
+#.sh 01;32
+#.csh 01;32
+ # archives or compressed (bright red)
+.tar 01;31
+.tgz 01;31
+.arj 01;31
+.taz 01;31
+.lzh 01;31
+.lzma 01;31
+.tlz 01;31
+.txz 01;31
+.zip 01;31
+.z 01;31
+.Z 01;31
+.dz 01;31
+.gz 01;31
+.lz 01;31
+.xz 01;31
+.bz2 01;31
+.bz 01;31
+.tbz 01;31
+.tbz2 01;31
+.tz 01;31
+.deb 01;31
+.rpm 01;31
+.jar 01;31
+.rar 01;31
+.ace 01;31
+.zoo 01;31
+.cpio 01;31
+.7z 01;31
+.rz 01;31
+# image formats
+.jpg 01;35
+.jpeg 01;35
+.gif 01;35
+.bmp 01;35
+.pbm 01;35
+.pgm 01;35
+.ppm 01;35
+.tga 01;35
+.xbm 01;35
+.xpm 01;35
+.tif 01;35
+.tiff 01;35
+.png 01;35
+.svg 01;35
+.svgz 01;35
+.mng 01;35
+.pcx 01;35
+.mov 01;35
+.mpg 01;35
+.mpeg 01;35
+.m2v 01;35
+.mkv 01;35
+.ogm 01;35
+.mp4 01;35
+.m4v 01;35
+.mp4v 01;35
+.vob 01;35
+.qt 01;35
+.nuv 01;35
+.wmv 01;35
+.asf 01;35
+.rm 01;35
+.rmvb 01;35
+.flc 01;35
+.avi 01;35
+.fli 01;35
+.flv 01;35
+.gl 01;35
+.dl 01;35
+.xcf 01;35
+.xwd 01;35
+.yuv 01;35
+.cgm 01;35
+.emf 01;35
+# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
+.axv 01;35
+.anx 01;35
+.ogv 01;35
+.ogx 01;35
+# audio formats
+.aac 00;36
+.au 00;36
+.flac 00;36
+.mid 00;36
+.midi 00;36
+.mka 00;36
+.mp3 00;36
+.mpc 00;36
+.ogg 00;36
+.ra 00;36
+.wav 00;36
+# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
+.axa 00;36
+.oga 00;36
+.spx 00;36
+.xspf 00;36
diff --git a/infest/profiles/makefu/vim/vimrc b/infest/profiles/makefu/vim/vimrc
new file mode 100755
index 00000000..123e15a5
--- /dev/null
+++ b/infest/profiles/makefu/vim/vimrc
@@ -0,0 +1,106 @@
+" not so original .vimrc
+" 2011-11-29
+"
+" Vundle
+set nocompatible
+filetype off
+set rtp+=~/.vim/bundle/vundle
+call vundle#rc()
+
+Bundle 'gmarik/vundle'
+Bundle 'SudoEdit.vim'
+Bundle 'snipMate'
+Bundle 'tpope/vim-fugitive'
+Bundle 'vim-scripts-iptables'
+Bundle 'pyflakes'
+
+filetype plugin indent on
+
+"
+set vb
+let g:snips_author = 'Bob Ross <root@syntax-fehler.de>'
+let g:makefu_author = 'makefu'
+
+""" just for tex
+
+let g:compiler_gcc_ignore_unmatched_lines=1 " ignore for gcc and SCONS
+" compiler gcc
+set foldenable
+set foldmethod=syntax
+" shows matching braches etc
+set showmatch
+set matchtime=3
+" highlight search
+set hlsearch
+
+let g:load_doxygen_syntax=1
+
+" we do not want any filename~ files
+" set noswapfile
+" set nobackup
+set backupdir=~/.vim/backup
+set directory=~/.vim/backup
+
+" turn off F1
+"
+inoremap <F1> <ESC>
+nnoremap <F1> <ESC>
+vnoremap <F1> <ESC>
+
+" save on focus lost
+au FocusLost * :wa
+
+"let TlistAddFilesRecursive = /home/makefu/repos/P2P_MDS " *.cpp *.hpp
+let Tlist_Exit_OnlyWindow =1 " exit if other window is closed
+nnoremap <silent> <F8> :TlistToggle<CR>
+set spelllang=en
+" use set spell to enable spelling
+
+" press ttt to rot16 the whole file
+nmap ttt ggg?G
+
+colorscheme darkblue
+set background=dark
+
+set number
+set mouse=
+set textwidth=9001
+set ignorecase
+set incsearch
+set wildignore=*.o,*.obj,*.bak,*.exe,*.os
+set shiftwidth=2
+
+syntax on
+"For tabstop = 2 spaces
+
+set tabstop=2
+set et
+set sw=2
+set smarttab
+set autoindent
+" end tabstop
+
+
+set backspace=indent,eol,start
+set nocp
+
+
+" python stuff
+" run python code with f5
+"autocmd FileType python map <F5> :w<CR>:!python "%"<CR>
+" pydiction
+"let g:pydiction_location = '~/.vim/plugin/pydiction/complete-dict'
+
+" automatically open and close the popup menu / preview window
+au CursorMovedI,InsertLeave * if pumvisible() == 0|silent! pclose|endif
+set completeopt=menuone,menu,longest,preview
+
+" somewhere before nowrap is set
+set wrap
+
+autocmd BufRead *.json set filetype=json
+autocmd FileType json set equalprg=json_reformat
+autocmd FileType json set makeprg=jsonval\ %
+autocmd FileType json set errorformat=%E%f:\ %m\ at\ line\ %l,%-G%.%#
+
+au BufNewFile,BufRead *.mustache set syntax=mustache
diff --git a/infest/profiles/makefu/vimrc b/infest/profiles/makefu/vimrc
new file mode 120000
index 00000000..3f2626c5
--- /dev/null
+++ b/infest/profiles/makefu/vimrc
@@ -0,0 +1 @@
+.vim/vimrc \ No newline at end of file
diff --git a/infest/profiles/makefu/zshrc b/infest/profiles/makefu/zshrc
new file mode 100644
index 00000000..db83c42a
--- /dev/null
+++ b/infest/profiles/makefu/zshrc
@@ -0,0 +1,44 @@
+
+# Path to your oh-my-zsh configuration.
+export ZSH=$HOME/.oh-my-zsh
+
+# Look in ~/.oh-my-zsh/themes/
+export ZSH_THEME="gallifrey"
+
+# Comment this out to disable weekly auto-update checks
+export DISABLE_AUTO_UPDATE="true"
+
+# export DISABLE_LS_COLORS="true"
+
+plugins=(git ssh-agent)
+source $ZSH/oh-my-zsh.sh
+test -e $HOME/.aliases && source $HOME/.aliases
+
+# Customize to your needs...
+export PATH=$PATH:/sbin:/usr/sbin:/krebs/bin:$HOME/bin
+HISTFILE=~/.histfile
+HISTSIZE=900001
+SAVEHIST=900001
+
+export EDITOR=vim
+
+export JAVA_HOME=/opt/java/jre
+
+GREP_COLOR="1;33"
+alias grep='grep --color=auto'
+
+export MANPATH=$MANPATH:$HOME/man
+
+if [ -f "$HOME/.dircolors" ] ; then
+ eval `dircolors -b "$HOME/.dircolors"`
+ export LS_COLORS
+fi
+
+which fortune >/dev/null && fortune -a
+which task >/dev/null && task
+echo "--"
+test -r ~/TODO && cat ~/TODO
+
+test -r ~/Dropbox/shared_shell && source ~/Dropbox/shared_shell
+setopt menu_complete
+unsetopt correct_all
diff --git a/infest/skel/etc/iptables/rules.v4 b/infest/skel/etc/iptables/rules.v4
new file mode 100644
index 00000000..cda4b903
--- /dev/null
+++ b/infest/skel/etc/iptables/rules.v4
@@ -0,0 +1,28 @@
+# Sane IPTABLES Rules, retiolum-permissive, world-enforcing
+*nat
+:PREROUTING ACCEPT [262534:163260473]
+:POSTROUTING ACCEPT [5060049:305386323]
+:OUTPUT ACCEPT [5060049:305386323]
+COMMIT
+
+*mangle
+:PREROUTING ACCEPT [41358433:26228470872]
+:INPUT ACCEPT [41358389:26228463060]
+:FORWARD ACCEPT [0:0]
+:OUTPUT ACCEPT [37015162:23438396300]
+:POSTROUTING ACCEPT [37015162:23438396300]
+COMMIT
+
+*filter
+:INPUT DROP [9:3336]
+:FORWARD DROP [0:0]
+:OUTPUT ACCEPT [821:311282]
+-A INPUT -i lo -j ACCEPT
+-A INPUT -i retiolum -j ACCEPT
+-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
+-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
+-A INPUT -p tcp -m tcp --dport 25 -j ACCEPT
+-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
+-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
+-A INPUT -p tcp -m tcp --dport 655 -j ACCEPT
+COMMIT
diff --git a/infest/skel/etc/motd.tail b/infest/skel/etc/motd.tail
new file mode 100644
index 00000000..0b5dfcff
--- /dev/null
+++ b/infest/skel/etc/motd.tail
@@ -0,0 +1,14 @@
+KREBS PAINLOAD (MORE COBRA)
+            
+                         
+                         
+                    
+                         
+                     
+                           
+               
+                       
+             
+                  
+                  
+                       
diff --git a/infest/skel/etc/profile b/infest/skel/etc/profile
new file mode 100755
index 00000000..6c0dc852
--- /dev/null
+++ b/infest/skel/etc/profile
@@ -0,0 +1,60 @@
+#! /bin/sh
+
+export EDITOR=vi
+
+# from original debian /etc/profile
+PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
+set -u
+alias bc='bc -q'
+alias df='df -h'
+alias du='du -h'
+alias grep='grep --color=auto'
+alias ps?="ps ax | head -n 1;ps ax | fgrep -v ' grep --color=auto ' | grep"
+alias la='ls -lA'
+alias lAtr='ls -lAtr'
+alias ll='ls -l'
+alias ls='ls -h --color=auto --group-directories-first'
+alias vi='vim'
+alias vim='vim -p'
+alias view='vim -R'
+
+set -o notify
+
+if test -n "${BASH_VERSION-}" ; then
+ shopt -s checkhash
+ shopt -s histappend histreedit histverify
+ shopt -s no_empty_cmd_completion
+ complete -d cd
+
+ function comp_sch() {
+ local cword="${COMP_WORDS[$COMP_CWORD]}"
+ COMPREPLY=( $(sch -l "$cword.*" ) )
+ }
+ complete -F comp_sch sch
+fi
+
+export HISTSIZE='65536'
+export HISTFILESIZE="$HISTSIZE"
+export HISTCONTROL='ignoredups'
+
+case "${TERM-dumb}" in
+ linux) PS1_COLOR=34 ;;
+ rxvt-unicode) PS1_COLOR=30 ;;
+ *) PS1_COLOR=39 ;;
+esac
+PS1='\[\033[${PS1_COLOR}m\]$(PS1)\[\033[32m\]\w\[\033[39m\]${PSx-} ' # green \w
+PS1='\[\033[32m\]\w\[\033[m\] ' # green \w
+
+#if test -n "${SSH_CLIENT-}" ; then
+ PS1='\[\033[35m\]\h'" $PS1" # prefix with magenta hostname
+ #TERM=xterm-256color xtermcontrol --bg \#292d29 --fg \#d0d0d0
+#fi
+
+export PATH="/krebs/bin:$PATH"
+
+echo '--' >&2
+test -e ~/TODO && cat ~/TODO >&2
+
+set +u
+
+cd /krebs
diff --git a/infest/skel/etc/rc.local b/infest/skel/etc/rc.local
new file mode 100755
index 00000000..7cf99aeb
--- /dev/null
+++ b/infest/skel/etc/rc.local
@@ -0,0 +1,10 @@
+#! /bin/sh -e
+
+morse() {
+ /krebs/util/morse/morse.sh "$@"
+}
+
+morse -l 42 -f 4000 `hostname`
+morse -l 42 -f 2000 BEREIT
+
+exit 0
diff --git a/infest/skel/home/.ssh/authorized_keys b/infest/skel/home/.ssh/authorized_keys
new file mode 100644
index 00000000..aa7fcc08
--- /dev/null
+++ b/infest/skel/home/.ssh/authorized_keys
@@ -0,0 +1,6 @@
+ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCl3RTOHd5DLiVeUbUr/GSiKoRWknXQnbkIf+uNiFO+XxiqZVojPlumQUVhasY8UzDzj9tSDruUKXpjut50FhIO5UFAgsBeMJyoZbgY/+R+QKU00Q19+IiUtxeFol/9dCO+F4o937MC0OpAC10LbOXN/9SYIXueYk3pJxIycXwUqhYmyEqtDdVh9Rx32LBVqlBoXRHpNGPLiswV2qNe0b5p919IGcslzf1XoUzfE3a3yjk/XbWh/59xnl4V7Oe7+iQheFxOT6rFA30WYwEygs5As//ZYtxvnn0gA02gOnXJsNjOW9irlxOUeP7IOU6Ye3WRKFRR0+7PS+w8IJLag2xb makefu@servarch
+ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3SFNYGRiH0oz44G51MWx+o4cC3Fj+ez5DKO5jjtEFZ0ik8XQ5CrVj7a87WbwABA/XRdIt+3WHoInsRmuDfgcIMYgWC567v2GdOxXg2danEIAhhsOY7KiCBLCfZz7lrFO7F6eJH1RCkwrXY+59hkA+i3LNtLmZazJIb2AGwFF8Xf+b/eWmLhqjCYON+OpvqftbCm9CwhLYOUcVoR94gFAzlMYSCHR7RuBBdLV6zrkmEwFEsKghBI7fcdhwfQxuV5UGVCD58KkTQTgK/Mf2tmAg/muBM+P8s2O6wVbtixmIiiDxfc99C3QD1MYVNHqWgV1Rz9JKfmyuVvFqn7TRuuT1 tv@also
+ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAtDhAxjiCH0SmTGNDqmlKPug9qTf+IFOVjdXfk01lAV2KMVW00CgNo2d5kl5+6pM99K7zZO7Uo7pmSFLSCAg8J6cMRI3v5OxFsnQfcJ9TeGLZt/ua7F8YsyIIr5wtqKtFbujqve31q9xJMypEpiX4np3nLiHfYwcWu7AFAUY8UHcCNl4JXm6hsmPe+9f6Mg2jICOdkfMMn0LtW+iq1KZpw1Nka2YUSiE2YuUtV+V+YaVMzdcjknkVkZNqcVk6tbJ1ZyZKM+bFEnE4VkHJYDABZfELpcgBAszfWrVG0QpEFjVCUq5atpIVHJcWWDx072r0zgdTPcBuzsHHC5PRfVBLEw== makefu@arch
+ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAp83zynhIueJJsWlSEykVSBrrgBFKq38+vT8bRfa+csqyjZBl2SQFuCPo+Qbh49mwchpZRshBa9jQEIGqmXxv/PYdfBFQuOFgyUq9ZcTZUXqeynicg/SyOYFW86iiqYralIAkuGPfQ4howLPVyjTZtWeEeeEttom6p6LMY5Aumjz2em0FG0n9rRFY2fBzrdYAgk9C0N6ojCs/Gzknk9SGntA96MDqHJ1HXWFMfmwOLCnxtE5TY30MqSmkrJb7Fsejwjoqoe9Y/mCaR0LpG2cStC1+37GbHJNH0caCMaQCX8qdfgMVbWTVeFWtV6aWOaRgwLrPDYn4cHWQJqTfhtPrNQ== death@Uriel
+ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQB2G4SpJ/UYxmTidUl8ytT6bdNGTdYvv2nmhQyaFBroNit3xdDOVxKvaMEGDuR6ncRugw5BBvrv6iPMTCFluHJxjuh6lk3JrrsJ8CT22ZOGsA593hRoXZOCrs5SxcFkw9EBiCuaHHlWiS9+Dffr6/zpkhH3djTz05uGnDrvtKuV/Zmu5XHAurNn+X3C5S/zk/y0n8o62iSQHVKeNBGO2WYhVce9d65Ucek5dOvXZYVKSe1LeAOKyeHWv+VWP8QlObmfVrQ5l1Pou6WV6Wpo85KBa/mmBJIygC9rrG+gx/1LX7JxStbCu/WoUlUwkSaP2qxWaET9KaSO8+2Wrg5i34ax== samuel@localhost
+ssh-dss AAAAB3NzaC1kc3MAAACBAJE2uV+hM74kPr6IwIp5sDKBmbwDnugLxail3MeVCSPtoLLJ9fRj/HBissAubX2/20d3jPkV5DjipWJGZCxMuNl9pEDrlxL/jOp1HERoq0hj7XdIj/ka+wmLKWU9mLu3gX77M/QzrcpDNBrhYX8FePBHgMZr/gXap2raDZBAE8CjAAAAFQD4QaW+3N07Mvfh1yC/WVsEZ+6nUwAAAIAiQvhzUWUNon5e+UZlvGBlFV8B0isLDf87qxUZHRY0siSSXIlekEtAB0i4aXEVtBOJwsDdJjrCygoBtKT6VMsWCrXnAqvVAd3oVl9YeZ7R4zDPpWTYhERagTFla8yBEOTvEdHZ6Lfn72RDg0IDSnofdMzs6XwlD7c6uo6dRZ7+zgAAAIEAhakAD84QgbPRCwvRBVs4HAbnWps8GTQQx7WN2FC8Twv+Gkltha2RZtD7Artcm7d79kofiGax2NQrrzFKY1/gsBuIe15XhNiLpVqdSj3aK/LRRoNNOOCWvc6uQWXEN7gOVE8JTXyi+RDvzeP4Fn9jp+Ub6OGvWvsaBb9Z6IyfTHo= momo
diff --git a/infest/skel/home/.vimrc b/infest/skel/home/.vimrc
new file mode 100644
index 00000000..22bbf99d
--- /dev/null
+++ b/infest/skel/home/.vimrc
@@ -0,0 +1,31 @@
+" do the right thing all the time
+"
+" Colors and stuff
+syntax on
+set background=dark
+
+
+
+
+" searching
+set hlsearch
+set showmatch
+set ignorecase
+set incsearch
+set wildignore=*.o,*.obj,*.bak,*.pyc
+
+" tabbing
+set tabstop=2
+set et
+set sw=2
+set smarttab
+set autoindent
+
+" vim magic
+filetype plugin indent on
+
+
+" fuck you, help command
+inoremap <F1> <ESC>
+nnoremap <F1> <ESC>
+vnoremap <F1> <ESC>