History log of /src/usr.sbin/postinstall/
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-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-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
1.3 14-Jun-2019 christos

make the script MI again (same across all archs)


1.2 14-Jun-2019 christos

build dynamically the list of compat archsubdirs.


Revision tags: netbsd-8-3-RELEASE netbsd-8-2-RELEASE 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 wrstuden-fixsa-base abandoned-netbsd-4-base netbsd-4-base
1.1 17-Apr-2005 lukem

branches: 1.1.2; 1.1.86;
Move /etc/postinstall (and the etc.tgz set) to /usr/sbin/postinstall
(and the base.tgz set).


Revision tags: perseant-exfatfs-base-20250801 perseant-exfatfs-base-20240630 perseant-exfatfs-base cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base phil-wifi-20200421 phil-wifi-20200411 phil-wifi-20200406
1.233 14-Jun-2019 christos

build dynamically the list of compat archsubdirs.


1.232 13-Jun-2019 christos

remove obsolete library files for all the "compat" subdirs not just amd64
and sparc64.


1.231 13-Jun-2019 christos

Anchor the egrep search to avoid npf.conf matching pf.conf, but don't
anchor $ so that blacklistd machines blackist.


1.230 13-Jun-2019 christos

1. fix /etc/defaults/*.conf files
a. there are more rc.conf.append arch than only for x86, deal with them too.
b. populate new /etc/defaults/rc.conf files
2. merge sed patterns
3. deal with empty exclude lists


1.229 13-Jun-2019 christos

handle $SOURCEMODE


1.228 12-Jun-2019 christos

Add missing npf.boot.conf


1.227 12-Jun-2019 christos

Remove hard-coded lists of rc files and generate them dynamically from the
sets. Fixes issues with automount, npf_boot etc. that were never updated here!


Revision tags: phil-wifi-20190609
1.226 11-May-2019 maxv

Add smtoff, an rc.d script that disables Simultaneous Multi-Threading. It
parses the output of cpuctl, and executes "cpuctl offline" for each CPU
that has SmtID!=0.

The default is "smtoff=NO", which means that SMT remains enabled.


1.225 11-Apr-2019 martin

Do not test contents of non-existing Xresource file (if X11 sets have
not been installed)


1.224 09-Mar-2019 mrg

remove 30-urw-aliases.conf and add 45-generic.conf and 60-generic.conf.

should fix build issues reported on current-users.


1.223 08-Mar-2019 martin

XDM Xresources has been extended and the new values are important for proper
working of newer XDM. Check for the missing values and ask the user to
fix manually.


1.222 31-Jan-2019 msaitoh

Stop continuing /var/shm check when var_shm_symlink is in /etc/rc.conf.
OK'd by martin.


Revision tags: pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226
1.221 04-Dec-2018 plunky

rc.d/isdnd is obsolete


Revision tags: pgoyette-compat-1126
1.220 06-Nov-2018 plunky

add rc.d/dhcpd6


1.219 26-Oct-2018 martin

Add support for MAKEDEV living in /etc instead of /dev, this is one of
the supported options when init(8) creates a union mounted tmpfs on /dev.


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930
1.218 23-Sep-2018 maxv

Remove the userland part of ISDN. The kernel part is untouched for now.
ipppctl was actually an exact copy of pppoectl; there is no functional
change in pppoectl in this commit.


Revision tags: pgoyette-compat-0906 pgoyette-compat-0728
1.217 02-Jul-2018 roy

Remove dhclient references.


Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base perseant-stdc-iso10646-base
1.216 10-Jul-2017 simonb

branches: 1.216.4; 1.216.6;
Add npfd to the list of rc.d scripts to check.


1.215 16-Jun-2017 christos

add missing pam items (cron, racoon)


Revision tags: netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1
1.214 17-Apr-2017 martin

branches: 1.214.4;
If -x (xsrc location) is passed for "check", display it also in the
"how to fix" invocation instructions.


1.213 01-Apr-2017 roy

Move dhcpcd lease files to new location.


1.212 01-Apr-2017 roy

Move dhcpcd's rdm monotonic file if it exists.


1.211 01-Apr-2017 roy

Pluck dhcpcd.conf from dist/src
Move dhcpcd.duid and dhcpcd.secret from /etc to /var/db/dhcpcd/{duid,secret}


Revision tags: pgoyette-localcount-20170320
1.210 11-Feb-2017 uwe

Don't use slow file_exists_exact if we don't have to.

file_exists_exact function was introduced in 1.26 for the benefit of
cross-building on OS X case-insensitive file system. It is extremely
slow on diskless machines. That becomes especially noticeable when
you upgrade a system that has a lot of obsolete files, it can take
literally hours.


Revision tags: bouyer-socketcan-base
1.209 09-Jan-2017 christos

branches: 1.209.2;
don't try to install rc scripts for programs not installed


1.208 07-Jan-2017 christos

add nsd


Revision tags: pgoyette-localcount-20170107
1.207 03-Jan-2017 jnemeth

add rtsold to rc_obsolete_files :-(


Revision tags: pgoyette-localcount-20161104
1.206 19-Oct-2016 christos

rename populate_rc to update_rc and copy if source is newer.


Revision tags: localcount-20160914
1.205 02-Sep-2016 kre

PR toolchain/51457 -- be more posix compat with sort usage, though it
(currently anyway) makes no difference on NetBSD.


1.204 02-Sep-2016 kre

PR toolchain/51457 -- use sort correctly


1.203 20-Aug-2016 christos

unbound additions


Revision tags: pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
1.202 30-Jan-2016 christos

branches: 1.202.2;
Add ip6addrctl


1.201 24-Aug-2015 christos

handle blacklistd properly.


1.200 21-Aug-2015 jnemeth

PR/50158 - Simon Burge -- postinstall does not know about blacklistd


1.199 15-Aug-2015 uebayasi

Whitespace.


1.198 11-Jul-2015 dholland

Comma of result is (though increasingly common) not formally recognized
grammar[,;] use a semicolon.


1.197 08-Jul-2015 jnemeth

Check for an out of date /etc/fonts/fonts.conf and if so, forcibly
update it (it is not intended to be user editable). This is
primarily intended so that pkgsrc fonts installed in the new location
can be found.


1.196 02-Jul-2015 martin

PR install/50020: postinstall does not check for mandoc in /etc/man.conf.
Add a check, but ask the user to fix manually (the file could have local
modifications).


1.195 02-Jul-2015 martin

Simplify previous, pass awk as TOOL_AWK (that is what the makefile uses),
create an obj dir for make and force it to use that.
This version now works with read-only source again.


1.194 01-Jul-2015 martin

Clean up the src/etc/mtree directory after using it to generate the mtree
spec file.
XXX this is fishy, we should find a better way.


1.193 28-Jun-2015 martin

Pass AWK to make when invoking emit_dist_file.
Part of fixing PR toolchain/50004.


1.192 27-Jun-2015 martin

Terminate the obsole directory walking loop when we hit "/" or "."
(both relative to DESTDIR), I have seen it run into an endless loop with
_path=. when invoked from the top level make with some (valid) args.


1.191 31-Mar-2015 martin

Add resize_root


1.190 21-Mar-2015 jmcneill

Process /etc/modules.conf (if present) at startup, before securelevel is
raised, to allow module loading on ports without a module aware bootloader.


1.189 21-Feb-2015 joerg

Add rc script for /sbin/iscsid.


1.188 30-Dec-2014 apb

rc_obsolete_vars is a list of pairs, so format it with one pair per line.


1.187 16-Dec-2014 jnemeth

add powerpc variants to the list of potentially obsolete modules to check


1.186 13-Dec-2014 uebayasi

Fix previous; obsolete vars are pairs.


1.185 13-Dec-2014 uebayasi

postinstall(8): Define long item lists as variables to improve future diff-ability.


1.184 01-Dec-2014 uebayasi

Handle obsolete xen/pae-xen kernel modules; reported by John D. Baker.


1.183 12-Nov-2014 apb

Fix tab/space inconsistency in comment.


1.182 12-Nov-2014 apb

Change the order of arguments to check_ids, placing the two file names
adjacent to each other. Also add a comment explaining the "start"
argument and the "SKIP" special value.


1.181 11-Nov-2014 martin

Make check_ids take an additional argument (the corresponding source
file) and grep that on error for the missing information, so the user
gets all the info needed how to "FIX MANUALLY".


1.180 11-Sep-2014 roy

Remove rtsol(8) and rtsold(8) as their functionality is in dhcpcd(8).
Remove rtsol(8) from rc.d/network.
Add -w seconds command to ifconfig to wait for N seconds for until DAD
has finished on all addresses.
Use ifconfig -w in rc.d/network instead of a forced sleep.

As discussed on tech-net@


1.179 12-Aug-2014 apb

In get_makevar, ask make to recursively expand the variable,
not just print the unexpanded value. This is done by
using make -V '${VAR}' instead of make -V 'VAR'.


1.178 12-Aug-2014 apb

Quoting fixes in several eval commands.


1.177 12-Aug-2014 apb

Check for and delete ${DEST_DIR}/@RUNDIR@, not /@RUNDIR@.
Also remove an unnecessary eval in do_dhcpcdrundir and
fix a typo in the description.


Revision tags: tls-maxphys-base
1.176 11-Aug-2014 roy

FONTCONFIG_DIR not existing does not need to be fixed.


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

branches: 1.175.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.174 16-Jun-2014 apb

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


1.173 16-Jun-2014 apb

Delete trailing slash with "${1%/}", not "${1#/}".


1.172 16-Jun-2014 apb

Add a new obsolete_stand target, disabled by default,
to delete old files and subdirectories under /stand/${MACHINE}.


1.171 16-Jun-2014 apb

Remove stray quotation mark


1.170 16-Jun-2014 apb

In do_sendmail, use unprefix to fix up paths that will be
processed by obsolete_paths.


1.169 16-Jun-2014 apb

Clarify wording in a comment for obsolete_paths.


1.168 16-Jun-2014 apb

Add bre_quote (copied from etcupdate), and unprefix functions.


1.167 16-Jun-2014 apb

Add SORT and SED variables, in case a host environment needs them.


Revision tags: yamt-pagecache-base9
1.166 25-Apr-2014 mrg

don't apply "ptyfsoldnodes" if /dev/pts does not exist, even if ptyfs
is listed in /etc/fstab. without this, postinstall happily removes
all your ptys leaving you with none at all. return an error if we
have ptyfs in /etc/fstab, but no /dev/pts.


Revision tags: riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3
1.165 08-Mar-2014 martin

branches: 1.165.2;
Fix wrong variable name, PR bin/48647 from Jim Bernard.


1.164 15-Feb-2014 jmmv

Fix path to atf-run.hooks after import of atf-0.19.

Problem found by martin@. Not spotted by me, I think, because I always use
postinstall on an etc.tgz file and forgot about this code path.


1.163 29-Jan-2014 skrll

Remove harmful whitespace. Now the /var/shm check can succeed quietly.


1.162 17-Jan-2014 martin

Add a check to remove the temporarily (eroneously) created /@RUNDIR@
(PR bin/48529)


1.161 17-Dec-2013 njoly

Skip varshm check if there is no fstab (like in chroots).


1.160 13-Dec-2013 martin

Cosmetics: use "msg" instead of "echo"


1.159 05-Dec-2013 martin

Add a "varshm" check/fix to make sure /var/shm is mentioned in /etc/fstab
(and add a default of tmpfs with 25% of available ram limit if not).
To avoid the warning but not mount the tmpfs, just comment out the line
for /var/shm.

Also move "obsolete" to the end of the list again, as it should be run
last.


1.158 09-Sep-2013 prlw1

Add pkgpath.conf to /etc/defaults check.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base
1.157 14-Jul-2013 htodd

And add a skip for the deleted _gpio in uid.


1.156 14-Jul-2013 htodd

Add _rtadvd to uid check as well.


1.155 14-Jul-2013 htodd

Adding _rtadvd to group check.


1.154 17-Jun-2013 christos

don't echo the make command in the output file.


1.153 15-Jun-2013 christos

- missing semicolon
- missing SKIPS
- assignment instead of comparison


1.152 11-Jun-2013 christos

more thorough passwd/group checks.


1.151 10-Jun-2013 mrg

implement SOURCEMODE version of "fontconfig".


1.150 06-Jun-2013 mrg

update do_fontconfig() to update all the conf.avail files. fixes
errors that xkbcomp spews when the X server starts since fontconfig
was updated.


1.149 21-May-2013 prlw1

add _gpio to gid check


1.148 16-May-2013 yamt

try to sync lists of rc.d scripts


Revision tags: agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 yamt-pagecache-base6
1.147 22-Sep-2012 ast

Make sure that the "to fix, run: ..." instructions actually work cut-and-paste
By default postinstall has mode 644 so /bin/sh or similar needs to be prepended


1.146 15-Aug-2012 apb

branches: 1.146.2;
Remove the ability to specify multiple colon-separated fiel 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.


1.145 15-Aug-2012 apb

Don't rely on stat(1) with format "%SHr" to print the correct names.
That uses devname(3) internally, which doesn't work at all in a cross
build environment, and doesn't do what I thought even in a native
environment.

Instead, parse the device major numbers for the pty master and slave
devices from the output of "MAKEDEV -s pty0" and check those against the
actual device node that we are thinking of removing.


1.144 14-Aug-2012 apb

Change do_ptyfsoldnodes to use stat(1) to check whether a file is
a device node of the correct type. We no longer need to get the
major number from searching the MAKEDEV script, because the output
from stat(1) will contain the strings "tty" or "pty" instead of
the numeric major numbers. We also no longer rely on "find -ls".


1.143 14-Aug-2012 apb

Use grep -E and grep -F instead of egrep and fgrep. This reduces the
number of tools that may need to be passed in the environment.


1.142 14-Aug-2012 apb

Remove the "stat" shell function (stat op format target value).
It has been unused since revision 1.14 dated 2006-05-30.


1.141 13-Aug-2012 martin

Cleanup temporary file


1.140 13-Aug-2012 martin

Make "fix ptyfsoldnodes" more verbose


1.139 13-Aug-2012 martin

Add a ptyfsoldnodes item that checks/removes old /dev/{p,t}ty* nodes
if ptyfs is used.


1.138 28-Jun-2012 kefren

add ldpd rc.d script here too


1.137 01-Jun-2012 jnemeth

add _tss to uid and gid checks


Revision tags: yamt-pagecache-base5 yamt-pagecache-base4
1.136 29-Feb-2012 jmmv

Properly find atf configuration files in the source tree. My previous
change dealt properly with etc.tgz only. Addresses PR bin/45870.


1.135 27-Feb-2012 jmmv

Populate /etc/atf with any missing files. Fixes PR bin/45870.


1.134 22-Feb-2012 apb

quote SRC_DIR and DEST_DIR everywhere. Also wrap some long lines.


1.133 22-Feb-2012 apb

Fix a call to pwd_mkdb in the case that DEST_DIR is the empty string.


1.132 21-Feb-2012 nakayama

Pass -d option to pwd_mkdb(8) in order to make databases at proper location.


1.131 18-Feb-2012 njoly

Use msg for indentation.


1.130 17-Feb-2012 apb

Add "pwd_mkdb" item, which checks whether /etc/pwd.db is in the
new format, and runs "pwd_mkdb -V 1 /etc/master.passwd" to fix it.


Revision tags: netbsd-6-base
1.129 15-Feb-2012 joerg

branches: 1.129.2;
Clean up cat pages that are older than the corresponding man pages.
Remove cat page directories that are empty.


1.128 17-Dec-2011 tsutsui

Add an rc.d(8) script for isibootd(8). Taken from ndbootd(8).


1.127 26-Nov-2011 tls

Make the rndsave structure public -- the kernel will learn to read it
and sysinst may learn to write it (since, on some systems, most of
the keyboard input they ever get happens to be during install). Fix a
couple of minor problems with the random_seed rc script addition.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base
1.126 07-Oct-2011 mrg

branches: 1.126.2;
fix the sendmail, mailerconf and atf checks to use ${DEST_DIR}.
add a note about this to the top of the file.


1.125 06-Sep-2011 jym

/etc/defaults/rc.conf can be modified at build time by getting additional
arch-specific hooks appended to its end (currently: i386 and amd64).

Handle this case in postinstall(8) by checking whether we are in
$SOURCEMODE or not, and generate the correct rc.conf file on the fly in
case we have to. Otherwise, postinstall(8) may install the default one
obtained from a source directory that does not have the MD hooks
appended to it.

Problem reported by wiz@. Thanks!


1.124 06-Sep-2011 jym

Set $SRC_DIR to its default value at the beginning of main() so that
usage() can print the correct value even when called early.


1.123 06-Sep-2011 jym

Check that $TGZMODE is true to deduce that the set is extracted
from a .tgz instead of checking that $SRC_DIR != $SRC_ARG. These variables
can be modified in different places, so it's less error prone.


1.122 09-Aug-2011 jmmv

Check (and fix) that unprivileged-user has been changed from _atf to _tests
in /etc/atf/common.conf. Requested by martin@.


1.121 05-Aug-2011 jmmv

Rename the _atf user to _tests. The _atf name will get obsoleted if/when
we migrate to Kyua (atf v2), so it's better to use a generic name that does
not depend on the specific implementation. Also, this user has not gone
out yet into any stable release, so we can easily rename it.

Suggested by jruoho@.


1.120 14-Jul-2011 plunky

rcconf_is_set takes a tuple of <script> <variable>, so add
in a couple of missing script names

network ip6forwarding
sysctl defcorename

and remove the trailing "sysctl"


1.119 14-Jul-2011 plunky

introduce rcvar_is_enabled to test if a rcvar is enabled

use this instead of rcconf_is_set to warn about superseded
rc.d scripts, to silence spurious warnings produced before
/etc/defaults/rc.conf script was updated.

(spurious warnings noted by Martin Husemann)


Revision tags: cherry-xenmp-base
1.118 27-May-2011 plunky

provide a new 'bluetooth' rc.d script, to handle Bluetooth configuration
in a simpler manner. This replaces btattach, btconfig, bthcid, btdevctl
and sdpd scripts, and also should not require any configuration settings
other than "bluetooth=YES", though the full range of configurations is
still possible.


1.117 17-Apr-2011 martin

Invert the chroot/tcpdump/etc test and make it remove the (not needed
anymore) directory.


1.116 11-Apr-2011 martin

Add a new check to populate /var/chroot/tcpdump/etc


1.115 12-Mar-2011 erh

Fix the usage of the -s option to mention using it multiple times, rather
than the deprecated colon separated syntax.


Revision tags: bouyer-quota2-nbase bouyer-quota2-base
1.114 13-Feb-2011 tron

Install "etc/gpio.conf" if it is missing.


1.113 13-Feb-2011 tron

Add "npf" to the list of startup scripts that get checked.


Revision tags: matt-mips64-premerge-20101231
1.112 17-Dec-2010 njoly

branches: 1.112.2;
Add _tcpdump uid/gid checks.


1.111 30-Nov-2010 njoly

Adjust obsolete_libs to handle both the libraries (unchanged) and the
corresponding .debug files if exists.


1.110 21-Nov-2010 christos

- don't bitch if /usr/X11R6/lib/X11 does not exist, if /usr/X11R6 does not
exist either. We might have never installed X11R6 on this system.
- spell nonexistent


1.109 08-Nov-2010 njoly

Add _atf to uid/gid checks.


1.108 23-Apr-2010 dyoung

Do not try in postinstall(8) to replicate the code in etc/mtree/Makefile
that assembles /etc/mtree/NetBSD.dist. Instead, use the Makefile's
new target, emit_dist_file, to assemble the correct NetBSD.dist.

Previously, 'postinstall -m amd64 -s $SRC_TOP' would install a
NetBSD.dist that was missing /usr/lib/i386/ et cetera.


1.107 24-Dec-2009 christos

running postinstall fix should also say why fontconfig did not work, like
all other postinstall methods.


Revision tags: matt-premerge-20091211
1.106 13-Oct-2009 apb

/usr/X11R7/lib/X11/xkb/symbols/pc used to be a directory, but changed
to a file on 2009-06-12. Fixing this requires removing the directory
(which we can do) and re-extracting the xbase set (which we can't do),
or at least adding that one file (which we may be able to do if X11SRCDIR
is available).

Reviewed by mrg, snj


1.105 29-Sep-2009 tsarna

Multicast DNS ("Bonjour") support, based on Apple's mDNSResponder.


1.104 21-Sep-2009 njoly

Make do_mtree correctly report failure if either special or
NetBSD.dist checks failed, not only the last one.


1.103 07-Sep-2009 mrg

install the fontconfig files into /etc/fonts/conf.avail, and symlink
the default ones into /etc/fonts/conf.d, as per default.

reported by jukka marin on netbsd-users.


1.102 07-Sep-2009 mrg

- do not create X11 subdirs always anymore

- we now only create them when building X11, and only create the ones
we need (X11R6 xor X11R7)

- all these subdirs are now in the xbase set

- move the logic for running mtree into etc/mtree/Makefile

- split NetBSD.dist into 3 files, and have the build and postinstall handle
creating a possibly merged one. we still have a single installed file
called "NetBSD.dist".


1.101 06-Aug-2009 mbalmer

Add gpio to rc checks.

Diff from Geoff Wing <gcw@pobox.com>, thanks.


1.100 20-Jul-2009 christos

moduli moved with openssh


1.99 23-Jun-2009 tron

Switch to building Postfix 2.6.2 via "external/ibm-public/postfix".


1.98 22-May-2009 pgoyette

Make the makedev step fail if either MAKEDEV or MAKEDEV.local need to
be updated. Patch from njoly@


1.97 13-May-2009 jnemeth

fetch /etc/dhcpcd.conf from the correct place when building the system


Revision tags: jym-xensuspend-nbase jym-xensuspend-base
1.96 12-May-2009 jnemeth

install /etc/rc.d/dhcpcd as well


1.95 12-May-2009 jnemeth

install /etc/dhcpcd.conf


1.94 21-Apr-2009 joerg

Split fsck during boot into two phases. Check the root file system
first, mount root and run the various disk providers. Add swap and
check the remaining file systems after that.
This breaks the dependency cycle for lvm, which needs writeable /dev.
Depend on rndctl in cgd.


1.93 06-Apr-2009 martin

Now that we use ?= to optionally assing to ddb.onpanic, match that when
testint existing configurations too.


1.92 01-Apr-2009 martin

Make the ddb.onpanic line acceptable even if commented out


1.91 11-Mar-2009 martin

Switch the default value (if no options DDB_ONPANIC is defined) for
ddb.onpanic to 1, change it back to 0 in sysctl.conf and make sure
postinstall installs this setting.
This avoids us trying to dump while booting from install CD, but keeps
the default the same once we are far enough through /etc/rc.d. Failing
earlier is unlikely to be recovered by an automatic reboot.
OK: core.


1.90 26-Feb-2009 apb

As long as we don't yet have a working TOOL_GREP,
fgrep is more portable than grep -F.


1.89 26-Feb-2009 apb

In file_exists_exact(), fix an incorrect test of "1" instead of "$1",
and improve the comment explaining what this function does.


1.88 26-Feb-2009 apb

"grep -q" is not portable; use "grep >/dev/null" instead. Also add a
comment saying that postinstal is invoked during a cross build.


1.87 25-Feb-2009 sketch

Use awk and grep host tools where required. 'build.sh release' now works
on Solaris (but only with HOST_CC=/usr/sfw/bin/gcc for now).


1.86 25-Feb-2009 dyoung

Look for MAKEDEV.local in both ${SRC_DIR}/dev/ and ${SRC_DIR}/etc/,
so that 'postinstall check makedev' works whether the sources told
by the -s argument are a NetBSD source tree, etc.tgz, or a DESTDIR.


1.85 22-Feb-2009 yamt

do_makedev: look at a correct directory for MAKEDEV.local


1.84 26-Jan-2009 jklos

branches: 1.84.2;
Added MAKEDEV.local to postinstall's makedev check. Upgraded systems were
not getting an updated MAKEDEV.local file.


1.83 16-Jan-2009 haad

Add lvm script to the lists.


1.82 08-Jan-2009 lukem

Add rndctl to do_rc().
Thanks to Geoff Wing on current-users.


1.81 20-Dec-2008 isaki

x68k pow(4) now uses MI sysmon_pswitch framework. suggested by tsutsui@.
- Make MD poffd(8) retire, and use MI powerd(8) instead of it.
- Make /dev/pow1 retire, because nobody holds /dev/pow0 any longer.
Use /dev/pow0 for pow(4) ioctl.
- POWIOCSSIGNAL ioctl which is for poffd(8) is also obsoleted.


1.80 11-Dec-2008 mishka

Import rc.d/httpd script for httpd(8) daemon control.
See rc.conf(5) for options explanation.


1.79 05-Dec-2008 cube

- Introduce a function get_makevar that will retrieve the values of a
specific set of user-derived variables, to be used in SOURCEMODE.
- In SOURCEMODE, generate the rc.d scripts xdm and xfs.
- Auto-detect if X11 sets are used (either through the value of MKX11 in
SOURCEMODE, or by finding an xetc-xpecific file in sets mode).
- Ignore X11-specific rc.d scripts if X11 is not used.


1.78 24-Nov-2008 nakayama

Add scan obsolete minor shared libraries in /usr/X11R7/lib.
Also scan in /usr/lib/i386 for amd64, /usr/lib/sparc for sparc64.


1.77 18-Nov-2008 chris

lkm1, lkm2 and lkm3 are now obsolete and don't exist in the source tree,
so remove the references to them from postinstall.


Revision tags: netbsd-5-base
1.76 29-Oct-2008 snj

branches: 1.76.2;
s/explicitely/explicitly/


Revision tags: matt-mips64-base2
1.75 17-Oct-2008 cube

apb's latest change introduced a test to make sure an actual etc.tgz (or an
extraction of it) was provided as -s, but SOURCEMODE was not set to true in
the default case, which is to use /usr/src/etc, a source directory.


1.74 17-Oct-2008 christos

revert previous; now 'postinstall fix' does not work anymore without having
sets.


1.73 17-Oct-2008 christos

use an existing file otherwise the test always fails.


1.72 17-Oct-2008 christos

I don't have set.etc!?!? Do you?


1.71 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.


1.70 21-Sep-2008 junyoung

Fix 'arith: syntax error: " N_SRC_ARGS + 1 "' error which occurs with
the Debian default shell ("dash").

Now cross-build works again on Ubuntu 7.10.


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

Fix errors in previous.


1.68 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.67 07-Sep-2008 apb

* Allow colons to appear in the names of tgz files, to address PR 39459.
* 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.66 07-Sep-2008 apb

Cleanup shell quoting:

* Almost all shell variables are now quoted, except where they
hold numeric values such as exit status, or where we want
the shell to split on spaces.

* Constructs like

_files="$@"
do_something_with $files

are changed to

#_files="$@"
do_something_with "$@"

* In contexts where we do actually want the args to be concatenated with
space separators, use "$*", not "$@".

Tested by running "postinstall check" with a SCRATCHDIR whose name
contained spaces.


1.65 23-Jul-2008 matt

Make sure to update root.cache too.


1.64 13-Jul-2008 dholland

Correct improper escaping of regular expressions in string constants in
awk code. Noted by Aleksey Cheusov in tech-userlevel.


Revision tags: wrstuden-revivesa-base-1 wrstuden-revivesa-base
1.63 20-Jun-2008 peter

Install /etc/pf.os with 444 permissions.
Modify postinstall(8) to always upgrade /etc/pf.os.

Suggested by Luke Mewburn in PR/35188.


1.62 18-Jun-2008 yamt

merge yamt-pf42 branch.
(import newer pf from OpenBSD 4.2)

ok'ed by peter@. requested by core@


Revision tags: yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2
1.61 03-May-2008 apb

branches: 1.61.2;
Try to make it clear that local changes will be overwritten
by "postinstall fix".


1.60 30-Apr-2008 martin

Convert TNF licenses to new 2 clause variant


Revision tags: yamt-pf42-baseX yamt-pf42-base
1.59 15-Apr-2008 plunky

branches: 1.59.2;
some changes to serial bluetooth host controller interfaces

btuartd(8) should be named btattach(8) for consistency
with other parts of NetBSD

make btattach(8) a single-use tool for less complexity

device specicific initialisation (from btuart(4)) is carried
out prior to activating the line discipline (in btattach(8)),
which simplifies the API somewhat and means that the user
tool and the kernel do not need to be kept in sync.

btuart(4) driver is much reduced; naming is made consistent
and all tsleep() and delay() are removed to userland


Revision tags: keiichi-mipv6-nbase keiichi-mipv6-base matt-armv6-nbase hpcarm-cleanup-base
1.58 13-Feb-2008 tron

Avoid error message in "obsolete" check if "/usr/X11R6/lib" doesn't exist.


1.57 13-Feb-2008 tron

Don't fail the X11 check if "/usr/X11R6/lib" doesn't exist. This is
perfectly valid setup (e.g. no X11 or modular X11 from "pkgsrc").


Revision tags: matt-armv6-base
1.56 15-Dec-2007 jmmv

Update URLs after website reorganization in the motd check; per pavel@'s
request. Closes PR misc/37070.


Revision tags: cube-autoconf-base
1.55 21-Nov-2007 jnemeth

PR/35238 - tls@ -- add _proxy to uid and gid checks


1.54 26-Oct-2007 pavel

now when trap 0 is not used, we need to remove the temporary directiry
at the end. PR bin/37223.


1.53 16-Oct-2007 tls

Add httpd to the build. Add _httpd to passwd and groups and postinstall.
Add /var/www to mtree, add example line to inetd.conf.


1.52 05-Oct-2007 pavel

Add a check for obsolete sendmail in /etc/mailer.conf, installs a
fresh copy of the file if invoked as "fix". Not enabled by default.


1.51 05-Oct-2007 pavel

Return exit status 1 for failed chacks/fixes, 2 for errors. Suggested
by hubertf. Use exit status 3 for internal errors (misuse of internal
functions).


1.50 05-Oct-2007 pavel

do not use trap 0, it clobbers the exit status. Instead remove the
scratch directory in err(). Use err() instead of exit in one place to
ensure that the temporary directory is removed.


Revision tags: matt-mips64-base
1.49 29-Jul-2007 plunky

branches: 1.49.4; 1.49.6;
add mention of rc.d/btuartd


1.48 15-Jul-2007 xtraeme

Extend do_envsys() and check if the sensor_* files in /etc/powerd/scripts
are installed.


1.47 15-Jul-2007 xtraeme

Do not install fixsb anymore, which was removed recently.


1.46 15-Jul-2007 jnemeth

fix error message for obsolete_libs


1.45 14-Jul-2007 ad

fixsb has done its job.


1.44 12-Jul-2007 xtraeme

Add do_envsys() that checks if /etc/envsys.conf exists.


1.43 01-Jul-2007 xtraeme

Update for /etc/rc.d/envsys.


1.42 08-Jun-2007 pavel

Remove the remaining sendmail config files (including everything in
/usr/share/sendmail) from the obsolete list. Instead, remove them in the
"sendmail" postinstall item, which is disabled by default, to prevent
losing sendmail configuration on upgrade. Fixes the rest of
PR install/36180.


1.41 02-Jun-2007 pavel

Separate postinstall checks in two groups: enabled and disabled by
default. Only the former checks/fixes are done if no items are given
on the command line. The latter must be requested explicitely.

Intended for "fixes" that are dangerous in some way, because they might
remove files that are still in use, for example.

Make the "sendmail" item disabled by default, it removes sendmail
configuration. Partly addresses PR install/36180.

Proposed on tech-userlevel, review and spelling fixes from lukem@.


1.40 11-Apr-2007 kiyohara

Add btuartd.conf to bluetooth.


1.39 26-Mar-2007 apb

* Make postinstall's -s option accept several tgz files, either by
repeating the -s option, or by using a colon-separated list.
* Update postinstall(8) man page with some of the text used in
etcupdate(8)'s description of the -s option.
* Remove an outdated comment about invoking etc/postinstall from
the directory in which the tgz is extracted.
* Rename orig_SRC_DIR to SRC_ARG and make related changes.

Reviewed by lukem and martti.


1.38 18-Mar-2007 plunky

For sdpd(8), change default user/group from nobody/nobody to _sdpd/_sdpd


1.37 03-Mar-2007 apb

Revert previous. MAKEDEV.subr no longer exists.


1.36 01-Mar-2007 apb

Convert the guts of do_makedev() into a loop that checks both MAKEDEV
and MAKEDEV.subr.


1.35 05-Feb-2007 elad

Add perusertmp. Pointed out by Geoff Wing, thanks!


1.34 28-Jan-2007 cbiere

Added user and group "_timedc" for timedc.


1.33 05-Dec-2006 lukem

Crank copyright.
Whitespace & linewrap consistency tweaks.


1.32 05-Dec-2006 lukem

Fix method to find pf.os so it works with '-s etc.tgz'.
PR 35185 by Valeriy E. Ushakov.

Don't bother to find pf.conf first; the code was a noisy no-op.


Revision tags: netbsd-4-base
1.31 26-Nov-2006 peter

branches: 1.31.2;
Check if /etc/pf.conf and /etc/pf.os exist and copy them if they don't.

Suggested by lukem@.


1.30 14-Nov-2006 lukem

/etc/postfix/post-install needs to be 555 not 444.


1.29 07-Oct-2006 rpaulo

PR 34692: wpa_supplicant script.
By Jukka Salmi.


1.28 23-Sep-2006 jmmv

Add a check to aid in the migration of motd contents between development
releases. Suggested by tron@ and approved by silence in tech-userlevel@.


1.27 12-Sep-2006 dbj

fix problem with file_exists_exact where it was returning false
for dangling symlinks because it was checking them with test -e


1.26 11-Sep-2006 dbj

fixes for building into case preserving, but case insensitive $DESTDIR
- have checkflist do a second possibly case insensitive check for
files which are missing from DESTDIR
- have postinstall require exact case matches for obsolete files


1.25 10-Sep-2006 plunky

update to bluetooth device attachment:

remove pseudo-device btdev(4) and inherent limitations

add bthub(4) which autoconfigures at bluetooth controllers as they
are enabled. bluetooth devices now attach here.

btdevctl(8) and its cache is updated to handle new semantics

etc/rc.d/btdevctl is updated to configure devices from a list
in /etc/bluetooth/btdevctl.conf


1.24 18-Aug-2006 hubertf

give a hint on how to fix the 'NOT FIXED' checks -> fix manually

OK'd by lukem@


1.23 13-Aug-2006 plunky

rename btcontrol(8) as btdevctl(8) to make it fit with the NetBSD naming
scheme for control programs. This fixes pr 34051.


Revision tags: abandoned-netbsd-4-base
1.22 26-Jul-2006 tron

branches: 1.22.2;
Bluetooth fixes by Iain Hibbert:
Create "/etc/rc.d/btcontrol" to attach bluetooth devices at boot.


1.21 26-Jul-2006 tron

Bluetooth fixes by Iain Hibbert:
Remove bluetooth.conf(5) and config parsing from libbluetooth(3)
as this is no longer required.


1.20 15-Jul-2006 tron

Create and populate "/etc/bluetooth". Based on patch submitted by
Iain Hibbert on "current-users" mailing list.


1.19 19-Jun-2006 gdamore

Initial import of bluetooth stack on behalf of Iain Hibbert. (plunky@,
NetBSD Foundation Membership still pending.) This stack was written by
Iain under sponsorship from Itronix Inc.

The stack includes support for rfcomm networking (networking via your
bluetooth enabled cell phone), hid devices (keyboards/mice), and headsets.

Drivers for both PCMCIA and USB bluetooth controllers are included.


1.18 09-Jun-2006 tron

Remove "/var/spool/clientmqueue" and "/var/spool/mqueue" from the list
of obsolete directories and handle them via the "sendmail" item in
postinstall(8), too. These directories are of course necessary on
systems using the "sendmail" package.

Problem pointed out by Hisashi T Fujinaka on "current-users" mailing list.


1.17 09-Jun-2006 tron

Remove the "sendmail" configuration files and startup scripts from the
list of obsolete files. Resurrect the "sendmail" item which now flags
these files as obsolete unless the "sendmail" package is installed.


1.16 08-Jun-2006 simonb

Sort the obsolete rc.conf(5) variables to check, and only check
sysctl once(!).


1.15 30-May-2006 tron

Check whether user and group "postfix" exist.


1.14 30-May-2006 tron

After removal of "sendmail":
- Remove the code dealing with "sendmail" updates.
- Don't check for the existence of user and group "smmsp" any more.
- Remove "/etc/rc.d/smmsp" and "/etc/rc.d/sendmail" because there defaults
have been removed from "/etc/defaults/rc.conf".


1.13 14-May-2006 simonb

Sync rc.d file list with etc/rc.d/Makefile, adding ftpd, hostapd, and
irdaattach.


1.12 12-May-2006 tron

Add "iscsi" target which install the iSCSI configuration files.
This will stop e.g. "/etc/security" complaining about these files
missing after a sucessful run of "postinstall"


1.11 12-May-2006 tron

Check for and install "/etc/rc.d/iscsi_target".


1.10 14-Feb-2006 tsarna

Add postinstall item for the rwhod de-preivledging.
Check and correct permissions on /var/rwho files so rwhod
will be able to update them.


1.9 22-Nov-2005 lukem

Add checks for _rwhod group & user.
Noted by Patrick Welche on current-users.


1.8 02-Oct-2005 lukem

Fix do_defaults() so that it errors when there's a mismatch.
Noted by Matthias Scheler.


1.7 12-Sep-2005 lukem

Add "named" item to move /etc/namedb/named.conf to /etc/named.conf.
Per discussion with Matthias Scheler.


1.6 12-Sep-2005 lukem

Reorganize items so that they're in alphabetical order except that
"obsolete" is moved to the end.
Clean up some comments.


1.5 04-Sep-2005 lukem

Fix the installation of /etc/defaults/pf.boot.conf so that it works
with -s etc.tgz.


1.4 23-Aug-2005 peter

pf needs to be started after the network is up, because some pf rules
derive IP address(es) from the interface (e.g "... from any to fxp0").
This however, creates window for possible attacks from the network.

Implement the solution proposed by YAMAMOTO Takashi:
Add /etc/defaults/pf.boot.conf and load it with the /etc/rc.d/pf_boot
script before starting the network. People who don't like the default
rules can override it with their own /etc/pf.boot.conf.
The default rules have been obtained from OpenBSD.

No objections on: tech-security


1.3 26-Apr-2005 lukem

If /etc/ssh/sshd_config contains the following deprecated options,
comment them out:
rhostsauthentication
verifyreversemapping
reversemappingcheck


1.2 17-Apr-2005 lukem

branches: 1.2.2;
do_postinstall() is now unnecessary; remove it.

If extracting -s etc.tgz to a temporary directory, don't run the
embedded etc/postinstall since it doesn't exist anymore.

Remember the original SRC_DIR passed in (e.g, "-s etc.tgz") and
display that in the suggested "fix" message, rather than a temporary
path to the extracted etc.tgz which won't be correct for the next run.


1.1 17-Apr-2005 lukem

Move /etc/postinstall (and the etc.tgz set) to /usr/sbin/postinstall
(and the base.tgz set).


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.21 08-Jan-2022 lukem

postinstall(8); add -?. expand operation usage


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.20 21-Nov-2018 martin

Sprinkle a few references to .tar.xz files (as alternative to .tgz files)


Revision tags: pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base perseant-stdc-iso10646-base
1.19 03-Jul-2017 wiz

branches: 1.19.4; 1.19.6;
Remove workaround for ancient HTML generation code.


Revision tags: netbsd-8-3-RELEASE netbsd-8-2-RELEASE netbsd-8-1-RELEASE netbsd-8-1-RC1 netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 matt-nb8-mediatek-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.18 21-Dec-2014 wiz

Use Nx.


1.17 21-Dec-2014 christos

PR/49428: Travis Paul: Document x option.


Revision tags: netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base 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 tls-maxphys-base
1.16 15-Aug-2012 apb

branches: 1.16.10;
Remove the ability to specify multiple colon-separated fiel 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.15 22-Nov-2009 mbalmer

branches: 1.15.6;
s/the the/the/


1.14 15-Oct-2009 joerg

Explicitly request literal mode after .Xr.


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.13 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.12 14-Sep-2008 apb

Document that "ss tgz1:tgz2" was merely deprecated, not removed.


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

Document the change in meaning of "-s foo:bar". It now means a single
file or directory named "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.10 03-May-2008 apb

branches: 1.10.2;
Try to make it clear that local changes will be overwritten
by "postinstall fix".


1.9 30-Apr-2008 martin

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 cube-autoconf-base matt-armv6-base hpcarm-cleanup-base
1.8 01-Dec-2007 wiz

branches: 1.8.6;
Typo fix.


Revision tags: matt-armv6-prevmlocking matt-mips64-base
1.7 02-Jun-2007 pavel

branches: 1.7.4;
Separate postinstall checks in two groups: enabled and disabled by
default. Only the former checks/fixes are done if no items are given
on the command line. The latter must be requested explicitely.

Intended for "fixes" that are dangerous in some way, because they might
remove files that are still in use, for example.

Make the "sendmail" item disabled by default, it removes sendmail
configuration. Partly addresses PR install/36180.

Proposed on tech-userlevel, review and spelling fixes from lukem@.


1.6 26-Mar-2007 apb

* Make postinstall's -s option accept several tgz files, either by
repeating the -s option, or by using a colon-separated list.
* Update postinstall(8) man page with some of the text used in
etcupdate(8)'s description of the -s option.
* Remove an outdated comment about invoking etc/postinstall from
the directory in which the tgz is extracted.
* Rename orig_SRC_DIR to SRC_ARG and make related changes.

Reviewed by lukem and martti.


Revision tags: netbsd-4-base
1.5 18-Aug-2006 hubertf

branches: 1.5.2;
Explain that etcupdate(8) may do the job that postinstall(8) can't
do. (Example: fix master.passwd to include _rwhod and whatnot)

OK'd by lukem@


1.4 11-Aug-2006 hubertf

Xref etcupdate from postinstall, and vice versa.


Revision tags: abandoned-netbsd-4-base
1.3 12-Sep-2005 lukem

branches: 1.3.2;
not all items can be fixed automatically


1.2 17-Apr-2005 lukem

branches: 1.2.2;
Update for move to /usr/sbin.
Add a HISTORY.


1.1 17-Apr-2005 lukem

Move /etc/postinstall (and the etc.tgz set) to /usr/sbin/postinstall
(and the base.tgz set).


Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base
1.72 04-Jun-2025 rillig

all: fix some "internal option -J" warnings from make


1.71 27-Oct-2024 spz

PR bin/58476: second half: be more selective with the strings to update
for blacklistd -> blocklistd
issue pointed out and patch supplied by Timo Buhrmester


1.70 23-Oct-2024 rin

postinstall: Do not obsolete 10-sub-pixel-rgb.conf

This file revived for fontconfig 2.14.1, and has been recognized
both as valid and obsoleted file at the same time.

Fix PR misc/57547 and PR bin/58406.

No release branches are affected.


1.69 12-Oct-2024 uwe

postinstall: obsolete_libs - update comment

... that mentions a variable name in an AWK script far, far away.


1.68 12-Oct-2024 spz

(typo) it used to be /var/db/blacklistd.db not /var/db/blacklist.db


1.67 10-Oct-2024 uwe

postinstall: get rid of exclude -t

exclude_libs() no longer uses it, so revert exclude() to what it was
before the -t was introduced.

It can probably be further improved, but I'm not sure why it needs
eval and why it wants to anchor at the beginning of the line only
(something to do with e.g. blocklist vs. blocklistd), and I don't have
time to investigate this properly at the moment.


1.66 10-Oct-2024 uwe

postinstall: simplify exclude_libs

Don't compose a baroque ERE to filter the list of libraries. grep can
match whole lines with -x so that takes care of the anchoring. And
grep can also take multiple patterns, one per line, as a single
argument - which the man page of our rather out of date version
doesn't adequately document.

While here describe the downgrade scenario that it is intended to
handle.


1.65 10-Oct-2024 uwe

postinstall: exclude_libs - use find/readlink instead of ls/awk

This doesn't only feels right, but also gets rid of a bogus empty line
in the list of targets (for all the files that are not symlinks).


1.64 10-Oct-2024 uwe

postinstall: clarify/simplify awk script in _obsolete_libs

Add comments and rename variables to better reflect their purpose.
Emit plain filenames, not absolute paths, b/c that's what exclude_libs
expects. While here explain what might trigger the exclude_libs
scenario (downgrades).

PR bin/58697: postinstall(8) removes non-obsolete compat libs


Revision tags: perseant-exfatfs-base-20240630 perseant-exfatfs-base
1.63 05-Apr-2024 christos

branches: 1.63.2;
remove dup named dir


1.62 10-Mar-2024 rillig

postinstall: fix parameter order in usage message


1.61 09-Mar-2024 rillig

postinstall: fix endless loop (since 2024-03-07)


1.60 07-Mar-2024 christos

no local in loops, simplify eval (thanks kre)


1.59 07-Mar-2024 christos

- fix named.conf (remove dnssec-enable option)
- use proper local variables instead of adding _ or other prefixes.
- centralize rm use
- use grep -q instead of > /dev/null
- reduce constant duplication


1.58 29-Jan-2024 riastradh

postinstall(8): Don't say /etc/openssl/certs.conf already exists.

It's confusing when all the other `postinstall fix' actions are
silent in the event they don't have anything to do.

PR install/57885


1.57 18-Oct-2023 riastradh

postinstall(8): Use /usr/sbin/certctl.

Obviates need to have /usr/sbin in PATH when running this.

XXX pullup-10


1.56 06-Sep-2023 riastradh

postinstall(8): Modify default certs.conf.

When manually configured /etc/openssl/certs is detected, just
uncomment the `#manual' line in the default certs.conf rather than
writing a new one. That way, you can switch to certctl-managed and
still get the default path by just deleting /etc/openssl/certs and
re-commenting the `manual' line.


1.55 03-Sep-2023 riastradh

postinstall(8): Handle various certs.conf scenarios gracefully.

Tested the following scenarios:

1. fresh install
empty /etc/openssl/certs
default /etc/openssl/certs.conf
- opensslcertsconf
[x] check: pass
[x] fix: pass -- nothing
- opensslcertsrehash
[x] check: fail -- needs rehash
[x] fix: pass -- quietly rehash successfully (go to 4)

2. fresh upgrade
empty /etc/openssl/certs
no /etc/openssl/certs.conf
- opensslcertsconf
[x] check: fail -- complain missing /etc/openssl/certs.conf
[x] fix: pass -- install default /etc/openssl/certs.conf (go to 1)
- opensslcertsrehash
[x] check: fail -- complain missing /etc/openssl/certs.conf
- [x] fix: fail -- complain missing /etc/openssl/certs.conf

3. upgrade from certctl, changes to certs
certctl-managed /etc/openssl/certs
default /etc/openssl/certs.conf
- opensslcertsconf
[x] check: pass
[x] fix: pass -- nothing
- opensslcertsrehash
[x] check: fail -- needs rehash
[x] fix: pass -- quietly rehash successfully (go to 4)

4. upgrade from certctl, no changes to certs
certctl-managed /etc/openssl/certs
default /etc/openssl/certs.conf
- opensslcertsconf
[x] check: pass
[x] fix: pass -- nothing
- opensslcertsrehash
[x] check: pass
[x] fix: pass -- quietly rehash successfully (go to 4)

5. upgrade from mozilla-rootcerts
populated /etc/openssl/certs
no /etc/openssl/certs.conf
- opensslcertsconf:
[x] check: fail -- complain missing /etc/openssl/certs.conf
[x] fix: pass -- install manual /etc/openssl/certs.conf (go to 7)
- opensslcertsrehash:
[x] check: fail -- complain missing /etc/openssl/certs.conf
[x] fix: fail -- complain missing /etc/openssl/certs.conf

6. upgrade from mozilla-rootcerts with etcupdate naively
populated /etc/openssl/certs
default /etc/openssl/certs.conf
- opensslcertsconf:
[x] check: pass
[x] fix: pass -- nothing
- opensslcertsrehash:
[x] check: fail -- complain mismatched certs/ and certs.conf
[x] fix: fail -- complain mismatched certs/ and certs.conf

7. upgrade from mozilla-rootcerts with etcupdate manually
populated /etc/openssl/certs
manual /etc/openssl/certs.conf
- opensslcertsconf:
[x] check: pass
[x] fix: pass -- nothing
- opensslcertsrehash:
[x] check: pass
[x] fix: pass -- skip rehash because manual (go to 7)

XXX Someone should draft automatic tests for postinstall. It has a
very good track record, but it sure would be nice to automate this
testing rather than redo it each time I make a tiny change.


1.54 28-Aug-2023 riastradh

postinstall(8): Fail if `certctl rehash' fails.

Not using `set -e' here, evidently (maybe we should), so the separate
return 0 suppressed the error.


1.53 26-Aug-2023 riastradh

postinstall(8): Add opensslcerts item to regen /etc/openssl/certs.

Works only with destdir /, since it relies on running openssl(1),
which is not available as a tool or required in the cross-build
environment.


1.52 21-Jun-2023 mrg

adjust for new fontconfig files.


Revision tags: netbsd-10-base
1.51 29-May-2022 andvar

branches: 1.51.2;
fix various typos in comments and log messages.


1.50 08-Jan-2022 lukem

postinstall: improve -s usage

Reword -s SRC_ARG to be a bit clearer as to the variations, and sync
more with postinstall(8).


1.49 08-Jan-2022 lukem

postinstall: tweak -a and -m usage


1.48 08-Jan-2022 lukem

postinstall: add -? to usage


1.47 08-Jan-2022 lukem

postinstall: add -?. improve option errors

Support -? to show help.
Implemented using getopts "leading colon optstring" feature.
Improve error messages for unknown options and missing arguments.


1.46 08-Jan-2022 lukem

postinstall: usage improvements

Show options alphabetically.
Use UPPER_CASE instead of lowercase as the convention for argument names.
Provide per-OPERATION argument usage.
Implement options alphabetically.


1.45 08-Jan-2022 lukem

postinstall: improve validation and help

Validate the operation and items before extracting any etc.tgz,
so that help or errors are displayed quicker, for a better user
experience.

Style:
- Rename todo to ITEMS.
- Order processing of list after check.
- Ensure DIFF_OPT is initialised, for consistency.


1.44 08-Jan-2022 lukem

postinstall: style tweaks

Fix ... in comments and internal errors.
Sort variables declared at top of main(), for easier review.


1.43 08-Jan-2022 lukem

postinstall: help to stdout. usage tweaks

When invoked as "help" or "usage", send the usage to stdout
instead of stderr, so that it's easier to pipe to a pager.

Explicitly warn that the operation is missing.

Tweak the usage; "operation" instead of "op", no need for [] around ...


1.42 07-Jan-2022 lukem

postinstall: fix x11 migration of /usr/X11R6/lib/X11

Fix the x11 check if /usr/X11R6/lib/X11/* needs to migrate to /etc/X11/*
by ensuring that the former actually is detected.

Avoids false migration errors for paths such as /fs if /usr/X11R6
doesn't exist, such as:
x11 check:
Migrate /fs to /etc/X11/fs

The original implemention handled this correctly, but the bug
crept in postinstall 1.110 on 2010/11/21.


1.41 21-Aug-2021 andvar

s/accidentaly/accidentally/


1.40 21-Aug-2021 andvar

s/helt/held+s/eroneously/erroneously/+s/splitted/split/+s/recommented/recommended/


1.39 07-Jun-2021 mlelstv

Don't overwrite changed autofs config files.


Revision tags: cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base
1.38 25-Apr-2021 lukem

postinstall: re-align list output


1.37 25-Apr-2021 lukem

postinstall: sort the items. keep obsolete* last

Consistency and quality of life improvements to postinstall:

Order all of the items (including disabled) alphabetically.
Consistent comment style before each item block.
Move other functions used by do_*() before rather than after do_*().


1.36 25-Apr-2021 lukem

postinstall: comment and usage style

Use NOTE: for comments to be aware of.
Remove double space before "fix|check" in some items.


1.35 25-Apr-2021 lukem

postinstall: ensure SRC_DIR and DEST_DIR are quoted


1.34 25-Apr-2021 lukem

postinstall: use correct DEST_DIR in obsolete_stand


1.33 28-Aug-2020 christos

missing quote


1.32 28-Aug-2020 christos

Restrict npf.conf fixes to "blacklistd" -> "blocklistd"


1.31 07-Jul-2020 simonb

Sort missing IDs (users and groups) by the numeric ID.


1.30 29-Jun-2020 riastradh

Nix trailing whitespace.


1.29 22-Jun-2020 rin

Fix do_blocklist:
- Respect destination directory specified by -d option.
- Accept check and fix options. For the former, do not modify anything as
users normally expect.


1.28 20-Jun-2020 riastradh

Nix trailing whitespace.


1.27 15-Jun-2020 christos

handle /etc/blacklistd.conf


1.26 15-Jun-2020 christos

correct blocklist script
- removal of rc file is handled by obsolete
- use grep to find if we need more changes
- fix rc population


1.25 15-Jun-2020 christos

fix reversed mv, pointed out by wiz@


1.24 15-Jun-2020 christos

deal with blacklist -> blocklist


1.23 03-Jun-2020 roy

Ensure the dhcpcd log socket is removed.


1.22 31-May-2020 roy

postinstall: Move files out of dhcpcd chroot


1.21 15-May-2020 christos

Add a function to remove the debug bits of the stand files.


Revision tags: phil-wifi-20200421
1.20 19-Apr-2020 roy

postinstall: ensure contents_owner fix fails on find errors

The issue is that find won't pass anything to xargs and that returns 0.
So replace the usage of xargs with -exec.


Revision tags: phil-wifi-20200411
1.19 09-Apr-2020 roy

branches: 1.19.2;
Fix dhcpcd $DEST_DIR support


Revision tags: phil-wifi-20200406
1.18 06-Apr-2020 roy

postinstall: fix contents_owner to return an error on error

find returning nothing via stdout but does return an error is an error.
Fixes the case where dhcpcd chroot db directory isn't owned by _dhcpcd.


1.17 02-Apr-2020 roy

postinstall: add checks for _dhcpcd to do_uid and do_gid

Thanks to jmcneill@


1.16 02-Apr-2020 roy

postinstall: move dhcpcd files to the chroot


Revision tags: is-mlppp-base
1.15 25-Feb-2020 nakayama

Fix the fixup script to follow the URL change in /etc/motd (http->https).

PR install/54990, pullup-9


1.14 30-Jan-2020 christos

change the autofs file to be user writable.


1.13 30-Jan-2020 christos

populate autofs files


1.12 29-Dec-2019 tsutsui

Make sure rc, rc.subr, and rc.shutdown are properly updated.

Currently there is no info which rc* files should be updated
or not on upgrade (at least rc.conf and rc.local shouldn't),
so put back an explicit list in the postinstall script.
"Go for it" by christos@ in PR/54741.

Should be pulled up to netbsd-9.


1.11 22-Dec-2019 christos

PR/54730: Izumi Tsutsui: obsolete etc files are not being cleaned up on
an upgrade build.


1.10 04-Dec-2019 christos

PR/54730: Izumi Tsutsui: Use /var/db/obsolete/<set> to remove obsolete rc.d
files when not in $SOURCEMODE.


Revision tags: phil-wifi-20191119
1.9 12-Nov-2019 christos

remove debugging.


1.8 30-Oct-2019 prlw1

Add nvmm group.


1.7 24-Sep-2019 nakayama

Add ${DEST_DIR} prefix to check target directory not host directory.


1.6 12-Sep-2019 uwe

exclude_libs - redirect ls 2> /dev/null so that the user is not
spammed with errors for directories without any libraries; the most
common case in the wild would be empty /usr/libdata/debug. Add -d to
ls for good measure while here.


Revision tags: netbsd-9-base
1.5 15-Jun-2019 christos

branches: 1.5.2;
exclude shared libraries that are currently in use from removal.


1.4 14-Jun-2019 christos

cleanup obsolete file selection from sets and refactor font synchronization.
The font config files are not in sets, so they are still hard-coded.


1.3 14-Jun-2019 christos

select the powerd scripts from the sets


1.2 14-Jun-2019 christos

make the script MI again (same across all archs)


1.1 14-Jun-2019 christos

build dynamically the list of compat archsubdirs.