Commit Graph

307 Commits

Author SHA1 Message Date
mm
af89cb16bf Replace deprecated (or remove obsolete) libarchive 2.8 functions
with libarchive 3.0 counterparts
2013-03-22 10:17:42 +00:00
sjg
6d37b86f2b Updated dependencies 2013-03-11 17:21:52 +00:00
sjg
0ee5295509 Updated dependencies 2013-02-16 01:23:54 +00:00
obrien
3028e3f8ab Sync with HEAD. 2013-02-08 16:10:16 +00:00
nwhitehorn
4006779c7a If no resolv.conf has been made for the new system already and the install
media has one already, copy it in lieu of leaving things blank. This
reduces the foot-shooting potential for PXE installs that immediately
add packages.
2013-01-27 23:12:37 +00:00
nwhitehorn
0f7cb9fb67 Properly quote argument.
MFC after:	3 days
2013-01-27 14:49:54 +00:00
nwhitehorn
cdae92a55c Improve error handling and remove an unnecessary check on geom provider
type. GEOM provider names can't duplicate (or shouldn't -- devfs will either
break or only use the first one if they do) so using the first provider
by that name is a sufficient check. This also lets the scripted partitioner
install onto gmirror and geli and such things.
2013-01-22 17:06:28 +00:00
nwhitehorn
bfb934aaf0 Improve documentation of BSDINSTALL_DISTSITE and mdoc. 2013-01-22 15:26:19 +00:00
nwhitehorn
f10df35fdf Clarify that the setup script is optional. 2013-01-22 02:57:53 +00:00
nwhitehorn
e44fb893ef Update change date. 2013-01-22 02:47:08 +00:00
nwhitehorn
abbfa4c9e4 Document bsdinstall scripting as it currently operates. It may change in
the future depending on feedback from people using it to do unattended
system setup.
2013-01-22 02:40:06 +00:00
nwhitehorn
8a9c278485 Remove some debugging code that snuck in. 2013-01-21 02:47:14 +00:00
nwhitehorn
0728096587 Add a scripting frontend. Documentation and release(7) support coming later.
Scripts take the form:

------------------------------------
PARTITIONS=ada0
DISTRIBUTIONS="kernel.txz base.txz ports.txz"

#!/bin/sh
echo "sshd_enable=YES" >> /etc/rc.conf
pkg add puppet
echo "System setup complete"
------------------------------------

The second part of the script (beginning with #!) is run in the newly
installed system after the installation onto ada0 (with default partitioning,
see scriptedpart for more complicated scenarios) is complete.
2013-01-21 01:01:32 +00:00
nwhitehorn
d8e6882b0a If no partition configuration is specified in {}, use the automatic setup
the interactive installer uses.

Example: bsdinstall scriptedpart ada0
Result: Use entire disk for a FreeBSD system with default partition layout
2013-01-20 23:04:21 +00:00
nwhitehorn
23f188e63a Add a simple scripted partitioner. Documentation and more scripting support
will come soon. This lets the install process have a line like:

bsdinstall scriptedpart 'ada0 GPT {1.5G freebsd-ufs /, 10G freebsd-swap,
    auto freebsd-ufs /usr}'

to set up a system with a 1.5GB /, some swap space, and a /usr using the
rest of ada0.

MFC after:	1 month
2013-01-20 22:25:58 +00:00
nwhitehorn
04bf4448ba Make "Finish" the default choice in the partition editor. This lets you
successfully complete an installation with all defaults by pressing
Enter repeatedly until your machine reboots.

MFC after:	3 weeks
2013-01-20 03:55:08 +00:00
nwhitehorn
06869490de Note that cpufreq(4) is not available on all hardware.
PR:		bin/175139
MFC after:	2 weeks
2013-01-12 16:01:58 +00:00
joel
1521a9209e Remove EOL whitespace. 2013-01-12 08:44:54 +00:00
nwhitehorn
1f71059493 Make sade actually be a symlink to partedit, as per the commit message in
r244859, rather than a hardlink. This fixes installation if /usr/sbin
is on a different filesystem than /usr/libexec.

