git: 9front

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