Commit Graph

277 Commits

Author SHA1 Message Date
simonb c6f8d15017 md_post_newfs() now returns int after the latest round of changes. 1999-04-16 15:42:32 +00:00
simonb 7e09f8d2f8 Descend into sysinst directory if sysinst/arch/${MACHINE} exists. 1999-04-16 10:10:24 +00:00
ender 3a4b99f66e Make this compile again. 1999-04-16 08:29:15 +00:00
bouyer 88c3275af3 Add wclear()/wupdate() before MSG_makedev, bits of the previous screen
were left.
1999-04-15 12:25:54 +00:00
nathanw d69ac94192 Make this compile again (a return -> return foo was missed when
md_copy_filesystem was made to return an int in 1.10).
1999-04-15 05:01:04 +00:00
bouyer de3024ade3 Correct some bugs in mbr handling, which could lead to invalid partition
tables being written on disk:
- when counting non-BSD partitions, use part[i], not part[0]
- when using full disk for NetBSD, initialise all the fileds of the
  mbr entries (especially flags)
- When converting to on-disk format, if start and size = 0, initialise
  c/h/s to 0 for both start and end. convert_mbr_chs() would make an entry
  0/0/0, 0/0/1 which is not bogus, but not what we really want either.
1999-04-14 16:00:42 +00:00
bouyer 0e3751fa5f If there is no files to delete, return 1 (success), not 0. 1999-04-14 12:47:27 +00:00
bouyer 8d7cb08335 Main change: add a cleanup_dist() function in util.c which will do the needed
cleanups before extracting a set. Should'nt do anything for an install,
as the filesystem shouldn't contain files that need to be removed.
cleanup_dist() is called before extract_file() for each set (the set name
is passed as parameter). It will open a file /dist/<set name>_obsolete
if it exists. This file should contain a list of files (absolutes
pathnames) that needs to be removed. cleanup_dist() will lstat() each file
to determine if it's there and if it's a directory or not.
It will then unlink() entries that are not directories and then rmdir()
directories. If a directory is not empty (it should now if the list of files
is correct) it will be renamed to <directory.old> and the user will be warned.

Other changes:
- move prototype of target_prefix() in defs.h, don't maintain a copy
  of it in each file.
- in install.c, after MSG_disksetupdone, do a wclear(stdscr) (display was
  clobbered after it).
- kill MSG_openmsgbuf, it's not used anywhere
- after MSG_disksetupdone in upgrade, don't call MENU_ok, do it the
  same way as in install.
- add wclear(stdscr);/wrefresh(stdscr); before calling MENU_distset (another
  display problem ...)
- While I'm there, move ask_verbose_dist() before MENU_distmedium. This way,
  if all go well the user can go away one ftp starts and come back once
  sets are extracted.
1999-04-13 20:17:47 +00:00
bouyer 5c7e21f9cb - Add a message explaining the user how to specify units for inputs
- in run_prog(), do an explicit wclear(stdscr); wrefresh(stdscr);
  before launching subwindows. This seems to solve all the display
  problems associated with run_prog().
1999-04-13 14:49:56 +00:00
bouyer be743ed36b - Add 2 functions in label.c, getpartoff()/getpartsize() used to let the user
enter partitions offet and size. The user can chose unit independantly of
  the unit used for display ('M'/'c'/'s'). These functions do the proper
  bound checks and alignement/roudups. Used in the edfspart menu and
  i386 md_make_bsd_partitions() (other ports should do the change as
  well).
- now that getpartsize() does the rigth thing, kill the swapadj hack (which was
  buggy anyway).
- in i386 md_make_bsd_partitions(), don't propose defaults that don't fit on
  the disk. If the disk is too small, fallback to custom instead.
- fix a bug in mbr.c, where the partition flags would not have always been
  reset. sysinst created me a MBR with 2 active partition. The boot code
  doesn't like it :)
