History log of /freebsd-9.3-release/usr.sbin/sade/label.c
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 267654 19-Jun-2014 gjb

Copy stable/9 to releng/9.3 as part of the 9.3-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 229243 01-Jan-2012 dim

MFC r228682:

In usr.sbin/sade/install.c and usr.sbin/sade/label.c, fix a few warnings
about format strings not being literals.

MFC r228683:

Forgot to add usr.sbin/sade/label.c in the previous commit.


# 225736 22-Sep-2011 kensmith

Copy head to stable/9 as part of 9.0-RELEASE release cycle.

Approved by: re (implicit)


# 178946 11-May-2008 obrien

Better to just statically set the name vs. determine at run time.


# 178940 11-May-2008 obrien

Clean up several instances of SADE calling itself sysinstall.
(do so generically so the same set of changes can be applied to sysinstall)


# 178769 05-May-2008 mtm

o Change the warning dialog for the 'W' command in both the label
and partition editors to reflect the fact that this is a stand-alone
application, not sysinstall(8).
o Change an instance of sade(8) refering to itself as sysinstall(8) in
a confirmation dialog.

MFC after: 1 week


# 161099 08-Aug-2006 delphij

Make sade(8) WARNS=3 clean.


# 161060 07-Aug-2006 netchild

Say welcome to 'sade', the SysAdmins Disk Editor. It's the fdisk and disklabel part
of sysinstall. So sysinstall may retire now, we have the important non-install part
of it covered.

ATM it doesn't understand GEOM stuff (like mirror, stripe, raid, ...), but patches
to change this and to clean it up internally are more than welcome.

Submitted by: mami@nyitolap.hu


# 161059 07-Aug-2006 netchild

Forced commit to note repo copy from sysinstall.

Repo copy by: markm


# 157107 24-Mar-2006 cperciva

Only set the size of /usr to whatever-is-left is whatever-is-left is
greater than the size we autosized. Without this fix, systems with
drives under 10GB can end up with very small /usr partitions...

Broken since: January 2002
Tripped over by: simon


# 156123 28-Feb-2006 jhb

Fix numerous warnings. Aside from menu items in system.c and menu.c
this now compiles on i386 with WARNS?= 3. Most of the fixes included
adding missing 'static' keywords to internal functions, using fully-defined
terminators in statically defined arrays of structs, and various
signed vs unsigned mismatches. Also G/C'd unused configSecurity()
function.


# 153910 30-Dec-2005 ceri

On i386, 7.0 requires 106MB on /usr. 6.0 requires 101MB.
Bump USR_MIN_SIZE to 128MB, so that an auto-layout install won't fail
due to /usr being too small.

MFC After: 8 days


# 149136 16-Aug-2005 cperciva

Change the default partition sizing code in order to
1. Provide larger /, /var, and /tmp partitions (the last increase was
in 2001, and we now have both larger hard drives and more space-hungry
software.)
2. If there is enough space available, allocate extra space to /var
sufficient to store a crash dump.

On systems where harddrivesize > 3 * RAMsize + 10GB, the default sizes
will now be as follows:
swap RAMsize * 2
/ 512 MB
/tmp 512 MB
/var 1024 MB + RAMsize
/usr the rest (8GB or more)

On systems where harddrivesize > RAMsize / 8 + 2 GB, the default sizes
will be in the following ranges, with space allocated proportionally:
swap RAMsize / 8 -- RAMsize * 2
/ 256 MB -- 512 MB
/tmp 128 MB -- 512 MB
/var 128 MB -- 1024 MB
/usr 1536 MB -- 8192 MB

On systems with even less disk space, the existing behaviour is not
changed.

Approved by: re (kensmith)
MFC after: 1 day
(or once people stop arguing about colours of paint)


# 133246 07-Aug-2004 marcel

Create an EFI partition when the user wants auto defaults. There's
some confusion as to how large the EFI system partition should be,
but 100MB seems to be either the maximum, the minimum or the default
size, so make the EFI partition 100MB.


# 133241 06-Aug-2004 marcel

