On Wed, Oct 27, 2021 at 07:35:28PM -0500, Aaron Poffenberger wrote: > Looks good. Nice to see this moving forward. Thanks. > > On 2021-10-27 21:13 +0000, Klemens Nanni <k...@openbsd.org> wrote: > > On Mon, Sep 06, 2021 at 02:29:50PM -0500, Aaron Poffenberger wrote: > > > Ping. > > > > > > Will someone commit this? Seems like no one knows about /upgrade.site and > > > it > > > fits well with sysupgrade(8). > > > > sysupgrade(8) is one potential /upgrade.site user but I disagree about > > documenting the latter through the former. > > > > Here is a new manual roughly merging the FAQ bits with what you, Aaron, > > provided. > > > > site(8) is a lame but fitting name; autoinstall(8) and sysypgrade(8) > > reference it and both sets and scripts are documented. > > > > Examples are intentionally brief to be shorter and more concise than the > > FAQ while showing enough to get going. > > > > > > I am quite certain that wording, examples and the references from other > > manuals can be tweaked, but this diff looks like a good enough start > > and --if this is the way to go-- I'd prefer to commit and keep polishing > > in-tree. > > > > Feedback? Objections? OK?
I have not received any feedback on this except from Aaron. Anyone? Anything? Index: distrib/sets/lists/man/mi =================================================================== RCS file: /cvs/src/distrib/sets/lists/man/mi,v retrieving revision 1.1645 diff -u -p -r1.1645 mi --- distrib/sets/lists/man/mi 2 Nov 2021 22:07:33 -0000 1.1645 +++ distrib/sets/lists/man/mi 3 Nov 2021 02:26:16 -0000 @@ -2561,6 +2561,7 @@ ./usr/share/man/man8/security.8 ./usr/share/man/man8/sendmail.8 ./usr/share/man/man8/sensorsd.8 +./usr/share/man/man8/site.8 ./usr/share/man/man8/sftp-server.8 ./usr/share/man/man8/showmount.8 ./usr/share/man/man8/shutdown.8 Index: usr.sbin/sysupgrade/sysupgrade.8 =================================================================== RCS file: /cvs/src/usr.sbin/sysupgrade/sysupgrade.8,v retrieving revision 1.10 diff -u -p -r1.10 sysupgrade.8 --- usr.sbin/sysupgrade/sysupgrade.8 3 Oct 2019 12:43:58 -0000 1.10 +++ usr.sbin/sysupgrade/sysupgrade.8 27 Oct 2021 20:42:26 -0000 @@ -67,6 +67,10 @@ This is the default if the system is cur Upgrade to a snapshot. This is the default if the system is currently running a snapshot. .El +.Pp +See +.Xr site 8 +for how to customize the upgrade process. .Sh FILES .Bl -tag -width "/auto_upgrade.conf" -compact .It Pa /auto_upgrade.conf @@ -83,7 +87,8 @@ Directory the upgrade is downloaded to. .Xr signify 1 , .Xr installurl 5 , .Xr autoinstall 8 , -.Xr release 8 +.Xr release 8 , +.Xr site 8 .Sh HISTORY .Nm first appeared in Index: share/man/man8/Makefile =================================================================== RCS file: /cvs/src/share/man/man8/Makefile,v retrieving revision 1.102 diff -u -p -r1.102 Makefile --- share/man/man8/Makefile 1 May 2021 16:11:10 -0000 1.102 +++ share/man/man8/Makefile 27 Oct 2021 20:38:11 -0000 @@ -6,7 +6,7 @@ MAN= afterboot.8 autoinstall.8 boot_conf crash.8 daily.8 \ diskless.8 genassym.sh.8 intro.8 netstart.8 rc.8 \ rc.conf.8 rc.d.8 rc.shutdown.8 rc.subr.8 release.8 \ - security.8 ssl.8 starttls.8 sticky.8 yp.8 + security.8 site.8 ssl.8 starttls.8 sticky.8 yp.8 SUBDIR= man8.alpha man8.amd64 man8.arm64 man8.armv7 \ man8.hppa man8.i386 man8.landisk \ Index: share/man/man8/autoinstall.8 =================================================================== RCS file: /cvs/src/share/man/man8/autoinstall.8,v retrieving revision 1.23 diff -u -p -r1.23 autoinstall.8 --- share/man/man8/autoinstall.8 18 Jul 2021 11:08:34 -0000 1.23 +++ share/man/man8/autoinstall.8 27 Oct 2021 20:42:24 -0000 @@ -32,6 +32,10 @@ file and HTTP to fetch the file. If that fails, the installer asks for the location which can either be a URL or a local path. .Pp +See +.Xr site 8 +for how to provide custom configuration. +.Pp To start unattended installation or upgrade choose '(A)utoinstall' at the install prompt. If there is only one network interface, the installer fetches the response @@ -235,7 +239,8 @@ host foo { .Sh SEE ALSO .Xr dhcp-options 5 , .Xr dhcpd.conf 5 , -.Xr diskless 8 +.Xr diskless 8 , +.Xr site 8 .Sh HISTORY The .Nm Index: share/man/man8/site.8 =================================================================== RCS file: share/man/man8/site.8 diff -N share/man/man8/site.8 --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ share/man/man8/site.8 27 Oct 2021 21:11:48 -0000 @@ -0,0 +1,87 @@ +.\" $OpenBSD: $ +.\" +.\" Copyright (c) 2021 Klemens Nanni <k...@openbsd.org> +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd $Mdocdate: October 27 2021 $ +.Dt SITE 8 +.Os +.Sh NAME +.Nm site +.Nd OpenBSD installation and upgrade customization +.Sh DESCRIPTION +The +.Ox +installer allows user-created sets and scripts to complement +and modify the files from a default install prior to rebooting. +.Pp +Like the official file sets, generic +.Pa site${ Ns Va VERSION Ns }.tgz +and +hostname-specific +.Pa site${ Ns Va VERSION Ns }-$( Ns Ic hostname Fl s Ns ).tgz +sets are +.Xr gzip 1 +compressed +.Xr tar 1 +archives rooted in +.Pa / +and untarred with the +.Fl xzphf +options. +.Pp +.Nm sets +must be included in +.Pa index.txt +in order to be fetched via +HTTP(S) and selectable in the installer. +.Pp +If existent and executable, +.Pa /install.site +and +.Pa /upgrade.site +are run last during install and upgrade, respectively, with +.Xr chroot 8 +based at the system's root. +.Sh FILES +.Bl -tag -width "site${VERSION}-$(hostname -s).tgz" -compact +.It Pa site${ Ns Va VERSION Ns }.tgz +Generic set. +.It Pa site${ Ns Va VERSION Ns }-$( Ns Ic hostname Fl s Ns ).tgz +Host-specific set. +.It Pa /upgrade.site +Generic post-upgrade script. +.It Pa /install.site +Generic post-install script. +.El +.Sh EXAMPLES +Create +.Nm +sets and update the index: +.Bd -literal -offset indent +# tar -czhf site70.tgz generic/ +# tar -czhf site70-puffy.tgz puffy/ +# ls -lT > index.txt +.Ed +.Pp +Trigger an upgrade of +.Xr packages 7 +upon next boot: +.Bd -literal -offset indent +echo 'pkg_add -Iu' >>/etc/rc.firsttime +.Ed +.Sh SEE ALSO +.Xr autoinstall 8 , +.Xr rc 8 , +.Xr sysupgrade 8