Commit Graph

76 Commits

Author SHA1 Message Date
cem
80ac4481b6 freebsd-update: add a progress report for the "fetching files..."
After patching step is done.

PR:		232857
Submitted by:	mat@
MFC after:	a week
2018-10-31 17:37:54 +00:00
asomers
dae9290985 Switch the default pager for most commands to less
Finally, a pager for the nineties.

MFC after:	Never
Relnotes:	Yes
Differential Revision:	https://reviews.freebsd.org/D13465
Poll:		https://reviews.freebsd.org/V7
2018-08-08 19:24:20 +00:00
brd
8c17d8150b Move freebsd-update.conf to usr.sbin/freebsd-update.
This is prep for pkgbase so that config files are tagged as such.

Approved by:	will (mentor)
Differential Revision:	https://reviews.freebsd.org/D16556
2018-08-04 22:25:41 +00:00
pfg
7551d83c35 various: general adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.

No functional change intended.
2017-11-27 15:37:16 +00:00
emaste
b3f5f97300 freebsd-update: do not duplicate patchlist entries
PR:		221079
Submitted by:	Masachika ISHIZUKA
Submitted by:	ota@j.email.ne.jp
Reviewed by:	cperciva
MFC after:	1 week
2017-11-22 01:50:23 +00:00
ygy
4c961de5c5 Fix freebsd-update(8) erroneous message and exit status when "fetch install" used.
PR:		190660
Reviewed by:	allanjude
Approved by:	emaste
Differential Revision:	https://reviews.freebsd.org/D12037
2017-10-09 16:33:37 +00:00
gjb
d6d4022784 Modernize FreeBSD version numbers in freebsd-update(8).
While here, expand a contraction to make textproc/igor happy.

MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
2017-06-14 18:34:22 +00:00
cperciva
734890dabc MFportsnap r264740: Use case insensitive match when parsing host(1) output.
Some DNS caches turn "FreeBSD.org" into "freebsd.org", which was causing
the printed SRV records to not match our regex.

PR:		170503
MFC after:	2 weeks
2016-10-12 20:24:33 +00:00
bapt
43ffcb48b5 In preparation for removal of GNU rcs, replace merge(1) usage with direct
diff3(1) usage
2016-09-18 14:48:28 +00:00
delphij
8e93e7a241 Allow - in distribution names. This is needed for freebsd-update to work
with 11.0+, where the debugging symbols use a new naming scheme for release
distribution files.

Errata candidate.

Approved by:	cperciva
Differential Revision:	https://reviews.freebsd.org/D7170
2016-07-11 03:31:12 +00:00
glebius
e7ca06fef1 Provide a future release as an example, instead of a historical one. 2016-02-05 21:57:50 +00:00
emaste
c8d3be3477 Add debug file extension to freebsd-update(8) after r288176
Reviewed by:	delphij
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D3784
2015-10-15 01:48:52 +00:00
cperciva
10b98e091e Add --currently-running <release> option to freebsd-update.
This option tells freebsd-update to act as if it is running a specific
release instead of querying the kernel.  In particular, this can be
useful when upgrading jails.

Requested by:	EuroBSDCon devsummit jails session
Tested by:	allanjude
MFC after:	1 week
2015-10-09 12:34:33 +00:00
delphij
6d76d2ebdd Skip src component if /usr/src is empty.
Differential Revision:	https://reviews.freebsd.org/D2364
Submitted by:		kczekirda
Reviewed by:		cperciva, delphij, nwhitehorn, allanjude
MFC after:		2 weeks
2015-06-15 20:12:15 +00:00
sjg
008d7c831f Add META_MODE support.
Off by default, build behaves normally.
WITH_META_MODE we get auto objdir creation, the ability to
start build from anywhere in the tree.

Still need to add real targets under targets/ to build packages.

Differential Revision:       D2796
Reviewed by: brooks imp
2015-06-13 19:20:56 +00:00
sjg
75a137820d dirdeps.mk now sets DEP_RELDIR 2015-06-08 23:35:17 +00:00
sjg
65145fa4c8 Merge sync of head 2015-05-27 01:19:58 +00:00
allanjude
ac2c19f721 Fix syntax errors in conditions for new features in freebsd-update
Differential Revision:	https://reviews.freebsd.org/D1550
Submitted by:	kmoore
Approved by:	delphij
Obtained from:	PCBSD
MFC after:	1 week
X-MFC-With:	279571
Sponsored by:	ScaleEngine Inc.
2015-04-15 20:55:43 +00:00
kmoore
3247c2766c - Include commas in valid file-name chars freebsd-update will support
Approved by: cperciva
2015-03-12 06:41:01 +00:00
allanjude
8510597f08 Add a new safetly belt to freebsd-update to prevent a user doing a minor update (-pX) while having an unfinished major upgrade (9.x to 9.y)
Safetly belt can be disabled with the -F flag