o Save pointers to the chunks for root, home, swap, usr, var and tmp in
global variables. On ia64, save a pointer to the efi chunk as well.
o At the same time, change checkLabels() to define these globals instead
of having the caller of checkLabels() pass addresses to variables for
these. Change the two callers correspondingly.
o Spent a bit more time adjusting try_auto_label() to prepate for having
the EFI partition created on ia64.
o Remove efi_mountpoint(). The EFI chunk is now available without having
to iterate over the disks and chunks to find it every time we need it.
o On ia64, now that the root chunk is globally available, set the
vfs.root.mountfrom tunable in loader.conf. This avoids that one cannot
boot into FreeBSD after an install. The kernel cannot find the root
device without a little help...


# 133106 04-Aug-2004 marcel

Pass the partition type to get_mountpoint() and new_part(). This way
we'll actually create an EFI partition with a FAT file system instead
of an UFS file system. It also allows us to give a sensible default
mount point for EFI partitions so that people don't have to guess.
This also means that we can now remove new_efi_part(), which did the
same thing as new_part(), except it created a FAT file system. The
function wasn't called when the EFI partition was created from scratch
though, which was the problem. By passing the partition type to the
various functions, we can deal with EFI without having to duplicate
code.


# 133040 02-Aug-2004 marcel

Move the inclusion of libdisk.h from sysinstall.h to the source files
that actually need it. This makes it easier for a platform porter to
find the files that may need tweaking to support whatever MD specific
partitioning is needed. It also helps to prevent that the libdisk API
gets exposed and/or used where it's not needed.


# 129259 15-May-2004 grehan

Mods for powerpc.

Submitted by: Suleiman Souhlal <refugee@segfaulted.com>


# 127081 16-Mar-2004 jhb

Change libdisk and sysinstall to use d_addr_t rather than u_long for disk
addresses. For arch's with 64-bit longs, this is a nop, but for i386 this
allows sysinstall to properly handle disks and filesystems > 1 TB.

Changes from the original patch include:
- Use d_addr_t rather than inventing a blkcnt type based on int64_t.
- Use strtoimax() rather than strtoull() to parse d_addr_t's from config
files.
- Use intmax_t casts and %jd rather than %llu to printf d_addr_t values.

Tested on: i386
Tested by: kuriyama
Submitted by: julian
MFC after: 1 month


# 122021 04-Nov-2003 marcel

o Don't tell that there's such a thing as a C suffix for specifying
a partition size on ia64. It's not true.
o Ask for a mountpoint for EFI partitions as well and check that it
isn't "/".
o On ia64 we may need to add EFI partitions. Make sure we pass the
right arguments to Create_Chunk_DWIM() in that case.


# 121890 02-Nov-2003 marcel

o Add PART_EFI so that we can use it instead of PART_FAT on ia64
to better deal with the fact that we need an EFI partition and
that we need to have a mountpoint for it.
o When creating a new partition, add EFI to the list of types
the user can select from. This makes it easy to create an EFI.
o Do not include wizard.c on ia64.
o The user cannot create a partition on ia64 that's a multiple of
the cylinder size. We don't have a notion of cyclinders.


# 121864 01-Nov-2003 marcel

o Compile-out "wizard" mode on ia64.
o Also allow swap and filesystem partitions outside a freebsd slice.
This is typically the case for GPT.
o Allow chunks of type "whole" to be displayed at the top. This is
to allow a GPT disk to be labeled. We need a slice out of which we
can make partitions, but a GPT disk doesn't have slices. For GPT
disks a chunk of type "whole" can then be used as a placeholder.


# 115293 24-May-2003 peter

Add __amd64__ ifdefs to enable the bootblock handling code, slices, etc.

Approved by: re (murray)
Obtained from: obrien


# 113826 21-Apr-2003 rwatson

Don't use UFS2 by default during the install process on PC98, as the
PC98 boot blocks don't support UFS2. We keep newfs(8) defaulting to
UFS2.

Warn users that FreeBSD can only boot from a root file system smaller
than 1.5TB; hopefully this will get fixed by the patches currently
floating around on -CURRENT.

Reviewed by: nyan


# 113751 20-Apr-2003 rwatson

Throw the switch--change to UFS2 as our default file system format for
FreeBSD 5.1-RELEASE and later:

- newfs(8) will now create UFS2 file systems unless UFS1 is specifically
requested (-O1). To do this, I just twiddled the Oflag default.

