Commit Graph

34 Commits

Author SHA1 Message Date
dsl
5fd32d4f19 Give all the space to / even when the BIOS can't quite read all of it.
Usually the unreadable part will be swap, but remove it from root even
if swap is not selected.
The user can always put it back on the next screen.
Saves sysinst allocating /usr when the bios geometry excludes the last
few MB of the disk (32 on one disk I have).
2005-02-20 20:42:36 +00:00
dsl
102f557a3b Ensure we only remove the size of /usr from that of / once.
Fixes PR install/28568
2005-01-21 17:02:40 +00:00
dsl
9146a4af0b Default to using 2k fragments (16k blocks) on filesystems that are >1GB.
Matches the defaults advertised in the newfs(8).
Perry keeps on asking me to do this :-)
2005-01-20 21:59:35 +00:00
dsl
29306cabe7 Default to input in MB for all architectures (MB are cylinder aligned).
Move info about cylinders to the 'ask for units' menu.
  (translations need checking, done by cutting sentences)
Stop i386 always asking for units.
Use BIOS cylinders for MBR and disk cylinders for the disklabel.
  (code intended to do this, but got it wrong...)
Mark some menus as 'sub menu' or MC_SUBMENU so that the screen underneath
  is saved.
Add GENERIC.MPACPI to i386 menu.
2004-08-14 16:06:36 +00:00
dsl
da414ff103 Remove the globals ramsize and rammb, the former was only ever used inside
a single function, the latter is now the return value of get_ramsize().
Changed all uses of rammb to get_ramsize().
Used the 64bit HW_PHYSMEM64 so silly things don't happen if the memory size
approaches (or even exceeds) 4GB.
2004-07-17 10:55:03 +00:00
christos
3a471759da PR/26201: Jukka Salmi: sysinst dumps core on NetBSD 2.0_BETA i386
The problem is that current_cylsize is used in the menu to select
rounding, and it is un-initialized at this point.
XXX: Must be pulled up to 2.0
2004-07-12 22:33:21 +00:00
christos
2fe9365746 Get rid of the EXTERN/INIT mess; fix so that we can process this with xstr(1).
Not worth processing though, since on the i386 we only save ~3K.
2004-06-06 06:06:59 +00:00
dsl
ad184b340b Kill emptylabel() is doesn't DTRT since it doesn't know the size of the array.
Fixes breakage caused by copying oldlabel to bsdlabel for update.
Don't look for 'last mounted' in first alternate superblock.
2004-03-26 19:55:13 +00:00
dsl
31d8f670de - Change enum for partition numbers from [A..Z] to PART_[A..P] (16 is enough)
- Rename run_prog() to run_program() and remove the 'errmsg' argument (almost
  never used).
- Be consistent about #define<space> in defs.h
- Allow BSDFFS partitions to be FFSv1 or FFSv2 (fixes PR install/23547)
- i386: install correct bootblocks for root filesystem type.
- Do 'fsck -p' before all mounts (but never a full fsck), rename fsck_xxx()
  to mount_xxx() and remove some wrapper functions.
- Allow root to be an APPLEUFS partition - and allow them to be newfsed,
  should fix PR install/23198
- Redo fstab processing for upgrade to avoid large static data items and
  memory leaks.  Change walk() to abort on user defined error.
  (the fstab stuff really needs more work though...)
- i386: 'Warp' cursor to alternate option when selecting console/bootblocks,
  should fix PR port-i386/23546.
- Allow MENU_ok and MENU_yesno to take user defined title.
- Ensure that mountpoint not defined for swap (and similar issues) when
  editing netbsd label.
- Tweaks to error handling in run_program(), allow user to say that errors
  are expected or that the display shouldn't be cleared before returning.
- Remove some old code that has been festering under #if 0
2003-11-30 14:36:43 +00:00
dsl
b528ce0e0b Don't take the size of an mfs /tmp off the free disk space,
nor count a partition for it.
(Maybe the size of /tmp should be capped by that of swap.)
2003-11-20 09:47:53 +00:00
dsl
7ef7a3f227 Checkpoint a load of changes - seems to work ok still.
- rework run_prog() so that the program name (etc) is usually displayed if
  the program generates any output, or terminates with an error.
  Allow arguments to included in single quotes.
  Try to collect console output so it doesn't interfere with curses.
- Add a '*' to the cylinder count if non-integral number of cylinders
  (on disklabel editor)
- Only show partition type for unused partitions.
- Show size including unused space on '+' partition, remove a..z since
  the don't relate to partition IDs (netbsd partition sizes)
- Fix deleting of 'user' partitions - killed size of next ptn.
- Don't default a swap partition is the disk already has one.
- Fix deleting of extended MBR partitions - changed size of ptn 2.
- Show error message if user tries something illegal in mbr editor.
- Default to old diskname (actually disk type - dunno why!)
- Use MI enable_rc_conf() to set RC_CONFIGURED=YES, use a single sed
  command instead of a raft of code playing with files etc.
- Float some menus to just below header text, saves counting and lets
  language variants have different height headers (use y=-1)
