git: 9front

ref: 5a5345100bae3d0af7c7cd4ce685cb85a04584bf
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
}