- sysinstall(8) will now select UFS2 as the default layout for new
file systems unless specifically requested (use '1' and '2' to change
the file system layout in the disk labeler). To do this, I inverted
the ufs2 flag into a ufs1 flag, since ufs2 is now the default and
ufs1 is the edge case. There's a slight semantic change in the
key behavior: '2' no longer toggles, it changes the selection to UFS2.

This is very similar to a patch David O'Brien sent me at one point, and
that I couldn't find.

Approved by: re (telecon)
Reviewed by: mckusick, phk, bmah


# 109827 25-Jan-2003 dillon

Change the nominal swap calculation from 1/2 physical memory to 1/8
physical memory. The default is still 2x physical memory. The nominal
calculation is used to back-off swap auto-allocation ('A'uto command)
when the disk is not large enough to accomodate all filesystem auto-defaults.
This gives other partitions (like /usr) more priority over swap on smaller
disks.

This should help solve reported auto-sizing failures on machines with small
hard drives and huge amounts of memory. For example, a machine with 2G of
disk and 4G of memory will fail to auto-size without this fix.

MFC after: 3 days


# 108373 28-Dec-2002 rwatson

Since our default boot block now supports UFS1 and UFS2 even on
i386, remove the seatbelt preventing users from setting the UFS2 flag
on the root file system on i386. This seatbelt did not exist on
other platforms.

MFC candidate.


# 107902 15-Dec-2002 kuriyama

Update ROOT_MIN_SIZE for i386 to 118MB (and other ROOT_*_SIZE).


# 107751 11-Dec-2002 phk

When things get bigger than 99GB our fields run over.
Use GB from 100GB and upwards.

Approved by: re


# 107565 03-Dec-2002 rwatson

Reformulate how sysinstall handles file system options in the label
editor, in order to support specifying UFS2 as a newfs option.

(1) Support three different newfs types: NEWFS_UFS, NEWFS_MSDOS, and
NEWFS_CUSTOM. Don't mix up the arguments to them: you can't use
soft updates on an msdos file system.

(2) Distinguish adding new arguments to the newfs command line from
replacing it. Permit the addition of new arguments by the user for
NEWFS_UFS. If we entirely replace the command line provided by
sysinstall, call it NEWFS_CUSTOM. 'N' will now add additional
arguments; 'Z' will opt to replace the newfs command line entirely,
but will prompt the user with their current command line as a
starting point.

(3) Construct the newfs command line dynamically based on the options
provided by the user at label-time. Right now, this means selecting
UFS1 vs. UFS2, and the soft updates flag. Drop in some variables
to support ACLs and MAC Multilabel in the future also, but don't
expose them now.

This provides sysinstall with the ability to do more "in band" editing
of the newfs command line, so we can provide more support for the user,
but doesn't sacrifice the ability to entirely specify the newfs command
line of the user is willing to give up on the cushiness factor. It
also makes it easier for us to specify defaults in the future, and
define conditional behavior based on user configuration selections.
For now, we default to UFS1, and permit UFS2 to be used as the root
only on non-i386 systems.

While I was there, I dropped the default fragment and block sizes,
since newfs has much more sensible defaults now.

Reviewed by: jhb, marcel
Approved by: re
ia64 bits from: marcel


# 107341 27-Nov-2002 jhb

If the user choose to Undo everything in the label editor, only run the
fdisk editor if WITH_SLICES. Before this on arch's that didn't support
slices such as alpha and sparc64 you would drop into the fdisk editor after
doing an Undo in the label editor.

Approved by: re


# 106885 13-Nov-2002 marcel

Add conditional code specific to ia64 to allow newfs(8)-ing FAT
partitions marked as being of type efi. This change adds code to
1. actually run the newfs command at mount time (install.c),
2. display the newfs state on screen (label.c)
3. allow toggling of the newfs state (label.c)

Even though newfs(8)-ing FAT partitions can be of use on i386
machines in general, it has been opted to minimize impact for
now.


# 106839 13-Nov-2002 marcel

Also test for type efi everywhere we currently test for type fat.
With this change there's no a priori difference between EFI and
FAT partitions. With this change and the corresponding change to
libdisk, we can create EFI partitions, just like regular FAT
partitions.


# 106830 12-Nov-2002 jhb

Use a clean flags variable when creating chunks from scripts instead of
leaking flags from earlier chunks into later ones.

PR: bin/40655
Submitted by: Thomas Zenker <thz@Lennartz-electronic.de>