- Track whether anything is mounted on /mnt2 better.
- Put more texts into message file.
- Change english prose texts to be more correct.
- Stop french and polish versions core dumping if ptn start/size changed.
- Fix processing logic for saving /etc (action is still borked)
- Do tail-end setup if any sets (eg X) can't be found (but not if you give
  in (yet)).
2003-10-19 20:17:31 +00:00
dsl
a6c235d09a Include '+' in default for partition size.
If partition size input as '+', treat as 1 cylinder and '+'.
Set default sized /usr if all space can't be given to root.
2003-09-27 10:16:33 +00:00
dsl
96ace5d58c Remove 'menu_ent' parameter from action routines.
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'.
2003-07-27 07:45:08 +00:00
salo
8d1781e39d netbsd.org->NetBSD.org 2003-07-26 17:06:22 +00:00
dsl
7f5beafa6b Sprinkle a load of consts, and change a few variable names.
Now compiles with WARNS=3.
2003-07-25 08:26:21 +00:00
dsl
0e919832bd Another pass of the rototiller. Mainly:
1) New MBR editor
2) Hierarchic timezone menu
2003-07-07 12:30:19 +00:00
dsl
17ae477780 Implement a limit on the size of / so that its guaranteed readable by the boot code.
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
2003-06-14 12:58:45 +00:00
dsl
88e7a0c7dc Report actual minimum size of partitions (instead of a number that is
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.
2003-06-13 11:45:49 +00:00
dsl
31a2215cd0 Fix window size when asking for partition mount pt and size.
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'.
2003-06-11 22:17:03 +00:00
dsl
3316b2a3d8 Use dynamic menu for final editing of partition stable 2003-06-10 17:47:15 +00:00
dsl
99d1eb21d4 Add (back) support for mfs /tmp
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.
2003-06-06 21:37:13 +00:00
dsl
8e9ba8b898 Fix build if MAXPARTITIONS is 8 2003-06-06 19:04:55 +00:00
dsl
d19795892c A rototil of the partition size requesting code. 2003-06-04 20:05:12 +00:00
dsl
19b2fb2fb0 Add NULL to all process_menu() calls - value is passed through to the
action routine.
Make the french and polish versions compile.
NB needs a new version of menuc - so need 'build.sh tools'
2003-06-03 11:54:48 +00:00
dsl
b62cbc21e9 Make all architectures (except amiga and mac68k) use the MI make_bsd_partitions.
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).
2003-05-30 22:17:00 +00:00
dsl
4b8e98ee2a Further collapsing of MD code:
- 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...)
2003-05-30 11:56:23 +00:00
dsl
4ed96ba68a Use local partstart and partsize.
Add code that might let this code add the boot partition for the 2 ports that need it.
2003-05-29 17:53:24 +00:00
dsl
6fb33c4537 Reduce the number of global variables slightly, use the ones that are
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.
2003-05-21 10:05:20 +00:00
grant
0b81a2c68e set root partition default bsize and fsize. 2002-08-02 05:11:29 +00:00
mrg
1f4e0ae80c fix compile lossage on i386.
move some data & a function from bsddisklabel.c to disks.c.
2001-01-14 23:45:16 +00:00
mrg
d436dd6641 extend sysinst disk handling, some general clean ups, better /etc support
and some sparc64 fixes.  details:

- new scripting_{,v}fprintf() that also write to the script log (if open).
- support of creation of LFS filesystems
- standard installs now allow one to choose which file systems to create,
out of the list of /usr, /var, /home, MFS /tmp, and swap.  a / is always
created, but the rest all optional. [*]
- new disklabel method: use existing.  this requires one to fill in the
mount points (and having at least a "/" is enforced).
- preservation of existing filesystems (at install) is supported.
- rewrote most of make_fstab(): the entire thing is generated from the
bsdlabel now, rather than hard coding / to 'a' and swap to 'b'.  create
MFS /tmp if requested.
- if IPv6 support isn't present, don't display any ipv6 messages.
- better rc.conf support
- sparc & sparc64 default to "cylinders" now.
- choosing "standard" instead of "standard with X" de-selects the X pkgs
by default.
- sparc64: don't install bootblocks until we have a complete system, avoids
booting with no /dev/console.
- sparc64: bump STDNEEDMB, it is way low.


[*] i have added default values for DEFVARSIZE & DEFUSRSIZE (this is used
only if /usr and /home are selected) to each port, based on STDNEEDMB.  as
such, my guesses might be wrong so port maintainers should look at these.
2001-01-14 02:38:13 +00:00
mrg
8da46e6897 de-__P()-ify 2000-12-22 10:12:12 +00:00
fvdl
97965ecea8 Convert ask_sizemult to take an argument, so that MBR using ports can
actually call it with the right sectors per cylinder size during
MBR partitioning.
2000-03-14 22:42:48 +00:00
abs
c15135486d Add generic make_bsd_partitions() in bsddisklabel.c useable by virtually all
orts. Since port specific information is in appropriate arch/.../md.h
bsddisklabel.c is currently #included by arch/.../md.c.
I'm not totally happy about this, but my concience is somewhat salved by the
overall reduction in breakage.
Initially only pmax, sparc, vax and x68k are using bsddisklabel.c.
While I'm here adjust defs.h for more than eight partitions in a generic
fashion.
1999-08-16 08:29:04 +00:00