summaryrefslogtreecommitdiffstats
path: root/ship/src
diff options
context:
space:
mode:
Diffstat (limited to 'ship/src')
-rwxr-xr-xship/src/arch_autoinstall34
-rwxr-xr-xship/src/fix_dircolors4
-rw-r--r--ship/src/get_repo22
3 files changed, 46 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)"
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"