# 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 Mai 27 15:12:24 CEST 2006 [mika]
+# Latest change: Mon Jun 04 22:49:37 CEST 2007 [mika]
################################################################################
-PN=$0
+PN="$0"
+
+if [ -r /etc/grml/script-functions ] ; then
+ . /etc/grml/script-functions
+ if [ -x /usr/bin/X ] ; then
+ check4progs vlock xlock sudo chpasswd dialog || { echo "Sorry, can't continue. Exiting.">&2 ; exit 1 }
+ else
+ check4progs vlock sudo chpasswd dialog || { echo "Sorry, can't continue. Exiting.">&2 ; exit 1 }
+ fi
+fi
if [ -r /etc/grml_version ] ; then
else
fi
welcome_screen() {
-dialog --stdout --title "$PN" --msgbox "Welcome to $PN!
+dialog --stdout --title "$PN" --yes-label Continue --no-label Quit --yesno "Welcome to $PN!
This script will lock virtual consoles when running
on console or lock X server when running X.
Report bugs, send wishes and feedback to the grml team:
http://www.grml.org/ - contact (at) grml.org
" 16 65
+
+ case $? in
+ (0) # everything ok
+ ;;
+ (1) echo "Cancel pressed." ; exit 1 ;;
+ (255) echo "ESC pressed." ; exit 255 ;;
+ esac
}
lockcons()
dialog --stdout --title "$PN" --yesno "Now lock X?" 0 0
retval=$?
case $retval in
- 0)
+ 0)
lockx
;;
esac
dialog --stdout --title "$PN" --yesno "Set password for user $USER?" 0 0
retval=$?
case $retval in
- 0)
+ 0)
while [ -z "$PASSWD" ] ; do
PASSWD=$(dialog --stdout --title "$PN" --passwordbox "Set password (hidden typing):" 0 0)
if [ -n "$PASSWD" ] ; then
esac
}
-if [[ $(tty) == /dev/tty* ]] ; then
- welcome_screen
- askpwd
- askvlock
-elif [ -n "$DISPLAY" ] ; then
- welcome_screen
- askpwd
- askxlock
+if ! isgrmlcd ; then
+ [[ $(tty) == /dev/tty* ]] && lockcons || lockx
+else
+ if [[ $(tty) == /dev/tty* ]] ; then
+ welcome_screen
+ askpwd
+ askvlock
+ elif [ -n "$DISPLAY" ] ; then
+ welcome_screen
+ askpwd
+ askxlock
+ fi
fi
## END OF FILE #################################################################