- added a message for eventual mount failures.
- killed donewfs and extracting messages, as we run  the commands in a
  subwindow these messages just flashed on the screen.
- Changes a few exit(1) to return(1), to give the user a second chance.
- added msg_clear() or wclear(stdscr) in a place or two, to make
  display a bit nicer.
- in run_cmd(), if the command succeeded, don't wait for the user to
  press enter.
1999-04-11 22:40:19 +00:00
jonb fb618761b7 Make this compile again... fix a couple of small typo's 1999-04-09 12:44:44 +00:00
bouyer 72d28a06a3 Oups, missed a lot of run_prog() calls when I changed the prototype. 1999-04-09 10:43:56 +00:00
bouyer 04f9354ab3 Some fixes for the do_install() function:
- Make all the functions called from do_install() return an error code,
  so that we can abort install if something went wrong.
- Add a 'errstr' argument to run_prog(), which if not NULL is displayed
  with msg_printf() and followed by process_menu(MENU_ok) if the command fail.
  Used to warn the user that the current action is aborted.
- in a few places use msg_display() or msg_printf() rather than printf.
  It seems that stdout/stderr are not always pointing to the active curses
  window.
- garbage-collecd unused messages, add a few new one (error handling).
XXX only tested on i386. Other md parts should be tested as well.
1999-04-09 10:24:38 +00:00
bouyer a17071efea Sync with .eng versions. 1999-04-08 12:54:52 +00:00
simonb 1c15941926 Remove any leading '/'s in the pathname component of the FTP URL.
When the complete URL is constructed, and '/' is inserted between
the hostname and the pathname components.
1999-04-07 13:09:55 +00:00
simonb f04624dfbf Remove single quotes from the ftp URL and remove the comment about
"protecting the URL from the shell."  run_prog() now breaks up it's
argument and calls execvp() directly, so there's no shell to be wary
off...
1999-04-07 05:18:49 +00:00
tsubai b8f166d4da Fix menu item number. 1999-04-06 09:31:40 +00:00
simonb e8f5904d9e Move prototype for disp_cur_part() from defs.h to mbr.h. 1999-04-05 06:59:36 +00:00
simonb 277c24dc4c Don't include <sys/disklabel.h> - "defs.h" does this us with the
right #defines so that we get the filesystem type names.
s/fstype/fstypenames/
1999-04-05 06:24:17 +00:00
fvdl 2eef6a3ee1 Make sure to get the magic MBR number right (i.e. use u_int16_t). 1999-04-03 22:56:22 +00:00
fvdl 793f57a4e6 Adapt setting of active partition to newer MBR handling. 1999-04-01 11:33:02 +00:00
fvdl a5d73e00eb Rework the MBR code, and some of the labelling code.
* Use structures, not 2-dimensional arrays..
	* Use the DIOCGDEFLABEL ioctl to get the disk information,
	  to avoid confusion with (older) labels.
	* Don't ever call fdisk for partitioning. This was the
	  source of much confusion.
	* For the i386, use the BIOS geometry information passed by
	  the bootblocks.

Lots of things left to do, but it's a start.
1999-03-31 00:44:48 +00:00
kleink 270c5e6806 Typo. 1999-03-28 17:12:12 +00:00
minoura 632ad8cde6 Use pax(1) instead of tar(1).
MD parts already have this change.  /usr/bin/tar can be removed from
the miniroot.
1999-03-26 09:24:27 +00:00
ender c32aac7964 Uncomment some file copies now that the files actually exist. 1999-03-26 08:52:44 +00:00
mark f7644e2429 Allow various X11 sets to be installed. 1999-03-26 03:03:37 +00:00
mark 1f8be737e2 Pull in cgd's improved filecore bootblock checksumming code from
sys/arch/arm32/arm32/disksubr_acorn.c
1999-03-26 03:02:45 +00:00
garbled d1407362ba More and more .Os cleanups. .Os is defined in the tmac.doc-common file,
so we shouldn't override it with versions in the manpages.  Many more to
come.
1999-03-22 18:43:46 +00:00
ross ac722a849a Bug fix: deal with race-like (select(2) vs wait4(2)) error flow bogon. 1999-03-22 09:02:47 +00:00
ender e7a6b35eae The sysinst utility for NetBSD/mac68k. From Bob Nestor <rnestor@metronet.com>
in PR #6867 with some cleanup by me.
1999-03-22 08:37:31 +00:00
he 2efafeabaa Add note about /usr/include/machine and e.g. /usr/include/i386 on upgrade. 1999-03-19 15:44:59 +00:00
perry 0547e6d3b2 URLs can't safely contain certain characters unless they are %XX hex
encoded. This means certain passwords, usernames, etc., will not work
with "ftp ftp://...."

