[BACK]Return to TODO CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / distrib / utils / sysinst

File: [cvs.NetBSD.org] / src / distrib / utils / sysinst / Attic / TODO (download)

Revision 1.24, Thu Jan 10 13:40:39 2008 UTC (6 years, 8 months ago) by simonb
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-pf42-base, yamt-pf42, yamt-pagecache-tag8, yamt-pagecache-base9, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, yamt-pagecache, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, mjf-devfs2-base, mjf-devfs-base, matt-premerge-20091211, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-premerge-20101231, matt-mips64-base2, matt-armv6-nbase, khorben-n900, keiichi-mipv6-base, keiichi-mipv6, jym-xensuspend-nbase, jym-xensuspend-base, jym-xensuspend, hpcarm-cleanup-nbase, hpcarm-cleanup-base, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2, agc-symver-base, agc-symver
Branch point for: tls-maxphys, tls-earlyentropy, mjf-devfs2, mjf-devfs
Changes since 1.23: +1 -3 lines

Remove support for NetBSD/pc532.

#	$NetBSD: TODO,v 1.24 2008/01/10 13:40:39 simonb Exp $

Things to do ....  in no specific order.

	-- On error messages, do something to allow the user to
	   see any errors from anything run by run_prog().
	   Ideas suggested  maximum entropy <entropy@zippy.bernstein.com>.
	   are:

	   #1:
		if (run_prog("foo") != 0)
			sleep(5);

	   #2:	   
		endwin();
		run_prog("foo");
		printf("press return to continue");
		getchar();
		initscr();

	   #3: (modification of #2):

		endwin();
		if (run_prog("foo") != 0) {
			printf("press return to continue");
			getchar();
		}
		initscr();

	   #4:

		Manually fork and exec everything, dup2 fd's 1 and 2
		onto sockets in the child, and paginate the output in
		your curses app :-)

	   We currently implement a special-case variant of #1 for untarring
	   release sets, since the GNU tar in 1.3 fails to report many
	   errors in its exit status.

        -- "browse" for a local directory to get the
           distribution set from.  Maybe just allowing the user to shell
           out and look around is good enough (this needs more thought).

	-- check for already-mounted filesystems before install newfs.
	   Abort with message.

	-- check for already-mounted filesystems before upgrade fsck.
	   (ignore?)

	-- check for already-mounted filesystems before upgrade mount.
	   Continue, if device mount is where we wanted it?

	    (Jonathan ran into the above 3 by upgrading from a live
	    system to a scratch disk.  sysinst copied the live /etc/fstab
	    to the target. The upgrade failed because sysinst wanted
	    to mount the active system's /usr. Could happen when a
	    real upgrade aborts, even running from ramdisk root.)

	-- Handle ccd's and raid's during an upgrade.

        -- Use bootp or dhcp to get network info (hostname, domain name,
           name servers, ...)

	-- Things like having config_network()
           possibly use the information on the fixed disk instead of having
           to ask everything.

        -- Build the disktab as a profile, not a true /etc/disktab so it
           doesn't overwrite the real disktab.

        -- Have both ftp and floppy gets get the file, extract the file,
           and then remove the file before going on to the next set to
           save disk space.

        -- Set current time and date.

	-- Configure NTP servers, set NTP in rc.conf

	-- On i386 (and others) allow for storing localtime in the RTC.
	   Need to patch kernel variable with offset from UTC.  Any
	   other kernel variables we might want to patch as well???

        -- A little more clean-up of the run_prog suite so things work
           nicely for all ports.

	-- fix "disklabel -r -w" vs. "disklabel -w": I still don't grok why
           the  -r, and the manpage says it will lose totally on sparcs.
           Phil, was there some reason to bypass the incore label on i386?
           Can we just do "disklabel -w" everywhere?

	-- Michael bumped the in-memory disklabel struct up to 16 entries.
 	   Also add a runtime check in case that grows in future 
	   (e.g., slices).  Maybe bump to 32 entries just in case.

	-- Fix sanity-check message code. It currently gets over-written
	   immediately by the following message.

	-- check for disklabel edits changing active root partition.
	   reject.

	-- remove any possibly-stale ld.so.cache files from the target
           /etc after unpacking sets. Maybe just don't copy ld.so.cache
           from /etc.old?

	-- Full configuration of rc.conf?

	-- If we're doing a fresh install and there's already a label
	   on the disk, maybe use that instead of the compiled-in default
	   label?

	-- symlinks for /tmp (/tmp -> /var/tmp or some such)

	-- Do non-standard installs from arbitrary tar files (?)

	-- Install binary packages.  (possibly a second program
	   run after installation.)

	-- Provide the user a menu to select each installation step on
	   its own. Currently there's no way to repeat steps or leave
	   them out. (See the Debian installer for a good example.)

	-- Allow the user to install binary snapshots available from releng.
	   This could be done in the following way:
		* list the available snapshots in ftp.NetBSD.org
		  (eg.: ls /pub/NetBSD-daily/*/*/${ARCH} using ftp(1)).
		* present the user with the possible selections (handle the
		  case of zero options).
		* set the variables and install via FTP showing first the
		  FTP installation screen.