-#!/bin/sh
+#!/bin/bash
# Filename: zsh-login
-# Purpose: run zsh with login option
+# Purpose: customized zsh login welcome screen for use at grml
# Authors: grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
# Bug-Reports: see http://grml.org/bugs/
# License: This file is licensed under the GPL v2.
-# Latest change: Sam Mär 17 15:16:04 CET 2007 [mika]
################################################################################
+. /etc/grml/sh-lib
+
[ -r /etc/grml_version ] && GRMLVERSION=$(cat /etc/grml_version) || GRMLVERSION='(no version information available)'
+PATH=$HOME/bin:/bin:/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin:/usr/games:/home/grml/bin
+CMDLINE=$(cat /proc/cmdline)
+[ -n "$distri" ] || distri="grml"
+
+# Activate unicode console if running within utf8 environment
+# Dirty hack to fix unicode issue on amd64...
+# unicode_start during bootprocess just does not work reliable :(
+NUM_CONSOLES=12
+if [ -r /etc/default/locale ] ; then
+ if grep -q "LANG=.*UTF" /etc/default/locale ; then
+ for vc in `seq 1 ${NUM_CONSOLES}` ; do
+ echo -n -e '\033%G' > /dev/tty${vc}
+ done
+ kbd_mode -u
+ dumpkeys | loadkeys --unicode > /dev/null
+ fi
+fi
+
+case "$CMDLINE" in
+ # allow customized startup via bootoption startup:
+ *startup=*)
+ script="$(getBootParam startup)"
+ if [ -x $(which $script) ] ; then
+ $script
+ fi
+ ;;
+ # turn on speakers for accessibility users:
+ *\ swspeak*|*blind*|*brltty*|*speakup*)
+ if [ $(which flite) ] ; then
+ flite -o play -t "Finished booting"
+ fi
+ ;;
+
+ # do nothing if booting with bootoption noquick:
+ *\ noquick*)
+ ;;
+ *) # by default run grml-quickconfig, but only if running as root
+ if [ "$(id -u)" = "0" ] ; then
+ which grml-quickconfig &>/dev/null && grml-quickconfig
+ fi
+esac
-echo "
+# just print out an empty line if bootoption "nowelcome" is present
+if grep -q nowelcome /proc/cmdline 2>/dev/null ; then
+ echo
+# ... otherwise allow customized release information
+elif [ -r /etc/release_info ] ; then
+ cat /etc/release_info
+else # ... or finally fall back to grml's default
+ # display version information depending on the version:
+ if grep -q -- '-rc[0-9]' /etc/grml_version 2>/dev/null ; then
+ echo
+ echo
+ echo 'NOTICE: This is a release candidate version!'
+ echo 'Please notice that this is not yet a stable release.'
+ echo 'See http://wiki.grml.org/doku.php?id=release_candidate for known issues.'
+ echo 'Please report any bugs you notice: bugs@grml.org'
+ echo
+ fi
-Welcome to grml ${GRMLVERSION}!
+ if grep -q 'grml-live-autobuild' /etc/grml_version 2>/dev/null ; then
+ echo
+ echo
+ echo 'NOTICE: This is a daily snapshot version!'
+ echo 'Please notice that this is not yet a stable release.'
+ echo 'See http://daily.grml.org/ for more details.'
+ echo 'Please report any bugs you notice: daily@grml.org'
+ echo
+ fi
-New to grml? Want to read some documentation?
+ echo "
+Welcome to ${GRMLVERSION}!
+
+New to ${distri}? Want to read some documentation?
Start via running 'grml-info'.
Get tips and hints via 'grml-tips \$KEYWORD'.
New to zsh? Run 'zsh-help'.
Happy hacking! http://grml.org/
"
-
-[ -r /etc/release_info ] && cat /etc/release_info
-
-CMDLINE=$(cat /proc/cmdline)
-case "$CMDLINE" in
- *swspeak*|*blind*|*brltty*|*speakup*)
- if [ -x /usr/bin/flite ] ; then
- aumix -w 90 -v 90 -p 90 -m 90
- flite -o play -t "Finished booting"
- fi
- ;;
- noquick|nocolor)
- # do nothing
- ;;
- *) # by default run grml-quickconfig, but only if running as root
- if [ $(id -u) = "0" ] ; then
- [ -x /usr/sbin/grml-quickconfig ] && /usr/sbin/grml-quickconfig
- fi
-esac
+fi
exec /bin/zsh -l