Commit Graph

50 Commits

Author SHA1 Message Date
Jessica Clarke
1a9b1c367f release: Add support for building on non-FreeBSD
This requires two sets of changes. Firstly, for non-FreeBSD, we do not
know where tools are in PATH (and it is likely that some are not in
system directories and have been built as bootstrap tools during the
build), so we should leave PATH alone and trust the user. Secondly,
makefs needs a master.passwd for building images from a METALOG file, so
pass the directory in the image tree to makefs's -N option in order to
pick up a valid FreeBSD master.passwd; this is unnecessary on FreeBSD
(except in the edge case of building an image that refers to users or
groups not present in the host's database, which is unlikely but
technically possible) but harmless so can be done unconditionally.

Reviewed by:	brooks, emaste, gjb
Differential Revision:	https://reviews.freebsd.org/D34001
2022-02-28 22:37:37 +00:00
Jessica Clarke
13cb004130 release: Support -DNO_ROOT image building
This requires a bunch of METALOG mangling to include the files we inject
into the tree. The mkisoimages.sh and make-memstick.sh scripts are now
called with the current directory inside the tree so that the relative
paths in the METALOG match up with the current directory. The scripts do
not require this when not using a METALOG, but for simplicity we always
do so. The Makefile mangles the real METALOG created from the install,
as those files are shared across all uses of the tree, but the shell
scripts create a temporary copy of the METALOG that they mangle as their
tree modifications are specific to that image. We also need to pass -D
to makefs to turn any duplicate METALOG entry errors into warnings, as
we have many (harmless) instances of those.

Whilst dvd1.iso should work, the !NOPKG code will need more work to
support this.

All media will also lack mergemaster and etcupdate trees, since more
work is needed to add -DNO_ROOT modes to them. Users of install media
built this way will have to manually bootstrap them.

Reviewed by:	brooks, gjb
Differential Revision:	https://reviews.freebsd.org/D33999
2022-02-28 22:37:03 +00:00
Nathan Whitehorn
1af48800c2 Delete memstick images for PowerPC.
These images only ever worked on Apple Powermacs, which are now a very
old platform, and did so only for a very loose definition of "worked"
(they booted on a small subset of supported machines). Moreover, all
the machines they *did* boot on also would boot from a memstick made
by dd'ing an CD image to a flash drive. Since a flash drive prepared
in this way would also boot all the newer systems we support, the
memstick images were strictly less functional than the CD images, even
for booting from memory sticks.
Reviewed by:	jhibbits
MFC after:	1 week
2021-02-23 22:17:20 -05:00
Brandon Bergren
ead0ba6e8d [PowerPC64LE] Add release building script for powerpc64le.
This was originally part of the initial commit, but after discussion in
D26399, I split it out into its own commit after the kernel config file.

Sponsored by:	Tag1 Consulting, Inc.
2020-09-23 01:13:29 +00:00
Justin Hibbits
37d633c738 Update loader size on powerpc isos
Summary:
loader has grown to the point it's overflowing the existing 307200 bytes
allocated to it in the HFS boot partition on the isos.

Bump the space reservation up to 500k.

Submitted by:	Brandon Bergren
MFC after:	2 weeks
Differential Revision: https://reviews.freebsd.org/D20301
2019-05-20 03:35:14 +00:00
Ed Maste
a7d9306a40 release: set -e to exit on error in iso image scripts
Reviewed by:	gjb
Differential Revision:	https://reviews.freebsd.org/D17651
2018-10-22 19:39:20 +00:00
Ed Maste
8ea90e075c make-memstick.sh: put partition args on separate lines
This makes it easier to identify the individual partition types and
facilitates comparisons across architectures.

Reviewed by:	gjb
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
2018-04-10 19:49:04 +00:00
Nathan Whitehorn
9fb36b5eae After removal of loader.ps3, change petitboot configuration in release media
to directly kexec the kernel. Unlike the old loader.ps3 code, this also works
on PowerNV systems, which also use petitboot.