# 106828 12-Nov-2002 jhb

Remove a line that set the status to success. We already do that at the
beginning, so the best this could achieve would be to mask an earlier
failure. Break instead of continue for another failure case.


# 106827 12-Nov-2002 jhb

Try to cleanup the non-interactive disk labeling code a bit. Rework
the loop that runs through the environment variables to be a bit more
intuitive. Also, change some 'continue's in failure cases to 'break's
instead. If we are going to fail, we should just do it.

PR: bin/40654
Submitted by: Thomas Zenker <thz@Lennartz-electronic.de> (partially)


# 106826 12-Nov-2002 jhb

Do a bit of cleanup. new_part() basically ignored the passed in size
argument as of revision 1.52 (July 12, 1996, about a month after I
graduated from high school) when 'newfs -u' support was axed, so remove it.
This also allows us to remove a hack in the create partition case where we
created the partition twice since we didn't have the size the first time.


# 106823 12-Nov-2002 jhb

Doh, fix a bug in previous commit. The default is to newfs for new
partitions, not to !newfs.


# 106822 12-Nov-2002 jhb

When setting the mountpoint name, remember any previous setting of the
newfs flag for this partition.

PR: bin/31837
Reported by: Oliver Breuninger <ob@www.partner.de>


# 106348 02-Nov-2002 tmm

The hw.physmem sysctl has an unsigned long value now, fix the retrieval
to match that.


# 106224 30-Oct-2002 phk

With the recent libdisk changes, alpha doesn't need (as much) special magic.


# 106115 29-Oct-2002 phk

Sparc64 will not need the same hacks as alpha did. Hopefully alpha wont
need them either.


# 104940 11-Oct-2002 obrien

* Negative #if's are harder to read as they don't tell exactly what arch
something applies to. So change #ifndef to an explicit list of defines.
* Treate sparc64 and ia64 as 64-bit platforms, which means larger roots.
* sparc64 should halt back to the firmware, not reset.
* sparc64 doesn't need to play MS-DOS/BIOS partition crap games.

Reviewed by: jake


# 98018 07-Jun-2002 jhb

Fix a bug where request_part_size() was hard-coded to check the rootSize
variable rather than the one passed in as the first argument.

Sponsored by: The Weather Channel


# 97667 31-May-2002 jhb

Add a 'diskInteractive' variable that can be set to interactively partition
and label a disk from a sysinstall script.


# 89968 29-Jan-2002 murray

Fix a signal 11 error that occurs if you try to use the 'T' option on
an existing FreeBSD partition.

Reported by: Brent Cook <busterb@mail.utexas.edu>


# 88996 07-Jan-2002 dillon

Add 'R'ecover option that deletes a partition and attempts
to recover its space into the previous partition. Revert 'D'elete
to not attempt to recover any space.

Do not auto-create /home as per release engineers decision (though
I think this is a mistake). However, all of this code will be
replaced later on anyway either with Jordan's stuff or with
some other sort of templater, so it isn't a big deal.


# 88321 20-Dec-2001 jkh

Enable soft updates by default for everything but the root filesystem.
The user can still toggle it back off in the label editor (or post-install
for that matter) if they explicitly do not want soft updates to be used
for some reason.

Agreed to be a good thing by: kirk


# 87583 10-Dec-2001 dillon

cleanup


# 87581 09-Dec-2001 dillon

Add auto-fill-on-delete. When deleting an 'A'uto created partition
sysinstall will automatically expand the previous partition to take up
the freed up space. So you can 'D'elete /home and /usr will get the
combined space, or you can 'D'elete /tmp and /var will get the combined space.

This gives the user, developer, or lay person a huge amount of flexibility
in constructing partitions from an 'A'uto base. It takes only 3 or 4
keystrokes to achieve virtually any combination of having or not having
a /tmp and/or /home after doing an 'A'uto create.

Change 'A'uto creation of /var/tmp to 'A'uto creation /tmp, which should
be less controversial.

MFC after: 6 days


# 87557 09-Dec-2001 dillon

Cleanup sysinstall's 'A'uto partitioning mode to provide more reasonable
defaults both in regards to the size of the partitions that are created
and in regards to safety and functional separation.

Still TODO: extend the previous partition to cover a deleted partition
if the previous partiton was auto-created, and supply some sort of
solution for /tmp.

