git: 9front

ref: e61060a5fe59b10d8f68e75eb5e5380d8a1b29e4
dir: /rc/bin/inst/nvramsetup/

View raw version
#!/bin/rc

# desc: invalidate nvram
# prereq: systype copydist

files=()
for(i in /dev/sd*/nvram){
	if(test -f $i)
		files=($files $i)
}

switch($1){
case checkdone checkready
	if(~ $#files 0 && ! ~ $syst cpu)
		nvramsetup=done
	if not {
		if(~ $#nvram 1 && grep -s trust $nvram)
			nvramsetup=done
		if not
			nvramsetup=ready
	}
	export nvramsetup

case go
	echo
	echo 'Setup Plan 9 NVRAM configuration partition (nvram)'
	echo

	if(~ $#files 1)
		default=(-d $files)
	if not
		default=()
	prompt $default 'Nvram partition' $files
	nvram=$rd
	export nvram

	echo 'trust, but verify' >$nvram

	if(! ~ $syst cpu)
		exit

	echo
	echo 'You will be asked to enter an authid, authdom, secstore key,'
	echo 'and password upon next boot. The authid is the hostowner.'
	echo 'The authdom is the domain from your network configuration.'
	echo 'The secstore key and password should be a secret password'
	echo 'of eight characters or greater in length. On an auth server,'
	echo 'the password will be used to encrypt the user database'
	echo '/adm/keys'
	echo
}