git: 9front

ref: c7bde5b0591d7c8df7182de9ceaa3e5e53d0973a
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
}