add support for setting mount options of async, noatime, nodevmtine and softdep.
add noauto if 'mount' was not requested.
add entry for /proc (with noauto)
Display fragment size and block size on the correct line.
Ask for numeric fragment size (not # fragments/block).
Show one unused partition when editing disklabel.
Zap all fields when a partition is made FS_UNSED.
Tweak some menu texts (a space at the end of a line causes a line break!).
Simplify code that displays output from commands - curses is requied to not DTRT
with CR/LF sequences, I need to revert libcurses :-(
to sysinst's main process when a command is run (eg the file list from pax).
Since the pty is in 'packet' mode, the boundaries of the pty reads would
need to be preserved in order to detect control records.
If the pipe became full the main process could treat part of a filename
as a control byte and then save the rest of the name as tty settings.
The effect of 'random' tty settings is unknown, but could be responsible
for core dumps while displaying the full file list from pax.
I suspect that the extra pipe was originally used because select wasn't
supported on the master side of a pty (not checked).
Also cd out of /targetroot if set installation is killed with ^C ^C.
Add menu for all disklabel partition types.
Default 'partition type' and 'sizechoice' menus to current value.
Change 'standard/use existing' to 'set sizes/use existing'.
Remove one or two fixed length strings (use malloc etc instead).
Change a lot of 'if (strlen(x) == 0)' to 'if (x[0] === 0)'.
Let user skip network config if any non-loopback interfaces are UP.
Always free() buffer allocated by collect(), could be a massive leak.
Whitespace changes.
whenever a command was run. Maybe a screen redraw is required if the
command is able to corrupt the screen - but the refresh was happening
much too early to fix that, and it would be better to collect/discard
the commands output anyway.
When asking for bios geometry, ask for sectors per track and heads
then calculate cylinders from volume size.
Write MBR_MAGIC into correct place when writing extened partitions.
Make disk_desc[], disk and numdisks local to get_disks (instead of globals).
Fix a little fallout from the above.
A bit of mbr.c was missing #ifdef BOOTSEL...
Remove the abberant call to endwin() in i386 md_update() that caused
echo to be left on. I've not removed the endwin from the other ports.
Only run MAKEDEV if etc.tgz installed.
Some extra sanity checks on an 'rm -rf %s'.
program/tool from "FOO" to "TOOL_FOO". The new variables are:
TOOL_ASN1_COMPILE TOOL_CAP_MKDB TOOL_CAT TOOL_CKSUM TOOL_COMPILE_ET
TOOL_CONFIG TOOL_CRUNCHGEN TOOL_CTAGS TOOL_DB TOOL_EQN TOOL_FGEN
TOOL_GENCAT TOOL_GROFF TOOL_HEXDUMP TOOL_INDXBIB TOOL_INSTALLBOOT
TOOL_INSTALL_INFO TOOL_M4 TOOL_MAKEFS TOOL_MAKEINFO TOOL_MAKEWHATIS
TOOL_MDSETIMAGE TOOL_MENUC TOOL_MKCSMAPPER TOOL_MKESDB
TOOL_MKLOCALE TOOL_MKMAGIC TOOL_MKTEMP TOOL_MSGC TOOL_MTREE
TOOL_PAX TOOL_PIC TOOL_PREPMKBOOTIMAGE TOOL_PWD_MKDB TOOL_REFER
TOOL_ROFF_ASCII TOOL_ROFF_DVI TOOL_ROFF_HTML TOOL_ROFF_PS
TOOL_ROFF_RAW TOOL_RPCGEN TOOL_SOELIM TOOL_SUNLABEL TOOL_TBL
TOOL_UUDECODE TOOL_VGRIND TOOL_ZIC
For each, provide default in <bsd.sys.mk> of the form:
TOOL_FOO?= foo
and for the ${USETOOLS}=="yes" case in <bsd.own.mk>, provide override:
TOOL_FOO= ${TOOLDIR}/bin/${_TOOL_PREFIX}foo
Document all of these in bsd.README.
This cleans up a chunk of potential (and actual) namespace collision
within our build infrastructure, as well as improves consistency in
the share/mk documentation and provision of appropriate defaults for
each of these variables.
This should stop the i386 code splatting all over the start of the disk
during upgrade.
Upgrade will still use partition 'a' (unless you loop through the install
far enough first!)
Actually this needs changing to use /usr/sbin/etcupdate (or similar),
but the script needs fixing first.
Might be better for sysinst to have its own copy, gets to be fun to run
because you have to pull the commands from the target FS.
Use swapctl() for all swap operations.
Remove md_upgrade_mbrtype() from arc and hpcmips ports.
(I haven't finalised what I'm doing about type 165 partitions, but the
existing code is borked.)
Remove pointless 'len' parameter from read_mbr and write_mbr.
Make read_mbr initialise mbr if it can't be read (delete MD code).
Make i386 always ask at least once about the bootcode.
Move LIB_MOVE and LIB_COUNT from md.h to aout2elf.c
Make same function return useful defaults if it can't find an answer.
Make all ports default to the useful defaults if bios geometry is unknown.
Move some messages to mbr set from mi set.
Fix i386 code that selects which bios disk, simplify interface to menus.
Remove now unnecessary global data from many ports.
4 times system memory). (These numbers need moving to a different menu still.)
Remove size of /usr from default sized / when /usr created.
Shrink swap in order to get partitions into available disk space.
Add twice ram size to / if space available (for system dumps).
Keep all but last partition cylinder aligned when the disk isn't a whole
number of cylinders.
Hack to give free space to a default sized /usr
Add extra space to / and /usr is any of the X sets are included.
Remove last reference to 'layoutkind == 3'.
I've also made the set selection happen first. This lets me test it!
also measn the selected sets could be used in the disk partition code.
Removed the 'with X' disk layout question (now too late to change the sets).
Fix menu size so that user defined partitions can be allocated instead of
standard ones (need > MAXPARTITIONS entries in menu).
Make partition size info static - with a view to including it in a longer loop.
Update lists for ramdisks to include the required files.
NB /usr/sbin/installboot is not used by sysinst and is only in ramdisk-big.
Increase the sizes of the ramdisks, there is plenty of space in all the
boot floppies except rescue-tiny (2k) and boot-tiny (32k).
This does change the default size of /, but I'm going to rewrite
make_bsd_partitions next to make it less user-hostile.
(I'm not sure adding in 2 * ram is actually useful! Especially size it left
/usr with a -ve size on all my test installs with 256MB ram and 1GB disk)
Make bootsel code delete menu names if the partition is unused.
Use raw device for cdrom access (I've a kernel that doesn't report an invalid
label so /dev/cd0a dosn't work).
- make_bsd_partitions() correctly handles PART_BOOT
- use bsddisklabel.c for pc532 and sgimips (this does change the default size
for the root partition, as it no longer includes twice the memory size).
- Change way ports define disk_names[] (in particular this lets me add "vnd"
for testing), also ensures all ports pick up new drivers.
I've make most ports use the default "wd", "sd", "ld".
Abort the search for disk units if we get ENOENT (ie no /dev entry) to
speed up the case where we are looking for a disk type that isn't
supprted by the port.
(it is possible we could just check all possible disks on all ports...)
left consistently.
Make the i386 install let you partition a disk beyond the CHS limit if the
system bios doesn't support LBA reads (the checks aren't ideal yet).
Make the bsddislabel.c code usable onan i386 system - but don't use it yet.