Submitted by:	se
2013-01-02 13:25:11 +00:00
nwhitehorn
0855954c85 Add a man page for the new sade(8), which is mostly the same uninformative
manpage as the old sade(8).
2012-12-30 14:44:14 +00:00
nwhitehorn
13d86a11bb Replace sade the extracted piece of sysinstall with sade the extracted
piece of bsdinstall (although this time with a symlink instead of duplicated
source code).

Discussed on:	freebsd-geom
MFC after:	3 months
2012-12-30 14:35:00 +00:00
nwhitehorn
abab2255bc If invoked as sade, don't complain about having a filesystem on / already
-- it's something you expect (and indeed hope for).

MFC after:	1 week
2012-12-30 14:33:16 +00:00
gjb
3919fe3091 Add missed BETA* to list.
Approved by:	simon (implicit)
MFC after:	3 days
X-MFC-With:	r244058
2012-12-09 22:55:51 +00:00
gjb
972c593040 Get 'uname -r' earlier, so it can be used to determine what branch is
being run to set BSDINSTALL_DISTSITE accordingly.  This change allows
non-RELEASE branches to use the FTP snapshots directory for bootonly.iso
installations.

Approved by:	simon
2012-12-09 22:53:53 +00:00
joel
d0d3e664b5 Remove snapshots.jp.freebsd.org. It stopped working years ago.
Discussed with:	hrs
2012-12-04 07:22:15 +00:00
joel
0e5d56e662 - Remove snapshots.se.freebsd.org [1]
- Add ftp6.se.freebsd.org

Discussed with:	brd [1]
2012-12-03 19:55:00 +00:00
sjg
778e93c51a Sync from head 2012-11-04 02:52:03 +00:00
dteske
4c9a8d4584 Fix bug introduced by r241902 (MANIFEST uses TAB delimiter).
PR:		bin/173140
Approved by:	adrian (co-mentor)
2012-10-27 19:56:57 +00:00
dteske
b8c74d455d Optimize syntax to use builtins and reduce unnecessary forking where possible.
Reviewed by:	nwhitehorn
Approved by:	adrian (co-mentor)
2012-10-22 18:14:27 +00:00
marcel
9dd41e3647 Sync FreeBSD's bmake branch with Juniper's internal bmake branch.
Requested by: Simon Gerraty <sjg@juniper.net>
2012-08-22 19:25:57 +00:00
dteske
dba327264b Fix "unexpected operator" error when passed multi-word first-argument
containing whitespace. Also make other changes to support multi-word
arguments.

PR:		bin/170759
Submitted by:	dteske
Reviewed by:	emaste (mentor)
Approved by:	emaste (mentor)
MFC after:	3 days
2012-08-21 13:46:46 +00:00
eadler
a6ace6deb5 Remove variables which are initialized but never used thereafter reported by gcc46 warning
Approved by:	cperciva
MFC After:	3 days
2012-06-19 06:09:47 +00:00
roberto
ea4708e2d1 Add the IPv6 tag to ftp4.fr.freebsd.org. 2012-05-10 13:30:42 +00:00
nwhitehorn
281f796715 Fix typo.
Submitted by:	pawel dot worach at gmail dot com
MFC after:	3 days
2012-04-04 23:14:01 +00:00
eadler
1ef5fe44d3 Remove trailing whitespace per mdoc lint warning
Disussed with:	gavin
No objection from:	doc
Approved by:	joel
MFC after:	3 days
2012-03-29 05:02:12 +00:00
joel
96b099d4c4 mdoc: document title should be all caps. 2012-03-25 19:34:05 +00:00
nwhitehorn
5bdddf5528 Make the chroot shell more functional by providing devfs.
Reported by:	Robert Simmons
MFC after:	4 days
2012-03-05 02:40:18 +00:00
nwhitehorn
607716a6c6 Fix segfault if distfetch and distextract binaries are run standalone
without the DISTRIBUTIONS environment variable set.

PR:		bin/165492
Submitted by:	Fernando Apesteguia
MFC after:	4 days
2012-02-26 22:09:21 +00:00
kevlo
58f6866e86 Fix a whitespace nit
Reviewed by:	bz
2012-01-31 05:49:49 +00:00
nwhitehorn
b41629d499 Experimental support for booting CHRP-type PowerPC systems from hard disks. 2012-01-25 03:37:39 +00:00
nwhitehorn
3ec7d90475 Warn if trying to install over an existing partition, which usually fails
anyway due to libarchive not being able to overwrite schg flags.

