summaryrefslogtreecommitdiff
path: root/configs/releng/root-image/root
diff options
context:
space:
mode:
authorGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>2012-10-03 10:52:13 -0300
committerGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>2012-10-03 10:52:13 -0300
commitd552ad32ab7001766ec2cdf6d2c555e91267a7cb (patch)
tree9841efa524d0db2bde31b219c3d7370ec8a11944 /configs/releng/root-image/root
parentd5e1363cbb2409be82ec53cdf428ab752a4e2c79 (diff)
downloadarchiso32-d552ad32ab7001766ec2cdf6d2c555e91267a7cb.tar.xz
[configs/releng] Rework automated_script() from initscript hooks to /root/.zlogin
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
Diffstat (limited to 'configs/releng/root-image/root')
-rwxr-xr-xconfigs/releng/root-image/root/.automated_script.sh34
-rw-r--r--configs/releng/root-image/root/.zlogin1
2 files changed, 35 insertions, 0 deletions
diff --git a/configs/releng/root-image/root/.automated_script.sh b/configs/releng/root-image/root/.automated_script.sh
new file mode 100755
index 0000000..fb106da
--- /dev/null
+++ b/configs/releng/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/configs/releng/root-image/root/.zlogin b/configs/releng/root-image/root/.zlogin
new file mode 100644
index 0000000..f598e43
--- /dev/null
+++ b/configs/releng/root-image/root/.zlogin
@@ -0,0 +1 @@
+~/.automated_script.sh