Additionally, add the --not-running-from-cron flag they bypasses the TTY requirement, and allows freebsd-update to be invoked by orchestration frameworks, scripts, or otherwise.

PR:		196760
Differential Revision:	https://reviews.freebsd.org/D1550
Reviewed by:	cperciva, delphij
Approved by:	bcr (mentor), rodrigc (src)
MFC after:	1 month
Relnotes:	yes
Sponsored by:	ScaleEngine Inc.
2015-03-03 23:20:18 +00:00
thomas
aeadda3794 (backup_kernel_finddir, backup_kernel, install_files):
Add missing references to $BASEDIR, in order to allow correct operation
when updating a system mounted at another location than / (e.g. when
updating an alternate Boot Environment).

Reviewed by:	cperciva
MFC after:	1 week
2015-02-13 22:55:25 +00:00
brooks
f7b7391ee3 When upgrading, install the ELF runtime linkers before libraries.
This is required to prevent problems with nss modules that use libthr when
upgrading from releases prior to 10.1.

PR:		197366
Sponsored by:	DARPA, AFRL
Differential Revision:	D1790
Reviewed by:	cperciva
MFC after:	3 days
2015-02-06 23:44:16 +00:00
des
46c849e5d8 Use "RCS tag" instead of "$FreeBSD$ tag", since svn will obediently
expand the latter.

MFC after:	3 days
2014-12-22 23:03:18 +00:00
cperciva
ee1c8c7023 Strip trailing / characters from paths in "not present" index entries, not
just "directory" entries.

Prior to this commit, if / was added as part of a security update (how? In
the most recent case, because lib32 was accidentally omitted and was then
re-added, and every installer distribution set gets its own paths) then
the code which was supposed to filter out updates to deleted parts of the
base system (if someone decides to delete / then we shouldn't re-create it
for them) would instead get confused and decided that while / should exist,
// should not exist and needs to be removed.

This fixes the bug which caused freebsd-update to want to delete / (which is
harmless, since `rm /` fails, but scary nonetheless).  A workaround is being
applied to the update bits in order to avoid triggering the bug on unpatched
systems.

PR:		196055, 196091, 196147
2014-12-22 21:52:37 +00:00
sjg
b137080f19 Merge from head@274682 2014-11-19 01:07:58 +00:00
feld
d6722f4d2c Re-work non-persistent filesystem detection as it was not possible to
detect /dev/md backed mfs filesystems that way.

Differential Revision:	https://reviews.freebsd.org/D1163
Approved by:	ian
2014-11-18 13:38:09 +00:00
feld
1706600a13 Add logic for detecting non-persistent filesystems being utilized by
workdir which would break the upgrade process upon reboot.

Currently we check for tmpfs and mdmfs.

PR:		195006
Differential Revision:	https://reviews.freebsd.org/D1163
Approved by:	cperciva
2014-11-17 15:12:46 +00:00
sjg
d7cd1d425c Merge head from 7/28 2014-08-19 06:50:54 +00:00
bapt
c0cd28f928 use .Mt to mark up email addresses consistently (part2)
PR:		191174
Submitted by:	Franco Fichtner  <franco@lastsummer.de>
2014-06-20 09:57:27 +00:00
sjg
5e568154a0 Merge head 2014-04-28 07:50:45 +00:00
cperciva
9fb2c98475 Fix typo in r256646: We want to generate lists of directories in INDEX-OLD
and INDEX-NEW and compare them, not generate the same list of directories
from INDEX-OLD twice...

Pointy hats to:	cperciva & everybody who didn't proofread EN-13:04 enough
2013-11-09 04:50:05 +00:00
cperciva
05213a40b2 Be more selective when filtering for lib*.so.N files. These are deleted
at the end of the upgrade process, after warning users to upgrade any
3rd party software (e.g., from the ports tree) which might link to the
libraries being removed.