Reviewed by: Just about everyone
Approved by: Nobody except maybe my pet mouse fred
Obtained from: God, so complain to HIM
MFC after: 1 week


# 79680 13-Jul-2001 obrien

Tweak the Alpha partition warning wording and comment a little.


# 79678 13-Jul-2001 obrien

Rudamentary attempt to reconize when `a' is not the first partition on the
Alpha. (the Alpha will not boot except from the first partition)

PR: 23064
Submitted by: Kees Jan Koster <kjkoster@kjkoster.org>


# 76299 06-May-2001 jkh

Make soft updates option print more nicely and stop overflow of
right-hand margin when set in 2nd column. Also do a small amount of
code cleanup.


# 76237 03-May-2001 jkh

Remove now obsolete check for root filesystems > cyl 1024. The boot
loader can handle such cases.

Noted by: olgeni


# 75250 05-Apr-2001 obrien

Bump the default / size up another 10MB to 120MB.

Requested by: jhb


# 74674 23-Mar-2001 jkh

Fix a bug with setting the soft updates option from a script.

Eliminate an old warning brought about by insufficient foresight when creating
the Menu structure. Have I ever mentioned that sysinstall really needs to
be rewritten?


# 74156 12-Mar-2001 jkh

Really finish softupdate setting from the label editor and fix
a few cosmetic problems:

o Allow it to work with scripts (see man page or install.cfg file).
o Preserve old softupdates flag across newfs toggles
o Clean up partitioned/labelled flag handling
o Don't ask for MBR choice again if you've already written it out.
o Actually document the new features.


# 74086 10-Mar-2001 jkh

Support setting soft updates from the label editor.


# 72124 07-Feb-2001 obrien

Bump the i386 default root by another 30MB to 100MB total. The Alpha
default root bumps 20MB to 110MB.

Requested by: kris


# 72122 07-Feb-2001 obrien

Add 20MB to the default / size for this in-development branch.


# 70005 14-Dec-2000 jkh

Adapt sysinstall to use the new msgNoYes() function which assumes
no as a default. Sysinstall should be both less dangerous and less
annoying as a result of this change, though that's just my opinion
(since they're the defaults which annoy ME the least :).


# 63031 12-Jul-2000 jhb

- Support MBR boot loaders that are larger than one sector size.
- Axe the 1024 cylinder checks as they are no longer relevant.


# 57617 29-Feb-2000 jkh

o Add support for loading the rsaref or rsaintl packages, depending
on locale.

o Allow use of "G" in label editor to stand for gigabytes. This
is actually an unrelated patch which I meant to commit separately
but what the heck, it's late.

Partially submitted by: phk


# 54762 18-Dec-1999 jkh

Better screen handling in X desktop setup.
Don't get cute with nested dialogs now.


# 54716 17-Dec-1999 jkh

Bump default root size to 50MB on i386 (70MB on Alpha).

Requested incessantly by: billf


# 54587 14-Dec-1999 jkh

Completely rip-out and redesign sysinstall's refresh model as well
as redoing all the menus to have proper, or at least non-hallucinogenic,
keyboard accelerators.

This requires my recent update to libdialog to work properly and will
probably also exhibit some other "interesting" behavior while the last
few missing screen clears are found (which is why I'm not going to MFC
immediately). At least now, however, sysinstall does not gratuitously
redraw random screens at the drop of a hat and drive serial console
installers out of their minds.


# 54473 12-Dec-1999 jkh

I shouldn't have incremented PART_OFF; it was wrong and broke label
display to boot. Also fix some various warning fluff while I'm in
here cleaning up.


# 54014 02-Dec-1999 jkh

Allow 2 more characters for Mike's long device names.


# 50479 27-Aug-1999 peter

$Id$ -> $FreeBSD$


# 49441 05-Aug-1999 phk

Make the newfs parameters a global option.

The default is still "-b 8192 -f 1024" but my experiments show that
"-b 16384 -f 4096 -c 100" is a more sensible value for modern
disksizes.


# 49202 29-Jul-1999 brian

Allow room for editing labels on disks that are >= 10000Mb
Submitted by: Josef L. Karthauser <joe@uk.FreeBSD.org>


# 46615 07-May-1999 jkh

1. Silence warning.
2. Deal with potential whitespace evil early (PR#7455).


# 45127 30-Mar-1999 jkh

Bump default root fs sizes, for both i386 and alpha architectures.


# 44601 09-Mar-1999 jkh

o Use larger minimum root size on alpha.
o Use proper architecture subdir when fetching bits from snapshot servers.

Submitted by: Doug Rabson <dfr@nlsystems.com>


# 43685 05-Feb-1999 jkh

Totally change the way variables are accounted for in sysinstall.
Now we know which variables are internal and which need to be
backed to /etc/rc.conf.site. rc.conf is not touched now.

Also kget kernel change information back properly and set up a loader.rc
file to use it.


# 43392 29-Jan-1999 jkh

More support for Alpha installs.

Submitted by: dfr


# 42386 07-Jan-1999 jkh

Adapt sysinstall more fully to the alpha (deal with proper boot signatures,
don't present label editor, etc).

Submitted by: dfr


# 37735 18-Jul-1998 jkh

MF22: Paul Traina's changes.


# 34543 13-Mar-1998 jkh

Fix bogusly shadowed variable.

Submitted by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>


# 33132 06-Feb-1998 jkh

MF22: reset root flags properly.


# 30956 05-Nov-1997 obrien

MFS.


# 30403 14-Oct-1997 jkh

Fix bogon I introduced while adding disks menu to label editor.


# 30381 13-Oct-1997 jkh

Only need to call label editor for all drives.


# 30345 12-Oct-1997 jkh

Separate the siamese twins that were the partition and label editor.
Now you can use one without entering the other and it will DTRT.
These changes just allowed me to do the most straight-forward new disk
installation I've ever managed with sysinstall.


# 29633 20-Sep-1997 jkh

More label editor enhancements.
Submitted by: Ed Gold <vegold01@starbase.spd.louisville.edu>


# 29628 20-Sep-1997 jkh

Fix conditional bogon in Label Editor [from Ed Gold]
Print info boxes without titles.


# 29501 16-Sep-1997 jkh

MF22: pst's changes.
Submitted by: pst


# 29249 09-Sep-1997 jkh

Scrolling partition and label lists now make it possible to partition
lots of disks from sysinstall. Yay! Please test this as much as
possible with any 3.0 SNAP later than 970910 (I.E. tomorrow's snap),
especially those of you with larger disk farms.

Submitted by: Ed Gold <vegold01@starbase.spd.louisville.edu>


# 28075 11-Aug-1997 jkh

Make some changes to the way the label editor reads script variables
so you don't need to re-enter it for each and every filesystem. Heads up!
This change is incompatible with the previous scripting format,
so those folks (all 2 of you) using config files should take a look
at the changes to the sample install.cfg file for the diskLabelEditor's
new calling syntax.

Finally write a man page for this thing, documenting all of the above
and more. I can't drive a stake through this thing's heart without
properly documenting it first, so please consider this step #1 in that
process (to be honest, sysinstall will also live on for some time in
the 2.2. branch since it's unlikely that the new install tools will ever
make it over there - they're strictly 3.0 material).


# 26456 05-Jun-1997 jkh

Resurrect / implement some of the more esoteric scripting features,
such as partitioning a disk or overriding an interactive prompt.


# 23729 11-Mar-1997 jkh

Fix a long-standing bug with the label editor I just found (you could
mount two dos partitions with the same name).

Neaten up a dialog box that was encroaching on the right edge.


# 23529 08-Mar-1997 jkh

YAMF22


# 22988 22-Feb-1997 peter

Revert $FreeBSD$ to $Id$


# 21971 24-Jan-1997 jkh

This is a patch that makes some of the "partitions" --> "slice" to be
more consistant in our use of the terms for differentiation between PC
partitions and traditional BSD partitions.

Submitted-By: obrien@cs.ucdavis.edu (David O'Brien)


# 21698 15-Jan-1997 jkh

Accept emacs-style editing keys for traversal and ESC as an abort character.


# 21673 14-Jan-1997 jkh

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


# 20247 09-Dec-1996 jkh

As Paul has just pointed out, much of my strncpy() usage was either
bogus or overly complex and really needed to be done more consistently
and sanely throughout - no question about it. Done.

Suggested-By: Paul Traina <pst@Shockwave.COM>


# 18744 06-Oct-1996 jkh

Correctly re-adjust current slice # when slices are deleted.
Beautify the code a little.


# 18687 04-Oct-1996 jkh

Various cosmetic tweaks.


# 18636 02-Oct-1996 jkh

Catch a clear() I missed.


# 18621 01-Oct-1996 jkh

Round 2.5


# 18619 01-Oct-1996 jkh

Installation cleanup, round II.


# 17404 03-Aug-1996 jkh

Try to make screen update more efficient (less flickering) by more
judicious use of dialog_clear_norefresh().


# 17397 03-Aug-1996 jkh

Fix an embarassing bogon in the key input code. I'll roll another snap
boot floppy for this one..


# 17376 01-Aug-1996 jkh

Clean up the results from getch().


# 17368 31-Jul-1996 jkh

Don't munge keystrokes.


# 17362 31-Jul-1996 jkh

Detect which partitions have already been created with `auto' so as not to create them
twice.

