History log of /src/usr.sbin/etcupdate/
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-8-3-RELEASE netbsd-9-4-RELEASE netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base netbsd-9-3-RELEASE cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 netbsd-9-2-RELEASE cjep_staticlib_x-base netbsd-9-1-RELEASE phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-8-2-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 netbsd-7-2-RELEASE pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 netbsd-7-1-2-RELEASE pgoyette-compat-base netbsd-7-1-1-RELEASE matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 bouyer-socketcan-base pgoyette-localcount-20170107 netbsd-7-1-RC1 pgoyette-localcount-20161104 netbsd-7-0-2-RELEASE localcount-20160914 netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE netbsd-7-base yamt-pagecache-base9 yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-6-1-1-RELEASE riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 netbsd-5-2-RELEASE netbsd-5-2-RC1 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 tls-maxphys-base matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231 matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE jym-xensuspend-nbase netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 jym-xensuspend-base netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 mjf-devfs2-base netbsd-4-0-1-RELEASE wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 wrstuden-fixsa-newbase wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-baseX yamt-pf42-base2 wrstuden-revivesa-base yamt-pf42-base keiichi-mipv6-nbase keiichi-mipv6-base matt-armv6-nbase matt-armv6-prevmlocking wrstuden-fixsa-base-1 netbsd-4-0-RELEASE cube-autoconf-base netbsd-4-0-RC5 netbsd-4-0-RC4 netbsd-4-0-RC3 netbsd-4-0-RC2 netbsd-4-0-RC1 matt-armv6-base matt-mips64-base hpcarm-cleanup-base netbsd-3-1-1-RELEASE netbsd-3-0-3-RELEASE wrstuden-fixsa-base abandoned-netbsd-4-base netbsd-3-1-RELEASE netbsd-3-0-2-RELEASE netbsd-3-1-RC4 netbsd-3-1-RC3 netbsd-3-1-RC2 netbsd-3-1-RC1 netbsd-4-base netbsd-3-0-1-RELEASE netbsd-3-0-RELEASE netbsd-3-0-RC6 netbsd-3-0-RC5 netbsd-3-0-RC4 netbsd-3-0-RC3 netbsd-3-0-RC2 netbsd-3-0-RC1 netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-3-base netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base netbsd-1-6-PATCH002-RELEASE netbsd-1-6-PATCH002 netbsd-1-6-PATCH002-RC4 netbsd-1-6-PATCH002-RC3 netbsd-1-6-PATCH002-RC2 netbsd-1-6-PATCH002-RC1 netbsd-1-6-PATCH001 netbsd-1-6-PATCH001-RELEASE netbsd-1-6-PATCH001-RC3 netbsd-1-6-PATCH001-RC2 netbsd-1-6-PATCH001-RC1 fvdl_fs64_base netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base
1.1 22-Mar-2002 martti

Added etcupdate (etcupdate-20020321 in pkgsrc)


Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base
1.65 17-Jan-2022 lukem

etcupdate: fix error message for unimplemented option

noted by rudolf on source-changes-d


1.64 09-Jan-2022 lukem

etcupdate: add -? for help. improve option errors

Support -? to show help.
Implemented using getopts "leading colon optstring" feature.
Improve error messages for unknown options and missing arguments.
Change usage-related errors from stdout to stderr.
Keep all other errors to stdout for now.


1.63 09-Jan-2022 lukem

etcupdate: -h to stdout. improve help

Send -h help to stdout not stderr, and exit 0 not 1.
Show options alphabetically.
Use UPPER_CASE instead of lowercase as the convention for argument names.


1.62 09-Jan-2022 lukem

