xref: /netbsd-src/distrib/sparc64/instfs/dot.profile (revision d823475ff234eaf4e4e46e371464af997d5fa3a5)
1# $NetBSD: dot.profile,v 1.9 2020/02/26 16:00:48 riastradh Exp $
2#
3# Copyright (c) 1997 Perry E. Metzger
4# Copyright (c) 1994 Christopher G. Demetriou
5# All rights reserved.
6#
7# Redistribution and use in source and binary forms, with or without
8# modification, are permitted provided that the following conditions
9# are met:
10# 1. Redistributions of source code must retain the above copyright
11#    notice, this list of conditions and the following disclaimer.
12# 2. Redistributions in binary form must reproduce the above copyright
13#    notice, this list of conditions and the following disclaimer in the
14#    documentation and/or other materials provided with the distribution.
15# 3. All advertising materials mentioning features or use of this software
16#    must display the following acknowledgement:
17#          This product includes software developed for the
18#          NetBSD Project.  See http://www.NetBSD.org/ for
19#          information about NetBSD.
20# 4. The name of the author may not be used to endorse or promote products
21#    derived from this software without specific prior written permission.
22#
23# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
24# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
25# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
26# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
27# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
28# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
29# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
32# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33#
34# <<Id: LICENSE,v 1.2 2000/06/14 15:57:33 cgd Exp>>
35
36PATH=/sbin:/bin:/usr/bin:/usr/sbin:/
37export PATH
38
39# Check if we are on a framebuffer or on serial console and default
40# the terminal type accordingly.
41# There is no /var/db/dev.cdb, so sysctl might not map the devicename properly;
42# ttyE0 is 90,0 -> 0x5a00
43case $(sysctl -nx kern.consdev) in
44 0000000000005a0*)
45   TERM=wsvt25
46   ;;
47 *)
48   TERM=vt220
49   ;;
50esac
51
52export TERM
53HOME=/
54export HOME
55BLOCKSIZE=1k
56export BLOCKSIZE
57EDITOR=ed
58export EDITOR
59SHELL=/bin/sh
60export SHELL
61
62umask 022
63
64if [ "X${DONEPROFILE}" = "X" ]; then
65	DONEPROFILE=YES
66	export DONEPROFILE
67
68	# set up some sane defaults
69	echo 'erase ^?, werase ^W, kill ^U, intr ^C'
70	stty newcrt werase ^W intr ^C kill ^U erase ^? 9600
71	echo ''
72
73	if [ $TERM != "wsvt25" ]; then
74		cat << "EOM"
75You are using a serial console, we do not know your terminal emulation.
76Please select one, typical values are:
77
78	vt100
79	ansi
80	xterm
81
82EOM
83		echo -n "Terminal type (just hit ENTER for '$TERM'): "
84		read ans
85		if [ -n "$ans" ];then
86		    TERM=$ans
87		fi
88	fi
89
90	# mount the kern_fs so that we can find the root device, and also
91	# examine the dmesg state
92	mount -t kernfs /kern /kern
93
94	# mount the ramdisk read write
95	mount -t ffs -u /kern/rootdev /
96
97	# run the installation or upgrade script.
98	sysinst || stty sane
99	if [ $? = 4 ]; then
100		echo "Oops, something went wrong - we will try again"
101		exit
102	fi
103	echo
104	echo "To return to the installer, quit this shell by typing 'exit'" \
105		"or ^D."
106fi
107