Various cosmetic tweaks.


# 17164 13-Jul-1996 jkh

Damn - looks like upgrade got broken along the way and it's not something
I usually test, so... :-( Guess we'll have to slide the tag forward on
these two files - Peter, could you do the honors? I've been up for the last
30 hours or so and I just *know* that any attempt on my part to do this would
probably end up deleting the entire repository somehow. :-)


# 17132 12-Jul-1996 jkh

Remove some suspect sector size calculations which are also the source
of some confusing messages from newfs (just judging by the number of people
who point them out, anyway).


# 17025 09-Jul-1996 jkh

Eradicate more lurking bogons.


# 16208 08-Jun-1996 jkh

Implement selective text attributes for the syscons vty / vt100 emulator
selection since an attribute which looks good on a color console doesn't
necessarily look good in an xterm.


# 16204 08-Jun-1996 jkh

Put back some changes I inadvertantly spammed with a cvs update.


# 15695 09-May-1996 jkh

Some cosmetic changes:

Make "selection bar" inverse video white-on-blue on color screens to avoid
it getting muddled up with popup dialogs.

Do disk selection in a more friendly fashion (for one thing, allow a
drive to be de-selected again if you change your mind).

Add a few strategic screen-saves to prevent corruption of screen contents
(thanks, Michael Elbel!).