PR:		bin/164278
MFC after:	4 days
2012-01-18 15:59:23 +00:00
nwhitehorn
50bd4baccd Prevent user astonishment by providing the shell option at the end, after
any installer-provided configuration files have been copied. This allows
users to edit their fstab, if desired, and to see what the installer has
placed in rc.conf.

Requested by:	phk
MFC after:	1 day
2011-12-02 02:05:26 +00:00
kensmith
98cd494e62 Add a screen that asks if the user would like to enable crash dumps,
giving them a very brief description of the trade-offs.  Whether the
user opts in or out add an entry to what will become /etc/rc.conf
explaining what dumpdev is and how to turn on/off crash dumps.  The folks
who handle interacting with users submitting PRs have asked for this.

Reviewed by:	nwhitehorn
MFC after:	1 day
2011-12-02 00:38:47 +00:00
kevlo
6473db59df Plug memory leaks and fix open(2) error check.
Reviewed by:	nwhitehorn
MFC after:	3 days
2011-11-28 05:34:16 +00:00
nwhitehorn
42dab25a22 Provide an error message and error handling if there are no network
interfaces in the system. This is a non-fatal error except when doing a
network installation.

PR:		bin/161950
MFC after:	3 days
2011-10-25 16:35:48 +00:00
nwhitehorn
afe77a15ac Provide an error message instead of silent failure if no disks are present
in the system.

PR:		bin/161950
MFC after:	3 days
2011-10-25 16:30:16 +00:00
nwhitehorn
2a95de90da Avoid some "Invalid argument" errors in the installer.
PR:		bin/161926
MFC after:	5 days
2011-10-23 16:57:10 +00:00
kensmith
5adf6f1dc4 Escape the newline so we get a proper line continuation. Without this
the text of the menu selections doesn't get displayed properly and it
makes the installer appear to lock up for no obvious reason.

Reviewed by:	nwhitehorn
2011-10-18 11:29:10 +00:00
nwhitehorn
6d9ae0e723 Avoid magicking into existence sub-partitions due to leftover blocks when
creating new ones by destroying any geom that may have come into
existence immediately after adding a partition. The EBR partition scheme
is particularly enthusiastic about false positives in this case.

MFC after:	3 days
2011-10-08 16:45:03 +00:00
nwhitehorn
051600dbd7 Usability enhancements: do not allow setting a mountpoint on bsdlabel
container partitions, which didn't do anything anyway, and check for
an existing freebsd-boot partition before bothering the user to make one.

PR:		bin/160931
MFC after:	3 days
2011-10-08 14:59:12 +00:00
nwhitehorn
10aa664dd0 Work around some behavior of gpart that I absolutely do not understand in
order to make every operation of the partition editor fully revertable.
Under *no circumstances* will it any longer touch the disks until the user
presses Finish and confirms it.

MFC after:	3 days
2011-10-07 01:40:30 +00:00
nwhitehorn
09d49031a0 Move "Exit" to the first entry in the list, so that it is the default
choice.

PR:		bin/160913
MFC after:	3 days
2011-10-06 14:24:37 +00:00
nwhitehorn
1370be3878 Ask if you want to set the keymap before invoking kdbmap to prevent
confusion.

PR:		bin/160913
MFC after:	3 days
2011-10-06 14:22:38 +00:00
nwhitehorn
f873725884 Inquire about terminal type if starting from a serial console and do
not configure the host's networking if netbooted [1]. Also fix FTP
installations behind some firewalls [2].

PR:		bin/159583 [2]
Reported by:	stas [1]
Approved by:	re (kib)
2011-09-17 09:25:45 +00:00
nwhitehorn
905a37bff1 Fix a typo introduced in r219892 that prevented file system options from
being set correctly.

Approved by:	re (kib)
2011-09-16 09:38:01 +00:00
nwhitehorn
947dc3a65b Fix WPA setup broken by changes to shell argument passing inside the
installer network configuration.