Prior to this commit, the line
  /usr/lib/libc.so|...|/lib/libc.so.7
matched the regex, which -- upgrading from 9.x to 10.x, where libc.so is
a regular file and thus was not part of a line which matched the regex --
resulted in freebsd-update thinking that /usr/lib/libc.so was a shared
library which was being removed as part of the upgrade.  This had some
unfortunate consequences.

This will be part of an upcoming Errata Notice.
2013-10-24 03:36:39 +00:00
des
e138182383 Allow ~ in file names so libtool droppings in contrib don't break updates.
It has happened twice now, and is likely to happen again.

Errata notice candidate.
2013-10-19 09:40:29 +00:00
cperciva
833891baa6 When installing updates, install new directories first and remove old
directories last.

This is generally handled by the fact that the list of filesystem objects
is sorted, but this sorting is broken by code which moves .so files ahead
(so that they're present before any binaries which use them)... that code
also moved .so files ahead of directories, which is a problem for upgrading
to 10.0 where there's a new directory containing new .so files.

Errata Notice Candidate.
2013-10-16 18:36:53 +00:00
cperciva
a8fe718230 Speed up freebsd-update IDS by using IFS to split fields instead of
forking lots of processes to run echo|cut.  In one test this reduced
the CPU time from 980s to 134s and the wallclock time from 806s to
132s.

Submitted by:	Oleg Ginzburg
2013-10-16 08:19:58 +00:00
sjg
62bb106222 Merge from head 2013-09-05 20:18:59 +00:00
joel
05a725b2d7 mdoc sweep. 2013-05-12 22:22:12 +00:00
sjg
0ee5295509 Updated dependencies 2013-02-16 01:23:54 +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
wblock
9fa9a2acad Fixes to man8 groff mandoc style, usage mistakes, or typos.
PR:		168016
Submitted by:	Nobuyuki Koganemaru
Approved by:	gjb
MFC after:	3 days
2012-05-24 02:24:03 +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
cperciva
e4fa596174 Add '%' and '@' to the set of characters which can appear in path names.
Without this change, freebsd-update refuses to accept 9.0 metadata files.
2011-10-23 06:23:11 +00:00
cperciva
f436e25c59 Make freebsd-update(8) smarter in how it handles $FreeBSD$ tags in
configuration files.

If the current file differs from the canonical version from the old release
only due to differences in the $FreeBSD$ tag (which can happen if the system
was installed from source code, depending on how the src tree was checked out)
then freebsd-update will treat the file as "unmodified" and silently update
it to the "clean" version in the new release.

If the only change being made to a configuration file is in the $FreeBSD$
tag (e.g., for any configuration files which have been modified locally, now
that we're using SVN and the $FreeBSD$ tag changes when a branch is created),
freebsd-update will no longer print the diff and prompt "Does this look
reasonable (y/n)?".

Nagged by:	pgollucci
MFC after:	1 month
2011-05-11 15:23:27 +00:00
gordon
3a6671bf9c Honor $PAGER instead of always calling more.
Approved by:	colin@
MFC after:	1 week
2011-01-24 04:32:59 +00:00
bcr
a72d8ff0d6 Typo fix in a comment.
Reviewed by:	cperciva
2010-11-10 14:33:09 +00:00
uqs
8ae3afcfad mdoc: drop redundant .Pp and .LP calls
They have no effect when coming in pairs, or before .Bl/.Bd
2010-10-08 12:40:16 +00:00
jh
7ad5ac6559 In backup_kernel(), support backing up subdirectories and handle files
with spaces correctly.

Approved by:	cperciva
MFC after:	1 month
2010-09-12 18:53:44 +00:00
cperciva
2dd00a9624 "freebsd-update fetch -r NEWRELEASE" is meaningless and probably a typo
for "freebsd-update upgrade -r NEWRELEASE".  Error out and suggest what
the user probably meant.

Submitted by:	James Seward
MFC after:	1 month
2010-09-10 20:20:28 +00:00
cperciva
27d52dcc5a Add warning about freebsd-update upgrade needing lots of disk space.
Submitted by:	jpaetzel
MFC after:	1 month
2010-09-10 19:23:59 +00:00
cperciva
36a61709f2 Remind the user that he needs to run 'freebsd-update install' to install
new bits after downloading them using 'freebsd-update upgrade'.

Submitted by:	bapt
MFC after:	1 month
2010-09-10 19:20:52 +00:00