# 15442 29-Apr-1996 jkh

Fix some display bogons in the label editor.


# 15440 28-Apr-1996 jkh

Don't stop /etc/sysconfig if we're `faking'.
More asthetic adjustments to menus.
Improve both the display efficiency and usability of the label
screen - it's now possible to label quite a few disks in the label editor.


# 15419 28-Apr-1996 jkh

Fix an ancient index list bug.
Make FTP re-initializion work.
Fix fix fix.


# 15383 25-Apr-1996 jkh

Quite a few changes:

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.


# 15355 22-Apr-1996 jkh

Bring this into sync.

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!


# 15242 13-Apr-1996 jkh

1. Update all the copyrights to delete useless clauses 3 and 4.
2. Change more of the menu code over to new system.
3. Streamline label editor.


# 15091 07-Apr-1996 jkh

Major surgery.

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.


# 14793 24-Mar-1996 joerg

Rename the usage of `private' to `private_data' to cope with the
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...


# 14725 20-Mar-1996 jkh

Accept DEL as a synonym for `delete'


# 14670 18-Mar-1996 jkh

Lots of fixes:

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.


# 14335 02-Mar-1996 jkh

Keep explicit newfs parameters, just set them differently.


# 14334 02-Mar-1996 jkh

Let fragment size default to 1K again - 2K is a little extreme.


# 12781 11-Dec-1995 jkh

Bring my changes forward from 2.1


# 12661 07-Dec-1995 peter

Update the -current sources from the 2.1 branch.

Approved (in spirit) by: jkh


# 10882 18-Sep-1995 peter

This mega-commit brings in Jordan's latest sysinstall version..
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...


# 9202 11-Jun-1995 rgrimes

Merge RELENG_2_0_5 into HEAD


# 8881 30-May-1995 rgrimes

Remove trailing whitespace.


# 8825 28-May-1995 jkh

Shrink the boot floppy by removing all extraneous stuff. Also increase
number of inodes.

Fix various bugs reported by Poul. Implement VTY switching.


# 8824 28-May-1995 jkh

Add various missing seat belts.


# 8820 28-May-1995 jkh

Fix bogon I introduced into dist extraction code last night.

Update to Poul's latest gripe list fixes.


# 8810 28-May-1995 jkh

Sync up with Poul.


# 8764 26-May-1995 jkh

This should fix the last of the ftp path problems.
It was all a bit more complex than it first looked.


# 8751 25-May-1995 jkh

Bring in all my fixes to Poul's gripe list as of last night.


# 8739 24-May-1995 jkh

Put back some changes that were smashed in yesterday's release tree
shoot-down.


# 8722 24-May-1995 jkh

Sync to latest ftp-capable sysinstall. We're getting there!


# 8705 23-May-1995 jkh

1. Bring in the first cut of Poul's ftp routines. We still don't
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.


# 8702 22-May-1995 jkh

Implement most of the CD extract code.
Clean up a few last display bugs.
Add sanity checking that makes sure user creates root and swap partitions.
Add swap partitions with swapon().


# 8681 21-May-1995 jkh

Try AGAIN to get the disklabel editor to do the right thing.
This is getting ridiculous. I may have to put the clear() back
and take the performance penalty, Poul.

Tweak the TCP/IP setup menu to look a little nicer.

Add lp0 to the list of available network devices (it was found before
but simply not described properly).


# 8679 21-May-1995 jkh

Stick in another strategic clear().


# 8677 21-May-1995 jkh

1. Start syncing up the network strategy code so that folks like Poul and
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.


# 8672 21-May-1995 jkh

Correct a display bug that Poul introduced with his last round
of optimizations. Add a check to make sure that root filesystems
are at least 20MB in size (this is just a thumbnail approximation,
and we can revise it later if necessary).


# 8669 21-May-1995 phk

The latest batch from me. Still some screen anomalies (One could consider
the entire libdialog one such :-( ) but functionally ok I think.


# 8668 21-May-1995 phk

label.c: wizard mode now returns;
disks.c: clrtobot() so that deleted stuff disappears.
disks.c: offset is signed (for OnTrack diskmanager)
system.c: don't setbuf(stdout,0), it's too slow.


# 8666 21-May-1995 phk

Make a fixit.flp target too.
Improve the search code for the -u # argument to newfs.


# 8665 20-May-1995 phk

Make newfs options work on rootfs.
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 !)


# 8659 20-May-1995 jkh

Don't clear the screen for every redraw in the disklabel and
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.


# 8641 20-May-1995 jkh

1. Fix a pathological bug I introduced in msgInfo(). Right idea, wrong
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.


# 8622 19-May-1995 jkh

Big Sigh. Both A_BOLD and A_UNDERLINE do not appear to work with
syscons (and/or cons25) at all. This code looked just fine running
on an xterm, but on a console the attributes are all wrong. I
now have to sacrifice some screen real-estate to pring cheesy
`-' characters to accomplish the same thing.


