1 1.1 dholland # $NetBSD: TODO,v 1.1 2014/07/26 19:30:44 dholland Exp $ 2 1.1 dholland 3 1.1 dholland Things to do .... in no specific order. 4 1.1 dholland 5 1.1 dholland -- On error messages, do something to allow the user to 6 1.1 dholland see any errors from anything run by run_prog(). 7 1.1 dholland Ideas suggested maximum entropy <entropy (a] zippy.bernstein.com>. 8 1.1 dholland are: 9 1.1 dholland 10 1.1 dholland #1: 11 1.1 dholland if (run_prog("foo") != 0) 12 1.1 dholland sleep(5); 13 1.1 dholland 14 1.1 dholland #2: 15 1.1 dholland endwin(); 16 1.1 dholland run_prog("foo"); 17 1.1 dholland printf("press return to continue"); 18 1.1 dholland getchar(); 19 1.1 dholland initscr(); 20 1.1 dholland 21 1.1 dholland #3: (modification of #2): 22 1.1 dholland 23 1.1 dholland endwin(); 24 1.1 dholland if (run_prog("foo") != 0) { 25 1.1 dholland printf("press return to continue"); 26 1.1 dholland getchar(); 27 1.1 dholland } 28 1.1 dholland initscr(); 29 1.1 dholland 30 1.1 dholland #4: 31 1.1 dholland 32 1.1 dholland Manually fork and exec everything, dup2 fd's 1 and 2 33 1.1 dholland onto sockets in the child, and paginate the output in 34 1.1 dholland your curses app :-) 35 1.1 dholland 36 1.1 dholland We currently implement a special-case variant of #1 for untarring 37 1.1 dholland release sets, since the GNU tar in 1.3 fails to report many 38 1.1 dholland errors in its exit status. 39 1.1 dholland 40 1.1 dholland -- "browse" for a local directory to get the 41 1.1 dholland distribution set from. Maybe just allowing the user to shell 42 1.1 dholland out and look around is good enough (this needs more thought). 43 1.1 dholland 44 1.1 dholland -- check for already-mounted filesystems before install newfs. 45 1.1 dholland Abort with message. 46 1.1 dholland 47 1.1 dholland -- check for already-mounted filesystems before upgrade fsck. 48 1.1 dholland (ignore?) 49 1.1 dholland 50 1.1 dholland -- check for already-mounted filesystems before upgrade mount. 51 1.1 dholland Continue, if device mount is where we wanted it? 52 1.1 dholland 53 1.1 dholland (Jonathan ran into the above 3 by upgrading from a live 54 1.1 dholland system to a scratch disk. sysinst copied the live /etc/fstab 55 1.1 dholland to the target. The upgrade failed because sysinst wanted 56 1.1 dholland to mount the active system's /usr. Could happen when a 57 1.1 dholland real upgrade aborts, even running from ramdisk root.) 58 1.1 dholland 59 1.1 dholland -- Handle ccd's and raid's during an upgrade. 60 1.1 dholland 61 1.1 dholland -- Use bootp or dhcp to get network info (hostname, domain name, 62 1.1 dholland name servers, ...) 63 1.1 dholland 64 1.1 dholland -- Things like having config_network() 65 1.1 dholland possibly use the information on the fixed disk instead of having 66 1.1 dholland to ask everything. 67 1.1 dholland 68 1.1 dholland -- Build the disktab as a profile, not a true /etc/disktab so it 69 1.1 dholland doesn't overwrite the real disktab. 70 1.1 dholland 71 1.1 dholland -- Have both ftp and floppy gets get the file, extract the file, 72 1.1 dholland and then remove the file before going on to the next set to 73 1.1 dholland save disk space. 74 1.1 dholland 75 1.1 dholland -- Set current time and date. 76 1.1 dholland 77 1.1 dholland -- Configure NTP servers, set NTP in rc.conf 78 1.1 dholland 79 1.1 dholland -- On i386 (and others) allow for storing localtime in the RTC. 80 1.1 dholland Need to patch kernel variable with offset from UTC. Any 81 1.1 dholland other kernel variables we might want to patch as well??? 82 1.1 dholland 83 1.1 dholland -- A little more clean-up of the run_prog suite so things work 84 1.1 dholland nicely for all ports. 85 1.1 dholland 86 1.1 dholland -- fix "disklabel -r -w" vs. "disklabel -w": I still don't grok why 87 1.1 dholland the -r, and the manpage says it will lose totally on sparcs. 88 1.1 dholland Phil, was there some reason to bypass the incore label on i386? 89 1.1 dholland Can we just do "disklabel -w" everywhere? 90 1.1 dholland 91 1.1 dholland -- Michael bumped the in-memory disklabel struct up to 16 entries. 92 1.1 dholland Also add a runtime check in case that grows in future 93 1.1 dholland (e.g., slices). Maybe bump to 32 entries just in case. 94 1.1 dholland 95 1.1 dholland -- Fix sanity-check message code. It currently gets over-written 96 1.1 dholland immediately by the following message. 97 1.1 dholland 98 1.1 dholland -- check for disklabel edits changing active root partition. 99 1.1 dholland reject. 100 1.1 dholland 101 1.1 dholland -- remove any possibly-stale ld.so.cache files from the target 102 1.1 dholland /etc after unpacking sets. Maybe just don't copy ld.so.cache 103 1.1 dholland from /etc.old? 104 1.1 dholland 105 1.1 dholland -- Full configuration of rc.conf? 106 1.1 dholland 107 1.1 dholland -- If we're doing a fresh install and there's already a label 108 1.1 dholland on the disk, maybe use that instead of the compiled-in default 109 1.1 dholland label? 110 1.1 dholland 111 1.1 dholland -- symlinks for /tmp (/tmp -> /var/tmp or some such) 112 1.1 dholland 113 1.1 dholland -- Do non-standard installs from arbitrary tar files (?) 114 1.1 dholland 115 1.1 dholland -- Install binary packages. (possibly a second program 116 1.1 dholland run after installation.) 117 1.1 dholland 118 1.1 dholland -- Provide the user a menu to select each installation step on 119 1.1 dholland its own. Currently there's no way to repeat steps or leave 120 1.1 dholland them out. (See the Debian installer for a good example.) 121 1.1 dholland 122 1.1 dholland -- Allow the user to install binary snapshots available from releng. 123 1.1 dholland This could be done in the following way: 124 1.1 dholland * list the available snapshots in ftp.NetBSD.org 125 1.1 dholland (eg.: ls /pub/NetBSD-daily/*/*/${ARCH} using ftp(1)). 126 1.1 dholland * present the user with the possible selections (handle the 127 1.1 dholland case of zero options). 128 1.1 dholland * set the variables and install via FTP showing first the 129 1.1 dholland FTP installation screen. 130