dot.profile revision 1.5 1 # $NetBSD: dot.profile,v 1.5 2016/01/30 00:52:11 tsutsui Exp $
2 #
3 # Copyright (c) 1995 Jason R. Thorpe
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
36 PATH=/sbin:/bin:/usr/bin:/usr/sbin:/
37 export PATH
38 TERM=vt220
39 export TERM
40 HOME=/
41 export HOME
42 OBLOCKSIZE=1k
43 export BLOCKSIZE
44 EDITOR=ed
45 export EDITOR
46
47 umask 022
48
49 mount_gemdos() mount_msdos -G "$@"
50
51 makerootwritable() {
52 # note, only handles up to partition 'j'
53 rootdev=/dev/$(sysctl -n kern.root_device)$(sysctl -n kern.root_partition | sed y/0123456789/abcdefghij/)
54 if ! mount -u $rootdev / ; then
55 echo "Unable to mount $rootdev read-write"
56 exit 1
57 fi
58 echo "Mounted $rootdev read-write"
59 }
60
61 if [ "X${DONEPROFILE}" = "X" ]; then
62 DONEPROFILE=YES
63 export DONEPROFILE
64
65 # set up some sane defaults
66 echo 'erase ^H, werase ^W, kill ^U, intr ^C'
67 stty newcrt werase ^W intr ^C kill ^U erase ^H 9600
68
69 # mount root read write
70 makerootwritable
71
72 # If supported: Select a keyboard map
73 /usr/sbin/loadkmap > /dev/null 2>&1
74 if [ $? -eq 0 ]; then
75 _maps=`ls /usr/share/keymaps/atari | sed 's/\.map//g'`
76 fi
77 while [ ! -z "$_maps" ]; do
78 echo "The available keyboard maps are:"
79 _num=0
80 for i in $_maps; do
81 echo " $_num $i"
82 _num=`expr $_num + 1`
83 done
84 echo
85 echo -n "Select the number of the map you want to activate: "
86 read _ans
87
88 # Delete all non-nummeric characters from the users answer
89 if [ ! -z "$_ans" ]; then
90 _ans=`echo $_ans | sed 's/[^0-9]//g'`
91 fi
92
93 # Check if the answer is valid (in range). Note that an answer
94 # < 0 cannot happen because the sed(1) above also removes the
95 # sign.
96 if [ -z "$_ans" -o "$_ans" -ge $_num ]; then
97 echo "You entered an invalid response, please try again."
98 continue
99 fi
100
101 # Got a valid answer, activate the map...
102 set -- $_maps
103 shift $_ans
104 /usr/sbin/loadkmap -f /usr/share/keymaps/atari/$1.map
105 break
106 done
107
108 sysinst
109 fi
110