Home | History | Annotate | only in /src/distrib/amd64/installimage
History log of /src/distrib/amd64/installimage
RevisionDateAuthorComments
 1.23 22-May-2022  jmcneill Restore Makefile.installimage include after variables are set. Makes amd64
USB install images bootable again.
 1.22 08-May-2022  mrg fix building amd64 with USE_XZ_SETS=no.

bump the size of images if USE_XZ_SETS != no. consolidate a lot of
the code between installimage/Makefile and installimage-bios/Makefile
into installimage/installimage.mk.
 1.21 03-Jan-2022  martin There is no point in putting a second sysinst binary into the install
image's root filesystem.
 1.20 31-Dec-2021  pgoyette Still not big enough - bump some more.
 1.19 30-Dec-2021  pgoyette With recent changees to debug kernel stuff from Christos we are
once again pushing the size limit. Bump it again.
 1.18 26-Dec-2021  pgoyette Once again things have grown, so the install image allocation size
needs to be bumped.

XXX There's gotta be a better way to maintain this! :-)
 1.17 02-Jun-2021  pgoyette The install image grew again - update size
 1.16 26-Apr-2021  pgoyette branches: 1.16.4;
The image, with all sorts of MK*DEBUG* turned on, has once again grown.
This time probably as a result of the move to gcc-10.

Bump size to accomodate.
 1.15 26-Mar-2021  pgoyette The install-image has grown a bit recently, and at least amd64 has
outgrown the previous size specification when the system was built
with all of MKDEBUG, MKKDEBUG, and MKDEBUGLIB set to "yes" (and
also when in-tree X11 is included).

So, bump the size a bit.
 1.14 18-Jan-2021  pgoyette Oooppss we need another size bump
 1.13 15-Jan-2021  pgoyette Install image built with all of MKDEBUG, MKKDEBUG, and MKDEBUGLIB all
set to "yes" is a bit larger, so bump the image size accordingly.
 1.12 28-May-2020  jmcneill Only install gptmbr.bin if USE_GPTMBR=yes
 1.11 27-May-2020  maya rename amd64 uefi-installimage to be just installimage.

Works for both purposes, no confusing name.
 1.10 15-Dec-2018  gson branches: 1.10.2;
Use the special device name "ROOT." in /etc/fstab not just on the arm
images, but also on the bootable disk images of other ports, so that
they can be booted from differently named devices. Merge the i386 and
amd64 -live-sd0root and -live-wd0root images into a single live image
per port, bootable both from usb media and in qemu. Drop the -xx0root
suffixes from image names as they are no longer meaningful.
 1.9 18-Sep-2017  joerg branches: 1.9.2; 1.9.4;
Bump install image sizes. Clang alone adds 100MB+ for a full debug build
and that pushes the full MKDEBUG build over the constraints.
 1.8 19-May-2017  christos Bump a little to handle clang images.
 1.7 11-May-2017  martin Try to make images big enough for debug sets
 1.6 24-Jan-2016  christos branches: 1.6.6;
Grow!
 1.5 13-Sep-2014  roy Punt custom dhcpcd hooks in favour up upstream hooks
 1.4 26-Jul-2014  dholland branches: 1.4.2;
Adjust for sysinst move.
 1.3 03-Nov-2012  tsutsui branches: 1.3.8;
Allow overriding live-image and install-image sizes by
INSTIMAGEMB (for install-images), USBIMAGEMB (for x86 sd0root liveimages),
and EMUIMAGEMB (for other liveimages) variables.
Per discussion on current-users@:
http://mail-index.NetBSD.org/current-users/2012/10/29/msg021368.html
 1.2 17-Aug-2012  riz branches: 1.2.2;
Change the naming scheme of "live" images and usb install images
to incorporate the OS name and version.

XXX should also not hardcode ${BOOTDISK} in the name, but that would
require reordering stuff and more testing than I have time for right now.
Another day.

As discussed on current-users@ back in March, with some adjustments.
 1.1 22-Jan-2012  tsutsui branches: 1.1.2; 1.1.4;
Add "live-image" and "install-image" target support to build.sh.

"live-image" target builds pre-installed disk images that can be used on
emulators or boot from USB memory sticks to try NetBSD without installation.
Currently amd64, i386, pmax, sparc, sparc64, sun2, sun3, and vax
(which have working emulators and don't require extra tools like preparing
msdosfs or partitioning MD label structures) support this target.