This code, submitted by Alan Barrett <apb@iafrica.com>, fixes this by
hex encoding unsafe strings in a clean fashion. This should close a
couple of outstanding PRs. Thanks Alan!
1999-03-19 14:49:07 +00:00
simonb 826dd9708b Add "Set root's shell and password." 1999-03-17 12:42:42 +00:00
fvdl a4ca20e23e Start cleaning up geometry code by storing the disk geometry in a structure
with proper names, not an integer array with is numerically indexed.
1999-03-14 14:19:05 +00:00
ender 5a333883e0 Fix a typo. 1999-03-13 23:17:04 +00:00
sommerfe 93c6dea365 Make it more clear where this came from. 1999-03-13 19:11:54 +00:00
sommerfe a8ff351bae Warnsify.
Add reduced version of getcap routines, so sysinst need not drag in
the database goop via libtermcap.
1999-03-13 19:08:43 +00:00
marc a08745a0e8 if exec fails, perror() and _exit(). exit() is no good, because if
the child runs the atexit cleanup() function, the filesystems get
unmounted and things lose.
1999-03-11 16:48:27 +00:00
he 1a36836b8e If TIOCGWINSIZE returns 0 x 0, default to 80 x 24 instead of crashing. 1999-03-09 19:30:00 +00:00
garbled c6d6153ab6 Found another case of shell redirection in a run_prog. Tidy it up with
do_system, and appropriate logging calls.
1999-03-08 19:42:30 +00:00
is 2c7fa23c38 Fix Copyright dates 1999-02-16 23:34:10 +00:00
is dc068e0d1f Assign my files to The NetBSD Foundation, Inc. 1999-02-16 22:46:55 +00:00
lukem dcab0210a0 convert from NOxxx= to MKxxx=no.
include <bsd.own.mk> if testing a MKxxx variable.
1999-02-13 02:54:17 +00:00
kleink b75d68301e <sys/fcntl.h> -> <fcntl.h> 1999-02-12 15:04:00 +00:00
he ff15f486fc Move extern declaration of do_system() from run.c to defs.h, used by i386/md.c 1999-02-01 14:08:35 +00:00
garbled ed77015dc8 When special casing these commands with do_system, remember to add
manual logging and scripting calls, so everything is recorded in it's
proper location.
1999-01-25 23:55:10 +00:00
garbled 851ee9e397 1) Remove all vestiges of tar from src/distrib. Use pax and appropriate
commandlines for all tar operations.  (work supplied by Matt Green)
2) Update arch/*/md.c to deal with new sysinst/run.c.  Special case
anything that needs to do a redirect or a pipe.
3) #if 0 some unused code in target.c. This code will need to be updated,
or special cased with do_system.

Big thank you to Matt for all his work on this.
1999-01-25 23:34:20 +00:00
garbled 5a277f5dfd Fix thinko. Thanks to mrg. 1999-01-23 15:54:31 +00:00
garbled 10218daeef Correct some oversights in the sysinst conversion. arch/alpha/md.c and
others allready had these fixes.
1999-01-23 06:19:17 +00:00
garbled 232877f475 Forgot to check this one file into the tree with sysinst. 1999-01-23 06:11:51 +00:00