# 8621 19-May-1995 jkh

Switch to bold on the header line - the A_UNDERLINE handling appears to be
broken in syscons, or at least in the cons25 termcap entry! :-( A_BOLD
won't show up on monochrome adapters (I don't think) but they'd be screwed
anyway since I don't have an attribute to use for them now at all.


# 8613 18-May-1995 jkh

Use raw devices for newfs.
Write and wizard mode only on enabled disks.


# 8611 18-May-1995 jkh

Use CHUNK_BSD_COMPAT as God and Poul intended it be used.


# 8589 18-May-1995 jkh

1. Primitive bad144 support (I believe an additional command is needed, but
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.


# 8581 17-May-1995 jkh

1. Set a path to /stand by default.
2. Don't clear() when I can dialog_clear().


# 8577 17-May-1995 jkh

Remove the seat-belts from the root partition creation code; for some
reason I'm *always* getting CHUNK_PAST_1024 set now, even when it's
definitely not! :-( Poul, can you perhaps take a look? Thanks!


# 8576 17-May-1995 jkh

Commit my latest so that Gary can sync up - this version should also
be the grounds for our first round of testing in the release I'm rolling.
It doesn't load the distributions yet, but it should do everything else.


# 8556 16-May-1995 jkh

This will now compile and even scribble helpfully on your disks.
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!).


# 8549 16-May-1995 jkh

This does _not yet compile_; I'm simply bringing in my changes from
this weekend in order to more easily sync with my CVS tree at home.
Another commit relative to these changes will follow shortly.