Commit Graph

182 Commits

Author SHA1 Message Date
nia df758d617b Remove modules set from the i386 install cd
It is not particularly useful to be able to load modules while
installing on i386, probably the most useful one is dtrace,
and this takes up about 20mb on a port that is already exceeding
CD limits. Most stuff you'd want to use while installing is already
in GENERIC.

The modules set is still available compressed for installing into
a target system, meaning modules are available after installation.

While here, add man set to the installation DVD, it's helpful to be able
to read e.g. the man page for fdisk when rescuing a system.
2024-04-26 17:36:32 +00:00
nia 6c62cea2ba Add "DVD" ISOs for x86 that don't have to follow CD size limitations.
These include all available sets.
2024-04-24 11:29:34 +00:00
nia 9afa3b4167 Exclude compat sets from ISO images that struggle to fit on a CD-ROM
When debug is excluded, also exclude the compat debug sets.
2024-04-23 12:25:57 +00:00
maya 79aee05283 restore amd64 live image support for resize root after combined mbr/gpt commit
we need to resize_gpt now, as it takes precedence over mbr/disklabel
this change brings us to behave like the evbarm images.

XXX: we don't seem to touch disklabel and MBR, but they exist. Not sure whether
that has any negative repercussions, maybe another system might regard MBR as the
sole source of truth when GPT also exists.
2024-04-16 16:13:44 +00:00
maya 1de18f2164 amd64 live image: support EFI as well as BIOS boot
The biggest caveat is that there's a small number of machines that try to
EFI boot but fail, so would prefer a BIOS only image. I'm not adding a
separate BIOS only image because the live image is pretty niche.
(For regular installation images, we do create a separate BIOS-only version)
2024-04-13 18:38:17 +00:00
riastradh 9a55048f5c x86: Release the ramdisks too.
This way we will get cgdroot.fs (and zfsroot.fs too) in the release.

PR misc/57534
2024-03-20 13:51:35 +00:00
riastradh b29b1fdf39 ramdisk-zfsroot: Enable build by default on amd64.
XXX Should maybe copy this to other ports like evbarm64 too.

PR port-amd64/57948
2024-02-19 17:55:46 +00:00
riastradh bb38adb487 /etc/rc.d/cerctl_init: New script for certctl rehash in live images.
This is very limited -- it does not supplant postinstall to rehash
certificates on upgrade; it only runs certctl rehash if
/etc/openssl/certs is an empty directory, as you get in live images
not created with sysinst.

We could also have a more general-purpose way to run postinstall(8)
on first boot of an image, but that has a lot more moving parts to
think about, so let's start with this limited-scope low-risk
approach.

PR install/57629

XXX pullup-10
2023-09-27 00:24:12 +00:00
gdt e8830a70d1 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.
2023-08-14 13:54:05 +00:00
abs aab51fcd54 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
2023-01-16 15:00:03 +00:00
pgoyette d4dfd05175 The new drm modules made the image file grow again! Bump the size
limit a bit.

XXX Other $ARCH might also need this.
2022-07-30 00:55:38 +00:00
hgutch 07aadaa0c8 Check for right sysctl node to make live image work OOTB on OpenStack:
machdep.dmi.system-product = OpenStack Compute
2022-07-13 18:51:03 +00:00
jmcneill 8bc77b2dd2 Restore Makefile.installimage include after variables are set. Makes amd64
USB install images bootable again.
2022-05-22 19:32:41 +00:00
mrg f2d8a8f4d6 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.
2022-05-08 08:12:45 +00:00
martin ae26e95f81 Add missing EFI bootloaders to the install kernel ramdisk,
noticed by Lloyd Parkes.
2022-04-10 11:56:28 +00:00
martin 348bea3af9 There is no point in putting a second sysinst binary into the install
image's root filesystem.
2022-01-03 12:10:17 +00:00
pgoyette 103e3da3fd Still not big enough - bump some more. 2021-12-31 04:59:15 +00:00
pgoyette 669869f4e7 With recent changees to debug kernel stuff from Christos we are
once again pushing the size limit.  Bump it again.
2021-12-30 15:01:55 +00:00
pgoyette 4eb53ee9e8 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!  :-)
2021-12-26 03:07:06 +00:00
maya 7ab68eeadb Restore having a BIOS-only amd64 USB image.
Several people reported having hardware that struggles booting the mix
EFI+BIOS image, and it's better to offer them a working image.