PR:		bin/159558
Approved by:	re (kib)
2011-09-16 09:37:13 +00:00
brueffer
8494658150 Allow WPA PSKs up to 63 characters, the max length according to
wpa_supplicant.conf(5).  Up to now, the PSK was truncated
to 15 characters (the length of the input field).

PR:		159559
Submitted by:	Gavin Chappell <gavin.chappell@gmail.com>
Approved by:	re (kib)
2011-09-13 21:39:26 +00:00
brueffer
0f94bf5e3e Add ftp4.se.freebsd.org to the IPv4 and IPv6 mirror lists.
PR:		157210, 157211
Submitted by:	Niclas Zeising <zeising@lysator.liu.se>
Approved by:	re (kib)
2011-09-10 09:40:00 +00:00
bz
e24f96d4f6 Correct a typo.
Submitted by:	gcooper
Reviewed by:	nwhitehorn
Approved by:	re (kib)
2011-09-07 00:48:58 +00:00
bz
d5bccf0f29 Fix two problems:
1) if no default gateway is given the route command will fail
   and the script will abort with an error leading to an endless
   loop unless configuration is cancelled or changed. [1]
2) In the IPv6 case add -inet6 to not alter the legacy IP default
   route.

Reported by:	Oleg Ginzburg (olevole olevole.ru) [1]
Tested by:	Oleg Ginzburg (olevole olevole.ru) [1]
Approved by:	re (kib)
2011-09-07 00:45:15 +00:00
nwhitehorn
29f67d2bd3 Swap FTP paths to be MACHINE/MACHINE_ARCH instead of MACHINE_ARCH/MACHINE.
This follows what the output of make targets looks like, and reduces the
number of directories needed on the FTP server, since we now have only one
architecture with multiple machine types (i386, which has i386 and pc98),
but 3 machines with 9 architectures between them (powerpc, mips, and arm).

Requested by:	kensmith, bz
Approved by:	re(kensmith)
2011-08-30 18:23:36 +00:00
nwhitehorn
4cf14538f1 Implement support for GRAID volumes in the installer partition editor,
rename a few options, clarify some help text, and add help text for the
buttons on the main partition editor screen.

Approved by:	re (kib)
2011-08-21 18:50:30 +00:00
nwhitehorn
9b36451565 Make messages about typos appear on the screen instead of in the log file.
Reported by:	lev
Approved by:	re (kib)
2011-08-21 18:49:28 +00:00
nwhitehorn
691b854db3 Fix a bug that prevented docsinstall from being able to use DNS in most
cases and provide a better error handling mechanism during package
installation.

Approved by:	re (kib)
2011-08-18 16:00:32 +00:00
roberto
2f3d8ce80e Add back ftp4, a new machine has taken its place. ftp2 and ftp8 are both IPv6 capable
mirrors.  cvsup4/ftp4 have already been added to the handbook.

Reviewed by:	nathanw
Approved by:	re (kib)
2011-08-05 15:02:17 +00:00
bz
ee93952251 To inet or not two inet. Unbreak static IPv4 configuration. If you tried
you were stuck in an endless loop.

Reported by:	kensmith
Approved by:	re (kib) for BETA1
Pointy hat to:	bz - wonder why I had not tested legacy IP thoroughly..
2011-07-28 03:01:22 +00:00
nwhitehorn
046524f41d Add PS3 partitioning (and framework for future pseries support) to the
installer.
2011-07-16 19:25:47 +00:00
nwhitehorn
7181bd5c48 Run newaliases at the end of the install process.
Submitted by:	kevlo
2011-07-13 13:25:12 +00:00
nwhitehorn
e9f4b69295 Per request of the docs team, install docs as packages, instead of via
the normal distfile mechanism. Thanks to Marc Fonvieille for the patch and
for putting up with me taking entirely too long to commit this!

Submitted by:	blackend
2011-07-09 23:01:54 +00:00
kevlo
20c9846175 Add an extra tab between fs_file and fs_vfstype
Reviewed by:	nwhitehorn
2011-07-07 01:22:50 +00:00
nwhitehorn
b164882ef9 I forgot what year it is, apparently.
Submitted by:	brucec
2011-06-12 15:19:38 +00:00
nwhitehorn
5e23ef608e Long-overdue man page for bsdinstall. 2011-06-11 21:44:07 +00:00
bz
8faa1a484f Remove TODO which is not longer needed and the default. 2011-06-06 12:21:42 +00:00
bz
9723861d87 Fix resolv.conf search list creation:
1) do not print out an empty "search ", things do not like it.
2) the search list is not comma separated.