"install-image" target builds an bootable installation disk image that can
be used as an install CD but burned into USB memory sticks etc.
Current only amd64 and i386 (which would support USB boot) have this target.

For more details (and known issue) see following posts on netbsd-bugs@:
http://mail-index.NetBSD.org/netbsd-bugs/2011/08/06/msg023639.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/09/23/msg024207.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/12/07/msg025166.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/12/08/msg025178.html

No particular comments about implementation, and
"go ahead" comments from mrg@, riz@ and christos@.

Closes PR toolchain/45153 and PR misc/45155.
 1.1.4.4 16-Jan-2013  yamt sync with (a bit old) head
 1.1.4.3 30-Oct-2012  yamt sync with head
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 22-Jan-2012  yamt file Makefile was added on branch yamt-pagecache on 2012-04-17 00:02:31 +0000
 1.1.2.1 17-Aug-2012  martin Pull up following revision(s) (requested by riz in ticket #506):
distrib/amd64/liveimage/emuimage/Makefile: revision 1.2
distrib/amd64/liveimage/usbimage/Makefile: revision 1.2
distrib/sun2/liveimage/emuimage/Makefile: revision 1.2
distrib/amd64/installimage/Makefile: revision 1.2
distrib/sun3/liveimage/emuimage/Makefile: revision 1.2
distrib/pmax/liveimage/emuimage/Makefile: revision 1.2
distrib/vax/liveimage/emuimage/Makefile: revision 1.2
distrib/sparc64/liveimage/emuimage/Makefile: revision 1.2
distrib/common/Makefile.bootcd: revision 1.20
distrib/i386/liveimage/emuimage/Makefile: revision 1.2
distrib/sparc/liveimage/emuimage/Makefile: revision 1.2
distrib/i386/installimage/Makefile: revision 1.2
distrib/i386/liveimage/usbimage/Makefile: revision 1.2
etc/Makefile: revision 1.398
Change the naming scheme of "live" images and usb install images
to incorporate the OS name and version.
XXX should also not hardcode ${BOOTDISK} in the name, but that would
require reordering stuff and more testing than I have time for right now.
Another day.
As discussed on current-users@ back in March, with some adjustments.
Install fully-populated .iso images in ${RELEASEDIR}/images instead
of ${RELEASEDIR}/iso, since we'll be putting non-iso images in there too.
Install live images and install images into ${RELEASEDIR}/images by
default, to keep all the large files (such as ISOs) together.
 1.2.2.2 19-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.2.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.3.8.1 10-Aug-2014  tls Rebase.
 1.4.2.1 14-May-2015  snj Pull up following revision(s) (requested by martin in ticket #759):
distrib/amd64/cdroms/Makefile.cdrom: revision 1.12
distrib/amd64/installimage/Makefile: revision 1.5
distrib/amd64/installimage/spec.inst: revision 1.2
distrib/common/10-resolv.conf: file removal
distrib/common/99-print-sysinst: file removal
distrib/common/Makefile.dhcpcd: revision 1.2
distrib/common/list.dhcpcd: revision 1.3
distrib/i386/cdroms/Makefile.cdrom: revision 1.32
distrib/i386/installimage/Makefile: revision 1.5
distrib/i386/installimage/spec.inst: revision 1.2
distrib/sparc64/cdroms/installcd/Makefile: revision 1.20
distrib/vax/cdroms/installcd/Makefile: revision 1.10
usr.sbin/sysinst/msg.mi.de: revision 1.4
usr.sbin/sysinst/msg.mi.en: revision 1.4
usr.sbin/sysinst/msg.mi.es: revision 1.4
usr.sbin/sysinst/msg.mi.fr: revision 1.4
usr.sbin/sysinst/msg.mi.pl: revision 1.4
usr.sbin/sysinst/net.c: revisions 1.5-1.8, 1.11-1.15
The dhcpcd utilties in pkgsrc require dhcpcd to be running in master mode.
So set dhcpcd to start like so, but restrict it to the configured interface
still instead of ifconfig_foo=dhcp.
--
Use the 20-resolv.conf hook from dhcpcd rather than the minimal one.
Extract configured information from resolv.conf and hostname instead
of scraping the last dhcpcd script run.
This will allow the use of DHCPv6 and IPv6RA DNS details in the future.
--
dhcpcd will already have configured the system at this point, so
don't bother writing it manually.
--
Don't prompt for hostname or domain if obtained from DHCP.
--
Change the display order so it's protocol agnostic at the top,
then IPv4 then IPv6.
--
Strip newline from the gateway correctly.
--
Show the IP6 address instead of yes
--
Fix a bogus gcc warning: dhcp_config may be used uninitialized
--
Punt custom dhcpcd hooks in favour up upstream hooks
--
For the benefit of gcc 4.5, rename a local "nl" variable to "nline",
so it doesn't collide with the global curses nl() function.
 1.6.6.1 19-May-2017  pgoyette Resolve conflicts from previous merge (all resulting from $NetBSD
keywork expansion)
 1.9.4.1 10-Jun-2019  christos Sync with HEAD
 1.9.2.1 26-Dec-2018  pgoyette Sync with HEAD, resolve a few conflicts
 1.10.2.1 31-May-2020  martin Pull up following revision(s) (requested by maya in ticket #933):

distrib/amd64/uefi-installimage/spec.inst: file removal
distrib/amd64/uefi-installimage/etc.rc: file removal
distrib/amd64/uefi-installimage/Makefile.bootimage: file removal
distrib/amd64/uefi-installimage/Makefile.installimage: file removal
distrib/amd64/uefi-installimage/install.sh: file removal
distrib/amd64/uefi-installimage/etc.ttys: file removal
distrib/amd64/Makefile: revision 1.14
distrib/amd64/uefi-installimage/boot.cfg.in: file removal
distrib/amd64/uefi-installimage/Makefile: file removal
distrib/amd64/installimage/Makefile: revision 1.11

rename amd64 uefi-installimage to be just installimage.

Works for both purposes, no confusing name.
 1.16.4.1 06-Jun-2021  cjep sync with head
 1.2 22-Apr-2019  maya Express more confidence in our ability to boot on hardware with ACPI
enabled and don't warn our users that it might not and already suggest
workarounds.

The ability to disable ACPI and SMP is still there, by dropping to
the boot prompt.
 1.1 22-Jan-2012  tsutsui branches: 1.1.4; 1.1.44;
Add "live-image" and "install-image" target support to build.sh.

"live-image" target builds pre-installed disk images that can be used on
emulators or boot from USB memory sticks to try NetBSD without installation.
Currently amd64, i386, pmax, sparc, sparc64, sun2, sun3, and vax
(which have working emulators and don't require extra tools like preparing
msdosfs or partitioning MD label structures) support this target.

"install-image" target builds an bootable installation disk image that can
be used as an install CD but burned into USB memory sticks etc.
Current only amd64 and i386 (which would support USB boot) have this target.

For more details (and known issue) see following posts on netbsd-bugs@:
http://mail-index.NetBSD.org/netbsd-bugs/2011/08/06/msg023639.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/09/23/msg024207.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/12/07/msg025166.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/12/08/msg025178.html

No particular comments about implementation, and
"go ahead" comments from mrg@, riz@ and christos@.

Closes PR toolchain/45153 and PR misc/45155.
 1.1.44.1 10-Jun-2019  christos Sync with HEAD
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 22-Jan-2012  yamt file boot.cfg.in was added on branch yamt-pagecache on 2012-04-17 00:02:31 +0000
 1.2 26-Feb-2020  riastradh kernfs no longer needs a hacky workaround to make rootdev appear.
 1.1 22-Jan-2012  tsutsui branches: 1.1.4; 1.1.44;
Add "live-image" and "install-image" target support to build.sh.

"live-image" target builds pre-installed disk images that can be used on
emulators or boot from USB memory sticks to try NetBSD without installation.
Currently amd64, i386, pmax, sparc, sparc64, sun2, sun3, and vax
(which have working emulators and don't require extra tools like preparing
msdosfs or partitioning MD label structures) support this target.

"install-image" target builds an bootable installation disk image that can
be used as an install CD but burned into USB memory sticks etc.
Current only amd64 and i386 (which would support USB boot) have this target.

For more details (and known issue) see following posts on netbsd-bugs@:
http://mail-index.NetBSD.org/netbsd-bugs/2011/08/06/msg023639.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/09/23/msg024207.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/12/07/msg025166.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/12/08/msg025178.html

No particular comments about implementation, and
"go ahead" comments from mrg@, riz@ and christos@.

Closes PR toolchain/45153 and PR misc/45155.
 1.1.44.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 22-Jan-2012  yamt file etc.rc was added on branch yamt-pagecache on 2012-04-17 00:02:31 +0000
 1.1 22-Jan-2012  tsutsui branches: 1.1.4;
Add "live-image" and "install-image" target support to build.sh.

"live-image" target builds pre-installed disk images that can be used on
emulators or boot from USB memory sticks to try NetBSD without installation.
Currently amd64, i386, pmax, sparc, sparc64, sun2, sun3, and vax
(which have working emulators and don't require extra tools like preparing
msdosfs or partitioning MD label structures) support this target.

"install-image" target builds an bootable installation disk image that can
be used as an install CD but burned into USB memory sticks etc.
Current only amd64 and i386 (which would support USB boot) have this target.

For more details (and known issue) see following posts on netbsd-bugs@:
http://mail-index.NetBSD.org/netbsd-bugs/2011/08/06/msg023639.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/09/23/msg024207.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/12/07/msg025166.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/12/08/msg025178.html

No particular comments about implementation, and
"go ahead" comments from mrg@, riz@ and christos@.

Closes PR toolchain/45153 and PR misc/45155.
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 22-Jan-2012  yamt file etc.ttys was added on branch yamt-pagecache on 2012-04-17 00:02:31 +0000
 1.4 16-Jan-2023  abs Enable basic command line editing in amd64 installer shells

When a user selects "exist installer" or hits ^Z in sysinst, the
calling install.sh runs a shell, plus shows a message indicating
they can type "exit" to return to the installer.

Add -E to the arguments to this shell, to enable command line editing,
(primarily for arrow keys, but basic emacs sequences will also work)

At this point this is only on amd64, as this is the port which is
least likely to be installing on particularly esoteric terminal
hardware, and is also likely to have the highest proportion of less
experienced users
 1.3 03-Jan-2022  martin branches: 1.3.2;
There is no point in putting a second sysinst binary into the install
image's root filesystem.
 1.2 03-Jun-2012  joerg Switch device database to cdb(5). Rework ttyname(3) and ttyname_r(3) to
depend on new devname_r(3) as heart. Add /dev/pts magic directly to
devname(3). While it can lead to returning non-existing paths, the
behavior is more consistent that way. Drop caching layer in devname(3),
it doesn't buy anything for the common case of having access to the
database. Teach devname(3) proper fallback behavior of scanning /dev.
Create both old-style and new-style database for now in /etc/rc.d/sysdb.
 1.1 22-Jan-2012  tsutsui branches: 1.1.2; 1.1.4;
Add "live-image" and "install-image" target support to build.sh.

"live-image" target builds pre-installed disk images that can be used on
emulators or boot from USB memory sticks to try NetBSD without installation.
Currently amd64, i386, pmax, sparc, sparc64, sun2, sun3, and vax
(which have working emulators and don't require extra tools like preparing
msdosfs or partitioning MD label structures) support this target.

"install-image" target builds an bootable installation disk image that can
be used as an install CD but burned into USB memory sticks etc.
Current only amd64 and i386 (which would support USB boot) have this target.

For more details (and known issue) see following posts on netbsd-bugs@:
http://mail-index.NetBSD.org/netbsd-bugs/2011/08/06/msg023639.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/09/23/msg024207.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/12/07/msg025166.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/12/08/msg025178.html

No particular comments about implementation, and
"go ahead" comments from mrg@, riz@ and christos@.

Closes PR toolchain/45153 and PR misc/45155.
 1.1.4.3 30-Oct-2012  yamt sync with head
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 22-Jan-2012  yamt file install.sh was added on branch yamt-pagecache on 2012-04-17 00:02:31 +0000
 1.1.2.1 23-Jun-2012  riz Pull up following revision(s) (requested by joerg in ticket #328):
lib/libc/gen/devname.c: revision 1.22
distrib/sparc64/instfs/dot.profile: revision 1.7
distrib/i386/cdroms/install.sh: revision 1.3
tests/lib/libcurses/director/director.c: revision 1.10
lib/libc/include/reentrant.h: revision 1.15
distrib/amd64/cdroms/install.sh: revision 1.3
tests/include/t_paths.c: revision 1.12
share/man/man7/hier.7: revision 1.101
etc/rc.d/sysdb: revision 1.24
include/stdlib.h: revision 1.99
tests/lib/libcurses/Makefile: revision 1.3
distrib/sparc64/cdroms/installcd/install.sh: revision 1.3
distrib/i386/cdroms/Makefile.cdrom: revision 1.27
lib/libc/gen/ttyname.c: revision 1.25
usr.bin/tic/Makefile: revision 1.2
tools/compat/Makefile: revision 1.57
lib/libterminfo/compile.c: revision 1.7
lib/libc/gen/ttyname.c: revision 1.26
lib/libterminfo/compile.c: revision 1.8
tools/compat/Makefile: revision 1.59
tools/compat/cdbw.h: revision 1.1
distrib/i386/installimage/install.sh: revision 1.2
lib/libc/include/namespace.h: revision 1.154
usr.bin/tic/tic.c: revision 1.13
usr.bin/tic/tic.c: revision 1.14
usr.bin/tic/tic.c: revision 1.15
distrib/sets/lists/base/mi: revision 1.996
usr.bin/tic/tic.c: revision 1.16
usr.sbin/dev_mkdb/dev_mkdb.8: revision 1.13
usr.bin/tic/tic.c: revision 1.17
usr.bin/tic/tic.c: revision 1.18
tools/compat/cdbr.h: revision 1.1
distrib/sparc64/instfs/list: revision 1.25
usr.bin/tic/tic.c: revision 1.19
lib/libc/cdb/cdbw.c: revision 1.4
lib/libc/cdb/cdbw.3: revision 1.4
lib/libc/cdb/cdbw.3: revision 1.5
share/terminfo/Makefile: revision 1.3
usr.sbin/dev_mkdb/dev_mkdb.c: revision 1.29
usr.sbin/dev_mkdb/Makefile: revision 1.8
lib/libc/gen/ttyname.3: revision 1.23
lib/libc/gen/ttyname.3: revision 1.24
lib/libc/cdb/cdbr.c: revision 1.3
include/cdbw.h: revision 1.2
distrib/sparc64/cdroms/installcd/Makefile: revision 1.15
lib/libc/gen/devname.3: revision 1.12
tools/compat/compat_defs.h: revision 1.85
tools/compat/compat_defs.h: revision 1.86
lib/libterminfo/term_private.h: revision 1.10
lib/libterminfo/term.c: revision 1.14
usr.bin/tic/tic.1: revision 1.10
lib/libterminfo/term.c: revision 1.15
lib/libterminfo/Makefile.hash: revision 1.5
lib/libterminfo/term.c: revision 1.16
distrib/amd64/installimage/install.sh: revision 1.2
share/man/man5/rc.conf.5: revision 1.152
distrib/sets/lists/tests/mi: revision 1.472
distrib/amd64/cdroms/Makefile.cdrom: revision 1.7
include/paths.h: revision 1.41
bin/ps/ps.1: revision 1.101
lib/libterminfo/terminfo.5.in: revision 1.16
usr.bin/tic/tic.c: revision 1.20
lib/libterminfo/terminfo.5.in: revision 1.17
Prefer __printflike.
Use queue(3)
Replace linear lookup with hash table, reducing runtime by 60%.
Use e* from util.h.
One more strdup -> estrdup.
Maintain nalias and nterm on the fly.
Add void for ttyslot prototype.
Use memcmp in place of strncmp, since length is known to no longer than
either of the arguments.
Fix a number of memory leaks. Keep final loop of the cleanup in tic(1)
under #ifdef __VALGRIND__ though.
Add __predict_true / __predict_false definitions.
Add a special seeder for cdbw_output that gives stable results.
Hook up cdbw(3) for the tool build.
Prototype for cdbw_stable_seeder.
Provide a usable thr_once for !_REENTRANT
Switch device database to cdb(5). Rework ttyname(3) and ttyname_r(3) to
depend on new devname_r(3) as heart. Add /dev/pts magic directly to
devname(3). While it can lead to returning non-existing paths, the
behavior is more consistent that way. Drop caching layer in devname(3),
it doesn't buy anything for the common case of having access to the
database. Teach devname(3) proper fallback behavior of scanning /dev.
Create both old-style and new-style database for now in /etc/rc.d/sysdb.
Switch terminfo(3) to cdb(5).
Fix typos.
Make Alan Barrett happy and add ().
Add cdbr(3) support to tools/compat.
Bump date for previous.
Relax consistency to make it possible to match valid entries.
Prefix devname's buffer with /dev/ as ttyname is supposed to return the
full path. Reported by Dave Huang.
 1.3.2.1 24-Feb-2023  martin Pull up following revision(s) (requested by abs in ticket #105):

distrib/amd64/installimage-bios/install.sh: revision 1.3
distrib/i386/cdroms/install.sh: revision 1.5
distrib/vax/cdroms/installcd/install.sh: revision 1.3
distrib/amd64/cdroms/install.sh: revision 1.5
distrib/sparc64/cdroms/installcd/install.sh: revision 1.5
distrib/i386/installimage/install.sh: revision 1.3
distrib/i386/installimage/install.sh: revision 1.4
distrib/evbarm/installimage/install.sh: revision 1.2
distrib/amd64/installimage/install.sh: revision 1.4
usr.sbin/sysinst/menus.mi: revision 1.28

Enable basic command line editing in amd64 installer shells

When a user selects "exist installer" or hits ^Z in sysinst, the
calling install.sh runs a shell, plus shows a message indicating
they can type "exit" to return to the installer.

Add -E to the arguments to this shell, to enable command line editing,
(primarily for arrow keys, but basic emacs sequences will also work)

At this point this is only on amd64, as this is the port which is
least likely to be installing on particularly esoteric terminal
hardware, and is also likely to have the highest proportion of less
experienced users

Enable basic command line editing in i386 installer shells
(Following the pattern in amd64)

When a user selects "exit installer" or hits ^Z in sysinst, the
calling install.sh runs a shell, plus shows a message indicating
they can type "exit" to return to the installer.

Add -E to the arguments to this shell, to enable command line editing,
(primarily for arrow keys, but basic emacs sequences will also work)

Switch install.sh to use /usr/sbin/sysinst for sysinst rather than ./sysinst
Matches i386/cdroms/install.sh and amd64/installimage/install.sh
resultant install image verified to still run sysinst correctly

Enable basic command line editing in evbarm, sparc64 and vax installer shells
(Following the pattern in amd64)

When a user selects "exit installer" or hits ^Z in sysinst, the
calling install.sh runs a shell, plus shows a message indicating
they can type "exit" to return to the installer.

Add -E to the arguments to this shell, to enable command line editing,
(primarily for arrow keys, but basic emacs sequences will also work)

With the change of all the install.sh scripts in amd64, evbarm,
i386, sparc64 and vax are identical apart from NetBSD RCD tags and
the sysctl -nx kern.consdev check (some of the latter are definitely
either wrong, or have an incorrect comment attached. Will return
to later)

Add "-i -E" to /bin/sh called from sysinst

This enables command line editing (primarily for arrow keys, but basic
emacs sequences will also work)

In the event that the shell has been compiled without command line
editing features (for memory contrained install environments) the
-E is ignored
 1.5 02-Feb-2025  tsutsui Use FFSv2 for amd64 live-image and install-image via new $IMGFFSVERSION.

Fixes PR/59007.
 1.4 14-Aug-2023  gdt branches: 1.4.2;
amd64 installimage: Reduce non-xz size slightly to fit 4GB flash drives

The installimage sizes were bumped in 2022 because of some growth, and
the case for not-xz sets went to 4000 (MiB). That's just over what a
lot of "4 GB" flash drives are, but seems obviously intended to fit.
The actual usage of the filesystem, from a current build from earlier
this year (with non-xz sets) is:

/dev/dk1 3.7G 833M 2.7G 23% /mnt

and similar for netbsd-10 built yesterday, so we can afford to shrink
slightly. Drop to 3800, which is still huge, but will make 4 GB flash
drives work.
 1.3 30-Jul-2022  pgoyette The new drm modules made the image file grow again! Bump the size
limit a bit.

XXX Other $ARCH might also need this.
 1.2 22-May-2022  jmcneill Restore Makefile.installimage include after variables are set. Makes amd64
USB install images bootable again.
 1.1 08-May-2022  mrg fix building amd64 with USE_XZ_SETS=no.

bump the size of images if USE_XZ_SETS != no. consolidate a lot of
the code between installimage/Makefile and installimage-bios/Makefile
into installimage/installimage.mk.
 1.4.2.1 02-Aug-2025  perseant Sync with HEAD
 1.3 03-Jan-2022  martin There is no point in putting a second sysinst binary into the install
image's root filesystem.
 1.2 13-Sep-2014  roy Punt custom dhcpcd hooks in favour up upstream hooks
 1.1 22-Jan-2012  tsutsui branches: 1.1.4; 1.1.22;
Add "live-image" and "install-image" target support to build.sh.

"live-image" target builds pre-installed disk images that can be used on
emulators or boot from USB memory sticks to try NetBSD without installation.
Currently amd64, i386, pmax, sparc, sparc64, sun2, sun3, and vax
(which have working emulators and don't require extra tools like preparing
msdosfs or partitioning MD label structures) support this target.

"install-image" target builds an bootable installation disk image that can
be used as an install CD but burned into USB memory sticks etc.
Current only amd64 and i386 (which would support USB boot) have this target.

For more details (and known issue) see following posts on netbsd-bugs@:
http://mail-index.NetBSD.org/netbsd-bugs/2011/08/06/msg023639.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/09/23/msg024207.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/12/07/msg025166.html
http://mail-index.NetBSD.org/netbsd-bugs/2011/12/08/msg025178.html

No particular comments about implementation, and
"go ahead" comments from mrg@, riz@ and christos@.

Closes PR toolchain/45153 and PR misc/45155.
 1.1.22.1 14-May-2015  snj Pull up following revision(s) (requested by martin in ticket #759):
distrib/amd64/cdroms/Makefile.cdrom: revision 1.12
distrib/amd64/installimage/Makefile: revision 1.5
distrib/amd64/installimage/spec.inst: revision 1.2
distrib/common/10-resolv.conf: file removal
distrib/common/99-print-sysinst: file removal
distrib/common/Makefile.dhcpcd: revision 1.2
distrib/common/list.dhcpcd: revision 1.3
distrib/i386/cdroms/Makefile.cdrom: revision 1.32
distrib/i386/installimage/Makefile: revision 1.5
distrib/i386/installimage/spec.inst: revision 1.2
distrib/sparc64/cdroms/installcd/Makefile: revision 1.20
distrib/vax/cdroms/installcd/Makefile: revision 1.10
usr.sbin/sysinst/msg.mi.de: revision 1.4
usr.sbin/sysinst/msg.mi.en: revision 1.4
usr.sbin/sysinst/msg.mi.es: revision 1.4
usr.sbin/sysinst/msg.mi.fr: revision 1.4
usr.sbin/sysinst/msg.mi.pl: revision 1.4
usr.sbin/sysinst/net.c: revisions 1.5-1.8, 1.11-1.15
The dhcpcd utilties in pkgsrc require dhcpcd to be running in master mode.
So set dhcpcd to start like so, but restrict it to the configured interface
still instead of ifconfig_foo=dhcp.
--
Use the 20-resolv.conf hook from dhcpcd rather than the minimal one.
Extract configured information from resolv.conf and hostname instead
of scraping the last dhcpcd script run.
This will allow the use of DHCPv6 and IPv6RA DNS details in the future.
--
dhcpcd will already have configured the system at this point, so
don't bother writing it manually.
--
Don't prompt for hostname or domain if obtained from DHCP.
--
Change the display order so it's protocol agnostic at the top,
then IPv4 then IPv6.
--
Strip newline from the gateway correctly.
--
Show the IP6 address instead of yes
--
Fix a bogus gcc warning: dhcp_config may be used uninitialized
--
Punt custom dhcpcd hooks in favour up upstream hooks
--
For the benefit of gcc 4.5, rename a local "nl" variable to "nline",
so it doesn't collide with the global curses nl() function.
 1.1.4.2 17-Apr-2012  yamt sync with head
 1.1.4.1 22-Jan-2012  yamt file spec.inst was added on branch yamt-pagecache on 2012-04-17 00:02:31 +0000

RSS XML Feed