summaryrefslogtreecommitdiffstats
path: root/filehooker/root-image/root
diff options
context:
space:
mode:
authormakefu <github@syntax-fehler.de>2014-03-17 07:51:03 +0100
committermakefu <github@syntax-fehler.de>2014-03-17 07:51:03 +0100
commit1fa15dd59e7dc58f4331305b9f401d3aabfa53cd (patch)
tree6e4ee2f1096652276b86f4b9334fa06aafdb38bf /filehooker/root-image/root
parent536bfe6d1e3cce27b6a84d4c19f7feafac690b53 (diff)
filehooker: initial commit
using archiso magic scripts
Diffstat (limited to 'filehooker/root-image/root')
-rwxr-xr-xfilehooker/root-image/root/.automated_script.sh34
-rw-r--r--filehooker/root-image/root/.zlogin1
-rwxr-xr-xfilehooker/root-image/root/customize_root_image.sh36
3 files changed, 71 insertions, 0 deletions
diff --git a/filehooker/root-image/root/.automated_script.sh b/filehooker/root-image/root/.automated_script.sh
new file mode 100755
index 00000000..fb106dae
--- /dev/null
+++ b/filehooker/root-image/root/.automated_script.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+script_cmdline ()
+{
+ local param
+ for param in $(< /proc/cmdline); do
+ case "${param}" in
+ script=*) echo "${param##*=}" ; return 0 ;;
+ esac
+ done
+}
+
+automated_script ()
+{
+ local script rt
+ script="$(script_cmdline)"
+ if [[ -n "${script}" && ! -x /tmp/startup_script ]]; then
+ if [[ "${script}" =~ ^http:// || "${script}" =~ ^ftp:// ]]; then
+ wget "${script}" --retry-connrefused -q -O /tmp/startup_script >/dev/null
+ rt=$?
+ else
+ cp "${script}" /tmp/startup_script
+ rt=$?
+ fi
+ if [[ ${rt} -eq 0 ]]; then
+ chmod +x /tmp/startup_script
+ /tmp/startup_script
+ fi
+ fi
+}
+
+if [[ $(tty) == "/dev/tty1" ]]; then
+ automated_script
+fi
diff --git a/filehooker/root-image/root/.zlogin b/filehooker/root-image/root/.zlogin
new file mode 100644
index 00000000..f598e43e
--- /dev/null
+++ b/filehooker/root-image/root/.zlogin
@@ -0,0 +1 @@
+~/.automated_script.sh
diff --git a/filehooker/root-image/root/customize_root_image.sh b/filehooker/root-image/root/customize_root_image.sh
new file mode 100755
index 00000000..4aeb63cf
--- /dev/null
+++ b/filehooker/root-image/root/customize_root_image.sh
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+set -e -u -f -x
+
+sed -i 's/#\(en_US\.UTF-8\)/\1/' /etc/locale.gen
+locale-gen
+
+ln -sf /usr/share/zoneinfo/UTC /etc/localtime
+
+usermod -s /usr/bin/zsh root
+cp -aT /etc/skel/ /root/
+
+useradd -m -p "" -g users -G "adm,audio,floppy,log,network,rfkill,scanner,storage,optical,power,wheel" -s /usr/bin/zsh pimp || :
+
+mkdir -p /home/pimp/.ssh/
+cp /krebs/etc/authorized_keys /home/pimp/.ssh/
+chown pimp -R /home/pimp/.ssh/
+chmod 700 -R /home/pimp/.ssh/
+chown -R root:root /etc /root /krebs /usr/bin
+chmod 750 /etc/sudoers.d
+chmod 440 /etc/sudoers.d/g_wheel
+
+sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist
+sed -i 's/#\(Storage=\)auto/\1volatile/' /etc/systemd/journald.conf
+
+test -e /usr/bin/ncdc || \
+ curl http://dev.yorhel.nl/download/ncdc-linux-x86_64-1.19.tar.gz | \
+ tar xz -C "/usr/bin"
+
+systemctl enable multi-user.target \
+ pacman-init.service \
+ choose-mirror.service \
+ tor-announce.service \
+ filehooker-hostname.service \
+ sshd.service \
+ tor.service