Sponsored by:	The FreeBSD Foundation
Sponsored by:	iXsystems
2011-06-04 12:51:22 +00:00
bz
6bfe728b8a Write the multi step netconfig to a temporary file and only move that
to the final name if netconfig was completely finished.  This fixes
reentrance problems even better than r222611.

Suggested by:	nwhitehorn
Reviewed by:	nwhitehorn
Sponsored by:	The FreeBSD Foundation
Sponsored by:	iXsystems
2011-06-02 14:25:27 +00:00
bz
c51270cda9 Empty the network configuration only after the user decided to pick an
interface.  Otherwise an accidental start of the netowrk configuration
and immediate cancel after the install has finished removes the previously
configured settings.

Discussed with:	nwhitehorn
Sponsored by:	The FreeBSD Foundation
Sponsored by:	iXsystems
2011-06-02 14:08:50 +00:00
nwhitehorn
575b3fb028 Fix opening a shell on the new system (prevent the shell's stderr from
ending up in the install log).
2011-06-02 13:57:49 +00:00
bz
4662c17fcd Contrary to the rc.conf framework, when manualy enabling IPv6 we have
to -ifdiabled ourselves.

Sponsored by:	The FreeBSD Foundation
Sponsored by:	iXsystems
2011-05-30 17:27:48 +00:00
bz
68bfdf73d3 While doing it right for current configuration, fix the entry for rc.conf
adding the missing mandatory "inet6" keyword.

Sponsored by:	The FreeBSD Foundation
Sponsored by:	iXsystems
2011-05-30 08:40:59 +00:00
bz
01ac457c38 Split netconfig into three parts:
- netconfig - what auto will call which in turn will check for
  IPv4 and IPv6 to be available and ask the user to configure it
  by calling
- netconfig_ipv4 doing DHCP and static IPv4 addresses, and
- netconfig_ipv6 doing rtsol and static IPv6 addresses,
and then checking, querying and updating resolv.conf upon return.
Both DHCP and rtsol (in the future) might update resolv.conf already so
we seed ourselves from that file if available.

Reviewed by:	nwhitehorn
Sponsored by:	The FreeBSD Foundation
Sponsored by:	iXsystems
2011-05-29 21:24:20 +00:00
nwhitehorn
81ffd21326 Fix shell-based partitioning. 2011-05-28 16:15:46 +00:00
attilio
96139278ce Disconnect sun4v architecture from the three.
Some files keep the SUN4V tags as a code reference, for the future,
if any rewamped sun4v support wants to be added again.

Reviewed by:	marius
Tested by:	sbruno
Approved by:	re
2011-05-14 01:53:38 +00:00
nwhitehorn
292c1f68a1 Fix mirror selection, which was broken by stderr redirection.
Reported by:	Garrett Cooper
2011-04-19 13:54:51 +00:00
nwhitehorn
090e4af4fe Update to reflect net install changes. 2011-04-17 20:42:40 +00:00
nwhitehorn
751ab3dd4f Make the keymap script continue to work now that stderr is being
redirected to the log file.
2011-04-11 14:46:40 +00:00
nwhitehorn
17025cd921 Rename the "Reboot" option to "Exit", which reflects what it actually
does. The rc.local wrapper script will also soon grow an option to use the
live environment after installation, so an immediate reboot isn't even
necessarily implied.
2011-04-09 14:18:03 +00:00
nwhitehorn
1b7ba92c16 Check correctly for whether there are any available wireless networks. This
was tested on a train in the middle of an upstate New York swamp.
2011-04-05 03:11:21 +00:00
nwhitehorn
bf61104672 Improve logging by always sending stderr to the installation log file.
Reduce warnings by making sure the temporary etc directory exists.
2011-04-05 03:09:44 +00:00
nwhitehorn
cd47b87c5f Committing while tired is never a good idea. Remove an unconditional error
exit left over from debugging.
2011-03-28 04:29:50 +00:00
nwhitehorn
af2e1861d2 Improve error handling. 2011-03-28 02:37:05 +00:00
nwhitehorn
605fa95a3a Add mirror selection for FTP installs. To support TBEMD installs
(e.g. powerpc64), this looks in a slightly different default path than now,
specifying both $MACHINE and $MACHINE_ARCH:
MIRROR/pub/FreeBSD/releases/`uname -p`/`uname -m`/`uname -r`