Keeping the EFI image as having the obvious name, this is going to become
more likely to work by default as newer hardware may not support BIOS boot.

(XXX pullup-9)
2021-10-08 20:24:06 +00:00
maya f54624bd74 Move DRM-driver firmware from base to its own set, gpufw
This set is only installed on amd64,i386,evbarm.
This set is installed on minimal installs and on install media, in
case someone needs it for basic driver functionality.

Comments:
Switched to a single MK tunable for it - that is probably unneeded.

An upcoming DRM update will include even fatter firmware, and we'd
like to minimize the impact of it.
2021-09-25 08:54:29 +00:00
jmcneill dd061977e6 amd64: liveimage: use RC_CONF_EXTRA instead of rc.conf.d 2021-07-24 16:13:44 +00:00
rhialto 7f45e8c6a2 Don't override /etc/rc.conf if it sets ec2_init. 2021-07-20 19:27:51 +00:00
rhialto 9e2fdf32c3 Recognize OpenStack too (it also has a metadata service).
Typical values for machdep.dmi are:

machdep.dmi.system-vendor = OpenStack Foundation
machdep.dmi.system-product = OpenStack Nova
machdep.dmi.system-version = 17.0.12
machdep.dmi.system-serial = c46130fb-a56e-43f2-9d98-492d24656b9c
machdep.dmi.system-uuid = 680b8119-0d74-4f78-a6fd-e79dfede905c
machdep.dmi.bios-vendor = SeaBIOS
machdep.dmi.bios-version = 1.10.2-1ubuntu1
machdep.dmi.bios-date = 20140401
machdep.dmi.chassis-vendor = QEMU
machdep.dmi.chassis-type = QEMU
machdep.dmi.chassis-version = pc-i440fx-2.8
machdep.dmi.processor-vendor = QEMU
machdep.dmi.processor-version = pc-i440fx-2.8
machdep.dmi.processor-frequency = 2000 MHz
2021-07-15 17:20:25 +00:00
pgoyette e9c9ba6378 The install image grew again - update size 2021-06-02 16:07:33 +00:00
pgoyette 044012ff69 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.
2021-04-26 14:08:11 +00:00
pgoyette 4bf31dd43a 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.
2021-03-26 21:18:29 +00:00
dbj 787ef1221e distrib/amd64/cdroms: honor CDBOOTOPTIONS when installing EFI bootloader 2021-03-07 03:55:47 +00:00
dbj e5062177fe Revert "distrib/amd64/cdroms: honor CDBOOTOPTIONS when installing EFI bootloader"
https://mail-index.netbsd.org/current-users/2021/02/17/msg040358.html
I think this change had unexpected side effects and needs further review
2021-02-17 08:49:54 +00:00
dbj 751da7ebca distrib/amd64/cdroms: honor CDBOOTOPTIONS when installing EFI bootloader 2021-02-06 16:02:43 +00:00
pgoyette 97deb5ac32 Oooppss we need another size bump 2021-01-18 03:35:11 +00:00
pgoyette beede25931 Install image built with all of MKDEBUG, MKKDEBUG, and MKDEBUGLIB all
set to "yes" is a bit larger, so bump the image size accordingly.
2021-01-15 21:14:53 +00:00
jmcneill e3afd33ec2 Look for the string "amazon" in a few different sysctl nodes. There doesn't
seem to be a single spot to check that works with both XenPVHVM and KVM
instances.
2020-09-09 13:25:48 +00:00
jmcneill 4f13f64982 Add support for EC2 and resize root to AMD64 live images. 2020-08-05 01:35:18 +00:00
jmcneill 9555656604 Only install gptmbr.bin if USE_GPTMBR=yes 2020-05-28 15:13:21 +00:00
maya bec9186e4c rename amd64 uefi-installimage to be just installimage.
Works for both purposes, no confusing name.
2020-05-27 22:27:58 +00:00
roy 00fb306ae0 ramdisk-zfsroot: Build with -D_REENTRANT
zpool(8) requires libhack built with it.
2020-03-02 16:04:49 +00:00
riastradh d823475ff2 kernfs no longer needs a hacky workaround to make rootdev appear. 2020-02-26 16:00:48 +00:00
roy 5403a7a7c1 zfs: build a ramdisk on amd64 with enough to mount rpool/ROOT on /
Until we get ZFS integrated into our boot loader, this is the next best
thing. The idea is simple - have a small FFS partition with a kernel,
modules and this ramdisk. Once the ramdisk boots it will mount the FFS
partition read only, copy the needed ZFS modules to the ramdisk and then
unmount the partition. Then we import the ZFS root pool, mount the
ZFS root filesystem and then pivot to it.