MFC after:	1 month
2018-01-01 03:33:01 +00:00
Glen Barber
f295b9db79 Add general configuration files used by release/release.sh for
big-iron installation images.

MFC after:	3 days
MFC with:	r325948, r325949, r325950, r325951
Sponsored by:	The FreeBSD Foundation
2017-11-17 18:00:52 +00:00
Warner Losh
ca987d4641 Move sys/boot to stand. Fix all references to new location
Sponsored by:	Netflix
2017-11-14 23:02:19 +00:00
Eitan Adler
a2aef24aa3 Update several more URLs
- Primarily http -> https
- Primarily FreeBSD project URLs
2017-10-29 08:17:03 +00:00
Ed Maste
355534688c make-memstick.sh: use UFSv2
There's not much practical difference as far as install media is
concerned but newfs creates UFSv2 by default and it is sensible to use
the contemporary UFS version.

I also intend to change makefs to create UFSv2 by default (to match
newfs) so we'll want make-memstick.sh to be explicit, rather than
relying on the host tool's default.

Reviewed by:	andrew, gjb, jhibbits
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D12231
2017-09-11 14:41:57 +00:00
Ed Maste
f20be204d6 revert unintentional changes from r323436 2017-09-11 14:35:43 +00:00
Ed Maste
e9346a94d1 boot1: remove BOOT1_MAXSIZE default value
This Makefile relies on Makefile.fat providing the correct value for
BOOT1_MAXSIZE and BOOT1_OFFSET. Since BOOT1_OFFSET had no default value
here the build would already fail if Makefile.fat did not provide
correct values.

Sponsored by:	The FreeBSD Foundation
2017-09-11 14:33:04 +00:00
Ed Maste
708c2585e3 make-memstick.sh: use 'set -e' to abort if any step fails
Also remove the now-redundant error handling that was only for makefs.

This change applies arm64's r308171 to the other make-memstick.sh
versions.

Reviewed by:	gjb
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D12195
2017-09-05 12:57:45 +00:00
Ed Maste
93cf995aef mkisoimages.sh: remove obsolete x$var convention
Ancient shells had trouble with empty variables but this has not been
relevant for FreeBSD for a very long time (decades?).
2017-09-04 22:37:28 +00:00
Glen Barber
8834318685 Merge ^/projects/release-install-debug:
- Rework MANIFEST generation and parsing via bsdinstall(8).
- Allow selecting debugging distribution sets during install.
- Rework bsdinstall(8) to fetch remote debug distribution sets
  when they are not available on the local install medium.
- Allow selecting additional non-GENERIC kernels during install.
  At present, GENERIC is still required, and installed by default.

Tested with:	head@r293203
Sponsored by:	The FreeBSD Foundation
2016-01-05 21:05:17 +00:00
Glen Barber
10c40dfa68 Prevent memstick installation medium from attempting to mount
the root filesystem read-write.  This causes problems booting
the memstick installation medium from write-protected USB flash
drives.

Submitted by:	A.J. Kehoe IV [1], Oliver Jones [2]
PR:		187161 [1], 205886 [2]
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
2016-01-05 03:20:45 +00:00
Devin Teske
27065039bc Fix argument quoting and remove unnecessary braces
MFC after:	3 weeks
X-MFC-to:	stable/10
2015-09-10 22:47:26 +00:00
Nathan Whitehorn
18cb3a015d Use mkimg instead of md(4) and gpart. 2014-05-01 03:24:41 +00:00
Nathan Whitehorn
348b50d91f CDs are not partitioned, so this is not correct syntax for loading from
ISO 9660. Omit the partition ID.

Approved by:	re (kib)
MFC after:	2 weeks
2013-09-17 17:30:49 +00:00
Hiroki Sato
de17cbcc7e - Add CHECKSUM.* support in Makefile[1].
- Use ln -fs to create a symlink.
- Remove pkgadd for docports.
- Use WITHOUT_JADETEX=yes instead of WITH_JADETEX=no.
- Add {WORLD,KERNEL}_FLAGS to [BTWK]MAKE.
- Use makefs(8) and gpart(8) for sparc64 ISO image[2].
- Add publisher option to makefs(8)[2].

