git: 9front

ref: 0a8b50a42d13a1e56a8c8b1e966e1946d07431d8
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
}