Subject: Re: updating netbsd
To: Conrad T. Pino <Conrad@Pino.com>
From: Luke Mewburn <lukem@netbsd.org>
List: netbsd-help
Date: 01/01/2003 08:12:39
On Tue, Dec 31, 2002 at 05:19:20AM -0800, Conrad T. Pino wrote:
  | On Behalf Of joerch:
  | > hi
  | > 
  | > i have two questions and hope you can help me.
  | > 
  | > first, i search for a howto update my netbsd box ?
  | 
  | The update method varies by version.  For example updating
  | to 1.6 from a prior version is a binary install because
  | you can't compile the 1.6.x source with earlier versions.

This is not strictly correct...

NetBSD 1.6 was the first release of NetBSD that was enhanced so
that it can generally be cross-compiled from other operating
systems, which includes:

    *	older NetBSD releases (NetBSD 1.5, although earlier releases
	might be supported and if people try them and they fail,
	send-pr the details and we might be able to fix it).

    *	NetBSD running on other architectures (NetBSD 1.6 was built
	for 40 platforms on two architectures; an alpha for alpha &
	sparc64, and an i386 for the rest)

    *	other UNIX variants such as Solaris, Linux

    *	other "POSIX" environments such as Cygwin (this is not
    	functional yet)

Basically, use "build.sh" at the top level of the source tree to build
a full release to a DESTDIR with something like:
	./build.sh [otheropts] -D /some/destdir -R /some/releasedir
and when that succeeds, you'll find a full release under /some/releasedir.
Install a kernel from there, reboot, extract the sets (except etc.tgz)
to `/', extract etc.tgz into a temp dir and run postinstall as
documented in the "upgrading netbsd" section of the INSTALL notes.


NetBSD-current has an easier mechanims which avoids building a full release.
To (cross) build a new kernel:
	./build.sh -k SOME_KERNEL
(where SOME_KERNEL is in sys/arch/${MACHINE}/conf).
To build a full distribution and copy to / when completed:
	./build.sh [otheropts] -D /some/destdir -i /


Luke.