aboutsummaryrefslogtreecommitdiffstats
path: root/polystrap/polystrap-nb
diff options
context:
space:
mode:
Diffstat (limited to 'polystrap/polystrap-nb')
-rwxr-xr-xpolystrap/polystrap-nb58
1 files changed, 58 insertions, 0 deletions
diff --git a/polystrap/polystrap-nb b/polystrap/polystrap-nb
new file mode 100755
index 000000000..6791f9cf1
--- /dev/null
+++ b/polystrap/polystrap-nb
@@ -0,0 +1,58 @@
+#!/bin/sh -ex
+
+dir_depth() {
+ dir="$1"
+ while [ "$dir" != "." ] && [ "$dir" != "/" ]; do
+ dir=`dirname "$dir"`
+ echo -n ../
+ done
+}
+
+if [ "$#" -ne 1 ]; then
+ echo 1>&2 "you have to specify the new board name"
+ exit 1
+fi
+
+BOARD="$1"
+
+if [ -e "$BOARD" ]; then
+ echo 1>&2 "board already exists"
+ exit 1
+fi
+
+mkdir -p $BOARD/
+mkdir -p $BOARD/packages/
+mkdir -p $BOARD/root/etc/network/
+mkdir -p $BOARD/hooks/
+
+cp default/config $BOARD
+cp default/multistrap.conf $BOARD
+cp default/debconfseed.txt $BOARD
+
+for f in packages/base \
+ root/usr/sbin/policy-rc.d \
+ root/usr/bin/ldd \
+ root/etc/apt/apt.conf.d/99no-install-recommends \
+ root/etc/apt/apt.conf.d/99no-pdiffs \
+ root/etc/ld.so.conf \
+ root/etc/ssh/ssh_host_ecdsa_key \
+ root/etc/ssh/ssh_host_rsa_key \
+ root/etc/ssh/ssh_host_dsa_key \
+ root/sbin/ldconfig \
+ hooks/create_user \
+ hooks/serial_tty \
+ hooks/firstboot \
+ hooks/empty_password; do
+ mkdir -p `dirname $BOARD/$f`
+ ln -s `dir_depth $f`default/$f $BOARD/$f
+done
+
+cat << __END__ > $BOARD/root/etc/hosts
+127.0.0.1 localhost
+127.0.0.1 $BOARD
+__END__
+
+echo $BOARD > $BOARD/root/etc/hostname
+
+cp default/root/etc/fstab $BOARD/root/etc/
+cp default/root/etc/network/interfaces $BOARD/root/etc/network/