Based on work by:	gjb[1]
Discussed with:		marius, nwhitehorn[2]
2013-02-03 10:26:24 +00:00
Hiroki Sato
0e4b6f5ed7 ISO 9660 specification allows only "d-characters" and "a-characters" in the
Volume Descriptor (section 7.4).  In short, upper-case alphanumeric + some
symbols only.  While the makefs utility automatically converts the characters,
$LABEL should be consistent in the scripts.
2013-01-08 21:13:58 +00:00
Nathan Whitehorn
e59e2d8ec7 Farewall, sysinstall! You served us well for many years, but 10.0 is one
digit beyond your time.

Various sysinstall dependencies (e.g. libftpio, libdisk, libodialog, etc.)
will be cleaned up in coming days. Some will take longer than others due to
a few other consumers (tzsetup and sade).
2011-10-03 15:13:09 +00:00
Nathan Whitehorn
11f6a0164f Provide a kboot.conf to allow powerpc64 install media to be booted on
Playstation 3 consoles running kboot or petitboot.

Approved by:	re (bz)
2011-08-14 14:36:32 +00:00
Nathan Whitehorn
86354c8d38 Mount memsticks read-only by default to prevent them being filled by
user modifications and subsequently preventing a functioning installation.

Approved by:	re (kib)
2011-07-30 00:51:36 +00:00
Nathan Whitehorn
bb6d0c6c0c Add an MBR to our release media to aid booting some IBM systems. 2011-06-12 00:14:57 +00:00
Nathan Whitehorn
df7c03cf8b Fix pSeries/PAPR boot CD construction after actual testing. It seems that
IBM SLOF is (a) case-sensitive and (b) accepts only booting files in
certain subdirectories of the CD.
2011-05-12 22:31:13 +00:00
Nathan Whitehorn
2a2fbadf4f Add (somewhat speculative) bootable CD support for PAPR/pSeries-type
systems. In principle, FreeBSD should run on at least some of these
already, and support for the remainder will hopefully show up eventually,
so add this while I'm thinking about it.
2011-05-12 15:03:17 +00:00
Nathan Whitehorn
eadacd1328 Garbage collect some unused variables and stray debug code.
Submitted by:	marius
2011-05-05 13:55:43 +00:00
Nathan Whitehorn
d16401694f Change the way powerpc bootable CDs are generated to work around a bug
in hybrid image generation in cdrtools. This produces a small HFS partition
containing loader, mapped in by an oddly-formed APM table using a new
feature in makefs. This does not appear to work yet on early-model G3
systems, which will be fixed later, but produces bootable CDs on
everything else.
2011-05-04 23:34:10 +00:00
Nathan Whitehorn
62800afa46 Add support for memstick generation on PowerPC. This is a little suboptimal
since glabel doesn't know about APM partitioning yet, but works well enough.
2011-03-23 16:22:08 +00:00
Nathan Whitehorn
0877c11eda Use labels to find release media instead of hard-coded device paths. This
makes booting more reliable (and working at all on USB sticks). While here,
move responsibility for setting up fstab into the various platform mk-*.sh
scripts.

Suggested by:	many
2011-03-22 01:14:53 +00:00
Yoshihiro Takahashi
9f9569662f Fix making a release. The old libdialog was renamed to libodialog. 2011-01-14 10:56:44 +00:00
Nathan Whitehorn
06b000f542 Fix the overflowing livefs ISO by removing man pages from the HFS part of
the hybrid disk. This is a stopgap until a better solution can be found,
but lets the powerpc release build complete for the time being.

MFC after:	1 week
2010-12-15 23:43:25 +00:00
Hiroki Sato
832f8c8a9b Replace an obsolete flag -L in an mkisofs(1) command line with
-allow-leading-dots to fix "make release" for FreeBSD/powerpc.