etcupdate: style change: function { on new line


Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base
1.61 02-Dec-2020 wiz

comparision -> comparison


Revision tags: netbsd-8-3-RELEASE netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-8-2-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 bouyer-socketcan-base pgoyette-localcount-20170107 pgoyette-localcount-20161104 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
1.60 03-Jan-2016 martin

From Jim Bernard in PR install/50615: install_checksum expects a path
relative to ${DESTDIR}, and most callers did pass it that way - fix the
one place where it eroneously was called with a ${DESTDIR} path.


1.59 13-Nov-2014 apb

Synchronise the "-s" part of the usage message with postinstall.
A colon-separated list of tgz files is no longer accepted; you
must use multiple -s options instead.


Revision tags: netbsd-7-base tls-earlyentropy-base tls-maxphys-base
1.58 04-Aug-2014 apb

branches: 1.58.2;
Synchronise several shell_quote implementations, and:
* Elide some unnecessary pairs of quotation marks, to improve readability.
For example, shell_quote "''" is now \'\' instead of ''\'''\'''.
* Don't add quotes around words that contain only safe characters,
to improve readability.
* LC_COLLATE=C to prevent [a-zA-Z] from matching non-ASCII characters.
* Use ${SED} if defined.


1.57 16-Jun-2014 apb

Use extra="${2-/,}" to use $2 if defined, else default to "/,".


1.56 12-Jun-2014 apb

Add "-d destdir" option to etcupdate.
This has been only lightly tested.


1.55 12-Jun-2014 apb

Keep track of whether anything was changed (or needs to be changed),
and print a message at the end if nothing needs to be done.


1.54 12-Jun-2014 apb

When populating ${TEMPROOT} from ${SRCDIR} by copying, use the mtree set
files from ${BINARYDIR}/etc/mtree/set.{etc,xetc} as a list of files to
copy (and copy using pax instead of cp).

This prevents unnecessary copying of extraneous files, such as in the
case that BINARYDIR refers to a directory where everything has been
unpacked, instead of a directory where only the etc and xetc sets have
been unpacked.

Also convert a relative TEMOROOT to an absolute path.


1.53 12-Jun-2014 apb

There is a file named "._etcupdate_${TEMPROOT}${1}" was
never created, so don't try to delete it. Delete "$B" instead.


1.52 12-Jun-2014 apb

When processing the -s option, the variable used is ${arg},
not ${ARG}. Also adjust an error message to say
"Nonexistent or invalid file or directory", not just
"Nonexistent file or directory".


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 yamt-pagecache-base6
1.51 15-Aug-2012 apb

branches: 1.51.2; 1.51.8;
Remove the ability to specify multiple colon-separated file names with
a single "-s" option. Multiple "-s" options must now be used instead.
We have been printing a warning about this since 2008-09-14.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 netbsd-6-1-RC2 netbsd-6-1-RC1 netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
1.50 24-Jun-2010 joerg

branches: 1.50.6;
Run services_mkdb if only the old hash exists


Revision tags: matt-premerge-20091211 jym-xensuspend-nbase jym-xensuspend-base
1.49 08-Nov-2008 reed

Output (when verbose) when storing checksum files.
This may be a little noisy.
As discussed on current-users in March 2008.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2
1.48 22-Oct-2008 apb

Move quotation marks to the correct place in eval statements
that were broken by the previous change.


1.47 04-Oct-2008 apb

In both postinstall and etcupdate, in modes where the -s argument
refers to tgz files or to a directory in which tgz files have already
been extracted, make it an error for the files that should have come
from etc.tgz to be missing. This is intended to prevent users from
accidentally deleting necessary files when they run "postinstall -s
xetc.tgz fix".

Use the absence of .../etc/mtree/set.etc in the extracted directory
as a test for the error case.


Revision tags: wrstuden-revivesa-base-3
1.46 14-Sep-2008 apb

Remove options deprecated in NetBSD-4.0:
* Remove "-b binarydir" option (use "-s binarydir" instead).
* Remove "-s srcdir/etc" option (use "-s srcdir" instead).

Also document that "-s tgz1:tgz2" is merely deprecated, not removed
(use "-s tgz1 -s tgz2" instead).


1.45 14-Sep-2008 apb

Allow "-s tgzfile1:tgzfile2" for backward compatibility. Print a
warning to encourage users to switch to using "-s tgzfile1 -s tgzfile2".


Revision tags: wrstuden-revivesa-base-2
1.44 07-Sep-2008 apb

fix missing '$' in previous.


1.43 07-Sep-2008 apb

* Allow colons to appear in the names of tgz files, to address PR 39459.
* Allow spaces to appear in the name of the TEMPROOT and SRCDIR directories.
* Remove the ability to specify a colon-separated list of tgz files
using a single "-s" option, because ":" is now a valid character within the
name of a single file. Callers should use multiple "-s" options
instead.


1.42 07-Sep-2008 apb

Remove "shift" commands that should have been removed when the
option parsing loop was converted to use getopts. (Hi christos)


1.41 05-Sep-2008 apb

remove debugging code accidentally committed in revision 1.39.


1.40 05-Sep-2008 apb

Redo previous in a way that more closely matches the style used
in postinstall(8).


1.39 05-Sep-2008 apb

The shell builtin getopts returns options without the preceding "-",
so adjust a case statement to compensate.


1.38 05-Sep-2008 christos

- `` -> $() and quoting
- getopt -> getopts
- some errors to stderr
- more quoting


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 wrstuden-revivesa-base
1.37 30-Apr-2008 martin

branches: 1.37.2;
Convert to 2 clause license


Revision tags: yamt-pf42-baseX yamt-pf42-base keiichi-mipv6-nbase keiichi-mipv6-base matt-armv6-nbase matt-armv6-base hpcarm-cleanup-base
1.36 20-Dec-2007 apb

branches: 1.36.4;
Pass NETBSDSRCDIR in the environment to make. This is insurance against
Makefiles that should have an early .include <bsd.own.mk> but that fail
to do so. It's also slightly more efficient.


Revision tags: matt-armv6-prevmlocking cube-autoconf-base matt-mips64-base
1.35 15-May-2007 martti

branches: 1.35.4;
/etc/services needs special attention.


1.34 26-Mar-2007 apb

* Make etcupdate's -s option accept a colon-separated list of tgz
files. (It was already possible to use several -s options.)
* Change man page to refer to "-s tgzdir" instead of "-s tempdir",
to reduce confusion between tempdir and temproot.
* Always use a temproot directory, even if passed "-s tgzdir".
* Always invoke "postinstall check", even when not using a source dir.
* Add a BUGS section saying that using -s srcdir is not recommended.

Reviewed by lukem and martti.


1.33 03-Mar-2007 apb

Revert previous. MAKEDEV.subr no longer exists.


1.32 01-Mar-2007 apb

If MAKEDEV.subr is updated, remember to run MAKEDEV later.


1.31 11-Feb-2007 apb

Run pwd_mkdb before running mtree.
Reported by Hauke Fath in PR 35570.


1.30 11-Jan-2007 martti

Clean ${SRCDIR}/etc when done. Patch provided by rudolf.
http://mail-index.netbsd.org/tech-toolchain/2007/01/11/0001.html


Revision tags: netbsd-4-base
1.29 03-Sep-2006 itohy

branches: 1.29.2;
Use "stty size" to acquire screen width reliably.
The fields of the first line of "stty -a" is not fixed.
Fix PR bin/32343.


Revision tags: abandoned-netbsd-4-base
1.28 26-Feb-2006 apb

Fix default handling. etcupdate with no "-s" flag
should act like "etcupdate -s /usr/src".
Approved by christos.


1.27 26-Feb-2006 apb

Typo in comment.


1.26 26-Feb-2006 apb

Pass BUILD=1 in make environment.
Fixes PR 30385 from Rui Paulo.
Approved by chrisros.


1.25 19-Feb-2006 apb

Wording changes to clarify some the options presented after
a file is merged.


1.24 19-Feb-2006 apb

Fix errors in previous. I accidentally committed the wrong code.


1.23 18-Feb-2006 apb

Give etcupdate the ability to use etc.tgz and xetc.tgz.

* Expand the "-s" flag to -s {srcdir|tgzfile|tempdir}.
* Deprecate the "-b" flag. It is replaced by "-s tempdir".
* Change "-s srcdir" to refer to the top of the source tree (e.g.
/usr/src) instead of the etc subdirectory.

In etcupdate's interactive phase, enhance the "s" command to be able
to invoke alternative diff commands.

Also some style changes.

Approved by christos


1.22 17-Apr-2005 lukem

Tweaks for the move of postinstall from /etc to /usr/sbin


Revision tags: netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-3-base netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base
1.21 12-Nov-2003 grant

branches: 1.21.4; 1.21.6;
s/netbsd.org/NetBSD.org/i


1.20 06-Nov-2003 martti

Set ${MACHINE} and ${MACHINE_ARCH}.


1.19 14-Jul-2003 lukem

add MTREE=mtree back, for systems with some .mk version skew...


1.18 10-Jul-2003 lukem

Rename a large chunk of the make(1) variables which refer to a
program/tool from "FOO" to "TOOL_FOO". The new variables are:
TOOL_ASN1_COMPILE TOOL_CAP_MKDB TOOL_CAT TOOL_CKSUM TOOL_COMPILE_ET
TOOL_CONFIG TOOL_CRUNCHGEN TOOL_CTAGS TOOL_DB TOOL_EQN TOOL_FGEN
TOOL_GENCAT TOOL_GROFF TOOL_HEXDUMP TOOL_INDXBIB TOOL_INSTALLBOOT
TOOL_INSTALL_INFO TOOL_M4 TOOL_MAKEFS TOOL_MAKEINFO TOOL_MAKEWHATIS
TOOL_MDSETIMAGE TOOL_MENUC TOOL_MKCSMAPPER TOOL_MKESDB
TOOL_MKLOCALE TOOL_MKMAGIC TOOL_MKTEMP TOOL_MSGC TOOL_MTREE
TOOL_PAX TOOL_PIC TOOL_PREPMKBOOTIMAGE TOOL_PWD_MKDB TOOL_REFER
TOOL_ROFF_ASCII TOOL_ROFF_DVI TOOL_ROFF_HTML TOOL_ROFF_PS
TOOL_ROFF_RAW TOOL_RPCGEN TOOL_SOELIM TOOL_SUNLABEL TOOL_TBL
TOOL_UUDECODE TOOL_VGRIND TOOL_ZIC

For each, provide default in <bsd.sys.mk> of the form:
TOOL_FOO?= foo
and for the ${USETOOLS}=="yes" case in <bsd.own.mk>, provide override:
TOOL_FOO= ${TOOLDIR}/bin/${_TOOL_PREFIX}foo

Document all of these in bsd.README.

This cleans up a chunk of potential (and actual) namespace collision
within our build infrastructure, as well as improves consistency in
the share/mk documentation and provision of appropriate defaults for
each of these variables.


1.17 02-Apr-2003 atatat

Use awk instead of fgrep and sed, and default to 80 if we get
something that is arithmetically equal to 0.


1.16 02-Apr-2003 perry

Automatically figure out how wide the terminal is with an ugly
`stty | fgrep | sed` expression.
Really, sdiff should figure this out by default but it does not.


1.15 02-Apr-2003 perry

set USETOOLS=never when doing make distribution, so that users don't have
to set it themselves or set TOOLDIR to use etcupdate.

Closes PR install/19752 from Oliver Tonnhofer


1.14 02-Apr-2003 perry

Remove a NO_SENDMAIL=1 in the construction of the reference etc/ -- it
was needlessly preventing the update of sendmail configs like submit.cf
Should close PR misc/20968 from Martin Weber


1.13 02-Apr-2003 perry

Add a -l option telling etcupdate to skip any file who's RCS id has
not been changed.
(-l means "skip local modifications".)
Code and documentation from Christopher Richards in PR bin/20200


1.12 03-Mar-2003 martti

Checksum files produced by "etcupdate -a" should not be stored in /etc
as / might be a read-only filesystem (PR#20201).


1.11 01-Mar-2003 mrg

allow /etc/etcupdate.conf (and ~/.etcupdate.conf) to set IGNOREFILES to a list
of files that etcupdate will ignore; never considering them for updating.


1.10 04-Feb-2003 martti

Use md5 instead of sum (bin/20196).


1.9 24-Jan-2003 martti

Add a new -a flag (automatically update files which have not been
locally modified). Patch provided by Sverre Froyen in a private mail,
slightly modified by me.


Revision tags: fvdl_fs64_base
1.8 27-Dec-2002 jmmv

Fix a typo in the yesno() function: add a missing question mark.
Approved by martti.


1.7 28-Sep-2002 martti

Don't execute /etc/postinstall if -b was used.


1.6 27-Sep-2002 grant

fix typo, from Julio Merino in bin/18440.


1.5 31-Jul-2002 mrg

fix usage() message for "-s" argument. ie, do *not* suggest "/usr/src"
as this causes "make distribution" to be run in /usr/src.


1.4 08-Jul-2002 wiz

Fix typo reported in bin/17516.


Revision tags: netbsd-1-6-base
1.3 15-May-2002 martti

branches: 1.3.2;
Include user's PATH (pkg/16828 by HAMAJIMA Katsuomi)


1.2 13-May-2002 martti

Run /etc/postinstall if it's found


1.1 22-Mar-2002 martti

Added etcupdate (etcupdate-20020321 in pkgsrc)


Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base
1.27 14-Jan-2022 lukem

etcupdate(8): consistent -h and -? text


1.26 09-Jan-2022 wiz

Match verb forms.


1.25 09-Jan-2022 lukem

etcupdate: add -? for help. improve option errors

Support -? to show help.
Implemented using getopts "leading colon optstring" feature.
Improve error messages for unknown options and missing arguments.
Change usage-related errors from stdout to stderr.
Keep all other errors to stdout for now.


1.24 09-Jan-2022 lukem

etcupdate: -h to stdout. improve help

Send -h help to stdout not stderr, and exit 0 not 1.
Show options alphabetically.
Use UPPER_CASE instead of lowercase as the convention for argument names.


Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 netbsd-9-2-RELEASE cjep_staticlib_x-base netbsd-9-1-RELEASE phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126
1.23 21-Nov-2018 martin

A few hints that sets may come in .tar.xz format (instead of .tgz)


Revision tags: netbsd-8-3-RELEASE netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 netbsd-7-2-RELEASE pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 netbsd-7-1-2-RELEASE pgoyette-compat-base netbsd-7-1-1-RELEASE matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 bouyer-socketcan-base pgoyette-localcount-20170107 netbsd-7-1-RC1 pgoyette-localcount-20161104 netbsd-7-0-2-RELEASE localcount-20160914 netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base tls-earlyentropy-base tls-maxphys-base
1.22 12-Jun-2014 apb

branches: 1.22.22; 1.22.24;
Update date for previous, and fix some small errors.


1.21 12-Jun-2014 apb

Add "-d destdir" option to etcupdate.
This has been only lightly tested.


Revision tags: yamt-pagecache-base9 riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 yamt-pagecache-base6
1.20 15-Aug-2012 apb

branches: 1.20.2; 1.20.8;
Remove the ability to specify multiple colon-separated file names with
a single "-s" option. Multiple "-s" options must now be used instead.
We have been printing a warning about this since 2008-09-14.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 netbsd-6-1-RC2 netbsd-6-1-RC1 netbsd-6-0-1-RELEASE matt-nb6-plus-nbase netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231 matt-premerge-20091211
1.19 08-Dec-2009 mbalmer

branches: 1.19.6;
s/the the/the/


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE jym-xensuspend-nbase netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 jym-xensuspend-base netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2
1.18 04-Oct-2008 apb

In both postinstall and etcupdate, in modes where the -s argument
refers to tgz files or to a directory in which tgz files have already
been extracted, make it an error for the files that should have come
from etc.tgz to be missing. This is intended to prevent users from
accidentally deleting necessary files when they run "postinstall -s
xetc.tgz fix".

Use the absence of .../etc/mtree/set.etc in the extracted directory
as a test for the error case.


Revision tags: wrstuden-revivesa-base-3
1.17 14-Sep-2008 apb

Remove options deprecated in NetBSD-4.0:
* Remove "-b binarydir" option (use "-s binarydir" instead).
* Remove "-s srcdir/etc" option (use "-s srcdir" instead).

Also document that "-s tgz1:tgz2" is merely deprecated, not removed
(use "-s tgz1 -s tgz2" instead).


Revision tags: wrstuden-revivesa-base-2
1.16 07-Sep-2008 apb

Document the change in meaning of "-s foo:bar". It now means a single
file or directory nmed "foo:bar". If you want the old meaning,
use "-s foo -s bar" instead.


Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 wrstuden-revivesa-base
1.15 30-Apr-2008 martin

branches: 1.15.2;
Convert TNF licenses to new 2 clause variant


Revision tags: yamt-pf42-baseX yamt-pf42-base keiichi-mipv6-nbase keiichi-mipv6-base matt-armv6-nbase
1.14 17-Mar-2008 reed

branches: 1.14.2;
Document some about being able to view differences and
toggling the different diff formats/tools.


Revision tags: matt-armv6-prevmlocking cube-autoconf-base matt-armv6-base matt-mips64-base hpcarm-cleanup-base
1.13 26-Mar-2007 apb

branches: 1.13.4; 1.13.8;
* Make etcupdate's -s option accept a colon-separated list of tgz
files. (It was already possible to use several -s options.)
* Change man page to refer to "-s tgzdir" instead of "-s tempdir",
to reduce confusion between tempdir and temproot.
* Always use a temproot directory, even if passed "-s tgzdir".
* Always invoke "postinstall check", even when not using a source dir.
* Add a BUGS section saying that using -s srcdir is not recommended.

Reviewed by lukem and martti.


Revision tags: netbsd-4-base
1.12 11-Aug-2006 hubertf

branches: 1.12.2;
Xref etcupdate from postinstall, and vice versa.


Revision tags: abandoned-netbsd-4-base
1.11 18-Feb-2006 apb

branches: 1.11.2;
Give etcupdate the ability to use etc.tgz and xetc.tgz.

* Expand the "-s" flag to -s {srcdir|tgzfile|tempdir}.
* Deprecate the "-b" flag. It is replaced by "-s tempdir".
* Change "-s srcdir" to refer to the top of the source tree (e.g.
/usr/src) instead of the etc subdirectory.

In etcupdate's interactive phase, enhance the "s" command to be able
to invoke alternative diff commands.

Also some style changes.

Approved by christos


Revision tags: netbsd-3-0-2-RELEASE netbsd-3-0-1-RELEASE netbsd-3-0-RELEASE netbsd-3-0-RC6 netbsd-3-0-RC5 netbsd-3-0-RC4 netbsd-3-0-RC3 netbsd-3-0-RC2 netbsd-3-0-RC1 netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-3-base netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base
1.10 02-Apr-2003 wiz

branches: 1.10.4; 1.10.6; 1.10.10;
Some Bl improvements; drop trailing whitespace; don't comma-separate
"a, and b"; mention arguments in option listing; list options in SYNOPSIS
in default order (those without arguments first).


1.9 02-Apr-2003 perry

Massive cleanup of the document, although there is a lot more work to
do still.


1.8 02-Apr-2003 perry

Add a -l option telling etcupdate to skip any file who's RCS id has
not been changed.
(-l means "skip local modifications".)
Code and documentation from Christopher Richards in PR bin/20200


1.7 17-Mar-2003 wiz

New sentence, new line; bump date for recent changes.


1.6 03-Mar-2003 martti

Checksum files produced by "etcupdate -a" should not be stored in /etc
as / might be a read-only filesystem (PR#20201).


1.5 01-Mar-2003 mrg

allow /etc/etcupdate.conf (and ~/.etcupdate.conf) to set IGNOREFILES to a list
of files that etcupdate will ignore; never considering them for updating.


1.4 14-Feb-2003 grant

The correct capitalisation of 'NetBSD.org' is (you
guessed it) 'NetBSD.org'.

some mdoc fixes.


1.3 24-Jan-2003 wiz

grammar fix.


1.2 24-Jan-2003 martti

Add a new -a flag (automatically update files which have not been
locally modified). Patch provided by Sverre Froyen in a private mail,
slightly modified by me.


Revision tags: fvdl_fs64_base netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base
1.1 22-Mar-2002 martti

branches: 1.1.2;
Added etcupdate (etcupdate-20020321 in pkgsrc)