Home | History | Annotate | Line # | Download | only in conf
      1 # $NetBSD: evbppc.conf,v 1.4 2025/02/17 12:31:20 jmcneill Exp $ */
      2 # evbppc shared config
      3 #
      4 image=$HOME/${board}.img
      5 
      6 MACHINE=evbppc
      7 
      8 extra=48		# spare space
      9 init=32
     10 boot=$((192 - ${init}))
     11 ffsoffset=$(( (${init} + ${boot}) / 2 ))m
     12 
     13 size=0		# autocompute
     14 msdosid=12
     15 
     16 if $gpt; then
     17 	partition_type="gpt"
     18 else
     19 	partition_type="disklabel"
     20 fi
     21 
     22 mkdir -p ${mnt}/boot
     23 
     24 make_label_evbppc() {
     25 	# compute all sizes in terms of sectors
     26 	local totalsize=$(( ${size} / 512 ))
     27 
     28 	local bootsize=$(( ${boot} * 1024 ))
     29 
     30 	local bootoffset=$(( ${init} * 1024 ))
     31 
     32 	local asize=$(( ${totalsize} - ${bootsize} - ${bootoffset} ))
     33 	local aoffset=$(( ${bootoffset} + ${bootsize} ))
     34 
     35 	local bps=512
     36 	local spt=32
     37 	local tpc=64
     38 	local spc=2048
     39 	local cylinders=$(( ${totalsize} / ${spc} ))
     40 
     41 	cat << EOF
     42 type: SCSI
     43 disk: STORAGE DEVICE
     44 label: fictitious
     45 flags: removable
     46 bytes/sector: ${bps}
     47 sectors/track: ${spt}
     48 tracks/cylinder: ${tpc}
     49 sectors/cylinder: ${spc}
     50 cylinders: ${cylinders}
     51 total sectors: ${totalsize}
     52 rpm: 3600
     53 interleave: 1
     54 trackskew: 0
     55 cylinderskew: 0
     56 headswitch: 0           # microseconds
     57 track-to-track seek: 0  # microseconds
     58 drivedata: 0 
     59 
     60 8 partitions:
     61 #     size         offset        fstype [fsize bsize cpg/sgs]
     62  a:   ${asize}     ${aoffset}    4.2BSD  ${fsize} ${bsize} 0  # 
     63  c:   ${totalsize} 0             unused      0     0          #
     64  e:   ${bootsize}  ${bootoffset} MSDOS                        #
     65 EOF
     66 }
     67 
     68 make_fstab_evbppc() {
     69 	make_fstab_default boot
     70 }
     71 
     72 customize_evbppc() {
     73 	if $minwrites && $postfix; then
     74 		mkdir ${mnt}/etc/postfix
     75 		(umask 022
     76 		sed -e 's/fifo/unix/' < ${release}/etc/postfix/master.cf > \
     77 		    ${mnt}/etc/postfix/master.cf)
     78 	fi
     79 	
     80 	cp ${release}/etc/rc.conf ${mnt}/etc/rc.conf
     81 	cat >> ${mnt}/etc/rc.conf << EOF
     82 dev_exists() {
     83 	if /sbin/drvctl -l \$1 >/dev/null 2>&1 ; then
     84 		printf YES
     85 	else
     86 		printf NO
     87 	fi
     88 }
     89 
     90 rc_configured=YES
     91 hostname=${hostname:-${board}}
     92 savecore=NO
     93 sshd=YES
     94 dhcpcd=YES
     95 #ntpd=YES
     96 #ntpd_flags="-g"
     97 creds_msdos=YES
     98 creds_msdos_partition=/boot
     99 certctl_init=YES
    100 EOF
    101 
    102 	if ! ${swap:-false}; then
    103 		cat >> ${mnt}/etc/rc.conf << EOF
    104 no_swap=YES
    105 EOF
    106 	fi
    107 	if $resize; then
    108 		cat >> ${mnt}/etc/rc.conf << EOF
    109 resize_${partition_type}=YES
    110 resize_root=YES
    111 resize_root_flags="-p"
    112 resize_root_postcmd="/sbin/reboot -n"
    113 EOF
    114 	fi
    115 
    116 	echo "./etc/rc.conf type=file uname=root gname=wheel mode=0644" \
    117 	    >> "$tmp/selected_sets"
    118 
    119 	mkdir ${mnt}/etc/rc.d
    120 	for _f in resize_${partition_type} creds_msdos; do
    121 		cp ${DIR}/files/${_f} ${mnt}/etc/rc.d/${_f}
    122 		echo "./etc/rc.d/${_f} type=file uname=root gname=wheel mode=0555" \
    123 		    >> "$tmp/selected_sets"
    124 	done
    125 
    126 	if [ ! -f ${release}/dev/MAKEDEV ]; then
    127 		echo ${PROG}: Missing ${release}/dev/MAKEDEV 1>&2
    128 		exit 1
    129 	fi
    130 	echo "${bar} running MAKEDEV ${bar}"
    131 	${HOST_SH} ${release}/dev/MAKEDEV -s all | sed -e 's:^\./:\./dev/:' \
    132 	    >> "$tmp/selected_sets"
    133 
    134 	echo "${bar} fixing up permissions"
    135 	echo "./boot type=dir uname=root gname=wheel mode=0755" \
    136 	    >> "$tmp/selected_sets"
    137 }
    138