Reviewed by:	marcel
2010-10-03 13:13:10 +00:00
Xin LI
241e22a783 Reorder to have -lcrypto after -larchive. Our linker doesn't seem to like
the current ordering :(
2010-05-26 18:55:40 +00:00
Xin LI
8755e33a57 libarchive now needs libcrypto and liblzma. 2010-05-25 17:48:17 +00:00
Nathan Whitehorn
0d526fa829 Add gpart and glabel to the release CD mfsroot. Even if sysinstall
cannot partition disks on powerpc, this will allow the user to.

PR:		powerpc/93203
Obtained from:	ia64
MFC after:	1 week
2010-04-20 01:12:23 +00:00
John Baldwin
0c61f21af5 Remove slattach from the install mfsroot since it doesn't exist anymore
to quiet a warning from crunchgen.

MFC after:	1 week
2010-01-26 15:28:00 +00:00
Jamie Gritton
014c191ae6 Add libjail to the boot_crunch binaries (for ifconfig).
PR:		136071
Submitted by:	Scot Hetzel
Approved by:	re (kensmith), bz (mentor)
2009-06-29 13:59:30 +00:00
Andrew Thompson
a091d2a525 Install libusb20.so.1 as libusb.so.1, there will be a followup commit to the
ports tree so that programs use libusb from the base by default. Thanks to
Stanislav Sedov for sorting out the ports build.

Bump __FreeBSD_version to 800069

Help and testing by:	stas
2009-03-09 17:05:31 +00:00
Yoshihiro Takahashi
1a598e6201 Catch up with USB2 change.
Remove the usbdevs and add the usbconfig.

Spotted by:     hrs
Tested on:      i386
2009-03-03 09:04:18 +00:00
Ken Smith
1ec675a25a Recent work on the gnu cpio seems to have introduced some bugs, it
complains about "Malformed numbers" while unpacking the dists and
what winds up on the disk isn't correct.  Use this as an opportunity
to switch over to bsdcpio since at this point we don't even build
and install the gnu cpio by default.  Note sysinstall needed to be
tweaked a bit (dropping tape block size setting) because it seems
bsdcpio doesn't do anything with block sizes, at least as far as
reading from archives goes.  That wasn't really a problem since
installations from tape have been broken for a while and the rest
of sysinstall's tape support code will be removed shortly.
2008-08-20 13:35:39 +00:00
Andrew Thompson
dbef86ad30 libbsdxml is now required by ifconfig(8).
Submitted by:	Florian Smeets
2008-04-22 18:20:05 +00:00
Ken Smith
a1435ad491 In 'fixit mode' running "fsck /dev/ad0s1a" typically complains that it
can't find fsck_4.2bsd because there was no fstab file saying what
filesystem type it is looking at so it got the filesystem type from
the disk's label.  When that fails admins who haven't been in this
situation before are most likely to try "fsck -t ufs /dev/ad0s1a" because
ufs is the type used in fstab files on working systems but that also fails
complaining it can't find fsck_ufs.

This just sets it up so /stand in the MFS image (/sbin is a symlink
to /stand) includes hard links pointing fsck_4.2bsd and fsck_ufs to
fsck_ffs which is what is present in /sbin on installed systems.

Prodded by:	obrien
MFC after:	1 day
2008-01-22 16:35:10 +00:00
Ian Dowse
2e46a159cc Remove usbd(8) and all references to it. It is no longer necessary
since devd(8) now provides the same functionality.

Submitted by:	Anish Mistry
2005-12-15 01:04:51 +00:00
Ruslan Ermilov
3f68119c9a Keep each prog on its own line so that diffs between various
*_crunch.conf files are easier to read.
2004-10-01 07:54:37 +00:00
Ruslan Ermilov
5131c5866e Take away unused libraries. 2004-10-01 07:33:09 +00:00
Peter Grehan
3f11b7d156 Add files needed for PPC release ISOs. These are built with the
HFS/ISO9660 extensions to be bootable on Power Macs.

 boot.tbxi - the CHRP script executed by Open Firmware when auto-booting
             CDs
 hfs.map - map Unix files to HFS creator/type fields

Reviewed by:    ru
Submitted by:   ssouhlal
2004-08-18 11:08:19 +00:00