freebsd-src/release/miscfuncs.sh
Jordan K. Hubbard 8f00e74801 Eliminate the use of cpio in extraction. The stupid thing whines too much,
and it doesn't support --unlink.  I think it's time to nuke cpio completely
out of the installation process, unless someone can think of a really good
reason to keep it (and don't say multiple volume extraction since we a) don't
use it anywhere anyway, and b) tar supports that too, now).
1994-11-17 11:53:14 +00:00

87 lines
2.0 KiB
Bash

#!/stand/sh
#
# miscfuncs - miscellaneous functions for the other distribution scripts.
#
# Written: November 15th, 1994
# Copyright (C) 1994 by Jordan K. Hubbard
#
# Permission to copy or use this software for any purpose is granted
# provided that this message stay intact, and at this location (e.g. no
# putting your name on top after doing something trivial like reindenting
# it, just to make it look like you wrote it!).
#
# $Id: miscfuncs.sh,v 1.1 1994/11/16 07:51:43 jkh Exp $
if [ "$_MISCFUNCS_SH_LOADED_" = "yes" ]; then
return 0
else
_MISCFUNCS_SH_LOADED_=yes
fi
PATH=/usr/bin:/usr/sbin:/bin:/sbin:/stand
export PATH
DISTNAME=2.0-ALPHA
interrupt() {
if dialog --clear --title "User Interrupt Requested" \
--yesno "Do you wish to abort the installation?" -1 -1; then
exit 0;
fi
}
# Handle the return value from a dialog, doing some pre-processing
# so that each client doesn't have to.
handle_rval() {
case $1 in
0)
return 0
;;
255)
PS1="subshell# " /stand/sh
;;
*)
return 1
;;
esac
}
# A simple user-confirmation dialog.
confirm() {
dialog --title "User Confirmation" --msgbox "$*" -1 -1
}
# A simple message box dialog.
message() {
dialog --title "Progress" --infobox "$*" 5 72
}
# A simple error dialog.
error() {
dialog --title "Error!" --msgbox "$*" -1 -1
}
# Something isn't supported yet! :-(
not_supported() {
dialog --title "Sorry!" \
--msgbox "This feature is not supported in the current version of the \
installation tools. Barring some sort of fatal accident, we do \
expect it to be in the release. Please press RETURN to go on." 10 60
}
# Get a string from the user
input()
{
dialog --title "$title" $clear \
--inputbox "$*" -1 -1 "$default_value" 2> ${TMP}/inputbox.tmp.$$
if ! handle_rval $?; then rm -f ${TMP}/inputbox.tmp.$$; return 1; fi
answer=`cat ${TMP}/inputbox.tmp.$$`
rm -f ${TMP}/inputbox.tmp.$$
}
# Ask a networking question
network_dialog()
{
title="Network Configuration"
if ! input "$*"; then return 1; fi
}