diff options
author | Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> | 2012-10-03 10:52:13 -0300 |
---|---|---|
committer | Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> | 2012-10-03 10:52:13 -0300 |
commit | d552ad32ab7001766ec2cdf6d2c555e91267a7cb (patch) | |
tree | 9841efa524d0db2bde31b219c3d7370ec8a11944 /configs/releng | |
parent | d5e1363cbb2409be82ec53cdf428ab752a4e2c79 (diff) | |
download | archiso32-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')
-rwxr-xr-x | configs/releng/root-image/root/.automated_script.sh | 34 | ||||
-rw-r--r-- | configs/releng/root-image/root/.zlogin | 1 |
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 |