Because the initial FFS partition is not mounted at this point, we
can mount it in /altroot so we can replace the kernel and modules with
newer ones so it's easily maintainable.

This ZFS boot strapper currently makes the following assumptions:
 * The device NAME=boot is the FFS with kernel, modules and this ramdisk.
 * The ZFS root pool and root filesystem are called rpool/ROOT.

A boot.cfg menu entry can then be added like so:
menu=Boot ZFS root:fs /ramdisk-zfsroot.fs;boot
2020-02-22 09:53:47 +00:00
martin a879768d74 PR install/54780: in the (of course totally unlikely) case that sysinst
should crash, run "stty sane".
2020-01-09 19:17:40 +00:00
christos 128e5f5e67 1. Remove all the special handling of variables (-d -p -P -s -S) that
were dealing with DBG (-d) LDSTATIC/NOPIE (-p), and the rest with
   disabling/enabling sanitizers.
2. Use emalloc/estrdup for all the allocators instead of only some cases.
3. Add -V varspec which passes variables on the command line (as DBG
   and LDSTATIC used to be passed before) instead of appending them
   to the on-the-fly Makefile using -v varspec.
4. Change the distrib and rescue Makefiles to use -V instead of the removed
   flags.

The motivation of this is to make variable handling consistent, less magical,
and remove the need for changing crunchgen each time we want to add disabling
an option by default.

(as proposed in tech-toolchain)
2019-12-29 18:26:16 +00:00
joerg 8e4a7b2e22 Merge amd64's UEFI logic back into the generic bootimage handling. 2019-11-21 22:29:03 +00:00
maya 50f7458533 Split out /rescue to its own set and adapt installers/images to add it.
This is meant to make updates safer: if something goes wrong with updating
base, we still have the old, standalone /rescue to recover from.
2019-10-02 11:15:59 +00:00
christos 7e81d727bc Consistently use ${RELEASEDIR}/${RELEASEMACHINE} instead of
${RELEASEDIR}/${MACHINE} (Paul Ripke)
2019-09-23 13:42:30 +00:00
gson b97dc361fa Live images built with MKDEBUG=yes fit in 2 GB since installing _pic.a
libraries was disabled in src/share/mk/bsd.own.mk 1.1150.
2019-08-11 11:00:30 +00:00
gson 98f1629c07 The amd64 live image no longer fits in 2 GB when built with with
MKDEBUG, as releases are.  Bump the size to just under 4 GB (as in
4*10^9, not 4*2^30), the next larger common USB thumb drive size.
2019-08-07 07:59:35 +00:00
bouyer 10bccfac7a Add newfs_msdos to amd64 install media, proposed on port-amd64@ back in
december.
newfs_msdos is needed to make a UEFI bootable disk.
2019-07-20 15:55:40 +00:00
christos 72f0997774 Add a comment about iLO 2019-05-15 13:47:41 +00:00
maya 8d57144a9c 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.
2019-04-22 13:27:39 +00:00
alnsn 6ea52a40bd Add a symlink to /altroot/stand to help the kernel find modules. 2019-04-11 23:50:01 +00:00