How to handle TBEMD properly probably merits some more discussion, but,
since no such 9.0-CURRENT distfiles exist at the moment, all existing
mirrors presently fail anyway.
2011-03-27 23:43:32 +00:00
nwhitehorn
4b2699ef5a Mark any distfiles with no checksum entries in the manifest "Skipped"
instead of "Passed".
2011-03-23 13:43:56 +00:00
nwhitehorn
9cfc2d6be3 Allow setting of parameters for file systems (e.g. softupdates), turn on
SUJ by default, and allow creation and mounting of FAT filesystems from
the installer.
2011-03-23 01:26:21 +00:00
nwhitehorn
291c733238 Turn on softupdates by default. We need a UI to set filesystem parameters. 2011-03-15 13:27:34 +00:00
nwhitehorn
8c134ab018 Rewind manifest file in case distributions are in a different order there. 2011-03-13 18:26:16 +00:00
nwhitehorn
baa953a2a5 Use the manifest file count, if available, to determine the number of files
in the archive instead of spinning through it to get a file count for the
progress bar. This speeds up installation a lot on systems with slow
CD drives.
2011-03-13 18:23:47 +00:00
nwhitehorn
da52594639 Add generation of an installation manifest containing SHA256 checksums as
well as package descriptions and add code in the installer to check the
checksums.
2011-03-13 17:15:31 +00:00
nwhitehorn
2d07803115 Correct typo. 2011-03-11 19:40:49 +00:00
nwhitehorn
03141e27a3 Only validate the partition setup when the user presses "Save". If the user
wants to exit without saving, it's not a problem if the disk is set up
in an invalid way.
2011-03-08 01:17:30 +00:00
nwhitehorn
c8fdcb6d86 Make installations work when no optional components are selected. 2011-03-02 15:41:00 +00:00
nwhitehorn
cad6ecb973 Show disk model numbers in partition wizard screen. Also, since da(4) disks
are probably more likely to be USB or Firewire these days than SCSI, just
call them and anyone unknown "Disk" instead of SCSI disk.
2011-02-26 15:44:03 +00:00
nwhitehorn
05f2685017 Add a catch-all for miscellaneous RAID volumes while seeking a better
solution here. It would really help if CAM devices were part of newbus.
2011-02-23 13:51:41 +00:00
nwhitehorn
1465b80841 Add support for optional distributions, installation of the ports tree and
src. Fitting all of this on a single CD along with a full system requires
changing the default compression algorithm from gzip to xz.
2011-02-22 13:56:59 +00:00
nwhitehorn
a1c161cbf3 Add some error checking on the return values of chdir() and calloc(). The
first might actually happen, so it displays the error message in a prettier
way.

Found by:	Coverity Prevent(tm)
CID:		9121, 9122, 9123, 9124
2011-02-21 14:28:31 +00:00
nwhitehorn
3f3be9a277 Don't present the user with spurious errors when overwriting a disk with
a deleted, but uncommitted, gpart.

Reported by:	brucec
2011-02-19 15:22:06 +00:00
nwhitehorn
a9f4af7420 The PC98 gpart module supports labels now. 2011-02-19 14:49:49 +00:00
nwhitehorn
b35b3cdb71 Import bsdinstall. This is meant to be (eventually in conjunction with
pc-sysinstall) a replacement for sysinstall in the 9.0 release and beyond.
Currently supported platforms are sparc64, pc98, i386, amd64, powerpc, and
powerpc64. Integration into the build system will occur in the coming
weeks.

Merging with pc-sysinstall will use this code as a frontend, while
temporarily retaining the interactive partition editor here. This work
will be done in parallel with improvements on this code and release
integration.

Thanks to all who have provided testing and comments!
2011-02-18 14:54:34 +00:00