option for installing distributions and/or packages to somewhere other than /,
say for a case where you're installing to an external disk on some other
machine's behalf. More miscellaneous fixes to various problems I stumbled
across while adding this stuff.
Add a few strategic screen clears.
Do a lot less wasted screen I/O in restoring screen contents that don't need
restoring.
Use tar instead of cp to back up /etc in installUpdate.
Don't panic when upgrade shell exits.
apparently look bad on some LCD screens. While I'm in there, tweak and adjust
a number of other minor interface details which have been bothering me for
awhile.
for everything _but_ the multi-user case now (it was the opposite before :-).
That means adding packages with the 2.2-960511-SNAP boot floppy is busted. Feh.
in one place, leaking memory in another).
Add a facility to invoke subsystems directly by naming them on
sysinstall's command-line when running post-install. A replacement
for pkg_manage might, for example, be `/stand/sysinstall configPackages'
Fix bogon where upgrade shell was entered with tty modes spammed.
Fix bug with release name checking in ftp_strat. Turned a bunch of
bogus exit()s into proper calls to systemShutdown().
1. Fix the last display bugs (I hope) by use of dialog rebuilds at stategic
points.
2. Clean up the distributions menus so that everybody (that's reasonable)
has All and Clear options for setting/clearing things en-masse.
3. Various attempts at display optimization.
4. Change the wording of the `Don't use Write!' dialogs to make them more
explicitly define when and when not to use the option.
I still have a _very very annoying_ display bug which occurs when a menu
item causes a submenu to be displayed - the screen repaints for the original
menu (which is restored upon return from the submenu) are off by about 4
characters. I've tried restoring the screen, the cursor position, you name
it - same deal. Grrrr! This commit is my first step in trying to get someone
else to help me look into this one since I'm just tearing my hair out at this
point!
1. Use new dialog menu hacks (no strings, just arrays of dialogMenuItem structs)
so that I can create composite menus with radio/checkbox/... items in them,
removing some long-standing UI bogons in various menus. This work isn't
finished yet, but will be done in two phases. This is phase one.
2. Remove all the script installation stuff. I never got time to document it,
it was arcane and it just complicated much of the code. There are better
ways of doing this if I want to do auto-driven installations later.
3. Remove much dead code and otherwise attempt to remove as much historical
grot as possible so that this code is easier to hack on. This is also
a two-stage process, phase one of which is now complete.
recent libdisk changes. (sysinstall is guilty of using `private' in
quite more places, but since this ain't in library code, it's not that
important.)
Whenever possible, better not use C++ reserved words...
1. Revamp package installer to use new dependency lists and also
pkg_add's new `read from stdin' mode to prevent a copy of the package
from hitting the disk unnecessarily.
2. More fixes for running "not as init" - don't get upset if CDROM already
mounted, do the right thing instead.
3. If running as init, assume first-time install and _don't show the
(W)rite option in the fdisk screen.
4. Many other little tweaks, some of which will have to wait for fuller testing
until I can create a boot floppy (testing certain system-destroying
features of sysinstall can be a royal pain). Expect some more commits.
This looks like it was developed offline, and is being spammed over the
top of the existing. "That's fine by me! I dont really care how you do
it, just get it in there..." said Jordan in a conversation a short while
ago...
multi part stuff centralized.
The final check is backwards or something so it always said it failed,
even it it didn't.
Fixed tcpip address check to not be stupid, 10.0.255.1 is legal.
Change root.flp from a new format CPIO archive to a tar archive.
Unless we're willing to change the main tarballs from tar format to
"newc" (or, even better, "crc") cpio format, we need to use one common
one for all and that's tar for now. Install will now grab "root floppy"
from an ftp site if that's what you've got set.
Fix even more gripes from Poul's list.
P.S. As soon as I get the distfiles copied over to freefall tomorrow
morning, those of you wishing to test minimal installs over ftp should
be able to do so by grabbing the boot floppy and nothing else. Keep
your eyes open for my announcement.
Root floppy (which actually may be able to go completely away at some point
soon!) is now loadable from ftp/nfs/dos as well as CDROM and (of course)
floppy.
Fix more problems on Poul's Gripe List.
1. Fix a few bugs in the ftp installation code and implement proper
ftp and network shutdown routines.
2. Clean up the menus a fair bit - add a FreeBSD configuration menu.
3. Eliminate the last of the "chaining" - the installation now does
the most obvious thing in the most obvious cases and doesn't present
you with more menus than you were expecting. This makes it necessary to be
a little more explicit in places, but it's still less confusing.
4. Add a few more safety nets for the user. Change a few hard-and-fast
limits to warnings (it now runs as non-root, Bruce).
5. Add descriptions for all the supported ethernet cards.
6. Make the cpio floppy extract put up a menu requesting the drive you wish
to use if you have more than one; don't just always assume drive A.
ftp installation method should now function. We'll know as soon as my
make release builds the floppies. I'm just committing this out of my
release tree now so that it doesn't get clobbered again.
use them yet, but it's close (we're working on the last wrinkles
in the CD install for now).
2. Complete the CDROM installation strategy code.
3. Simplify the distribtuion loading code.
4. General error message cleanup.
5. Write the /etc/fstab file now and split those routines into config.c
6. Clean up the menus a little more.
Justin can see it.
2. Attempt to fix the redisplay problems in label.c some more. Not clearing
the screen each time is certainly faster, but it's causing all sorts of
problems.
Add size argument to new_part, so it can come up with a good default for newfs.
Fix (possibly) a dialog botch after label.c's wizard mode.
Make vsystem even smarter abour crunched binaries (what a speedup!)
(You need to recompile crunchgen !)
partition editors (ugh). Fix an utterly bogus message (no arguments :)
in dist.c. This should all make Poul a little happier and slide in
before the next CTM update window.
with the diff/CVS hassles - this represents far too many CVS commit
messages for you folks, and trying to document each and every iteration
of the code is a hassle (and not very useful at that).
Don't notify in vsystem() - it obscures the original message.
Put some debugging code into cpio_extract() so that I can see
why it doesn't work now. :(
implementation.
2. Totally rework device registration. It's about half the size and
more powerful now.
3. Add DOS discovery.
4. Start filling in some of the strategy routines.
5. Another clean-up pass over the menus.
6. Make wizard code use Disk typedef.
If I can get the first strategy routine finished tonite, we should have a working
install (from ftp, at least) this weekend.
won't know until Poul wakes up again).
2. Make vsystem() put its output on the debugging fd.
3. DTRT with root filesystem placement - now I see how this has to work
(thanks, Poul).
4. Many miscellaneous spelling errors fixed and general cleanup.
It remains to be seen how successfully. The distribution loading code
is still not here yet, but the partition/newfs/mount/cpio-extract cycle
is as complete as it's ever going to get, modulo possible bug fixes.
The TCP/IP setup screen is also sort of here, albeit in a highly-changing
state due to the fact that per-interface information isn't being kept
right now but is being added (thanks, Gary!).
fixed, we should be able to fully set up the user's disk. Still to come
with next commit: filesystem setup, distribution extraction, final
configuration.
nor is it in sync with my working sources, but it leaves me less CVS hassles
to bring in the new files at this time. Still no documentation to translate
quite yet, but soon. This stuff is actually very close now.
o Make the framework generally more robust.
o Figured out how to nest the menu descriptions - no more grotty initialization
of menus.
o Fix bug with helpline and helpfile not being reset.
o Add stubs for the media selection code.
Coming next: Fdisk and disklabel screens using Phk's new libdisk stuff.
Added another couple of menu item types.
Reshuffled the menus and added a few more. Sure wish I could figure out
how to initialize a menu with _one_ initializer rather than two! :(
more to come in the next 24 hours, this is just the first stable result of
8 hours of hacking so far. The specification format for menus is pretty
much hammered out and the beginnings (very humble) of the doc hierarchy
are present for an example. It should be quite easy to add a lot more
menus quickly to this since I did go somewhat out of my way to make the
framework easy to work with. This is NOT the glorious semi-graphical
sysinstall (or whatever its name will be) that the install-geeks are working
on, this is simply the "son of sysinstall" I've been promising to write in
the interim for 2.0.5 and 2.1R (super install doesn't come until 2.2R).