Hello tech,
The attached patch adds an autoinstall question to install.sub that lets
the user specify a custom signify key for the SHA256.sig file.
I like to track -stable for a bunch of my servers, and it's convenient
to make a release and use autoinstall with bsd.rd to keep up to date.
I already use a personal signify key for packages, and it would be
handy to be able to use the same key to sign my patched sets.
I understand if this is an unwanted feature, and the preferred solution
is to just add 'Continue without verification = yes' to
auto_upgrade.conf. But if this might be a useful feature for more than
just me, this patch might be of interest.
Thank you,
Todd
Index: distrib/miniroot/install.sub
===================================================================
RCS file: /cvs/src/distrib/miniroot/install.sub,v
retrieving revision 1.867
diff -u -p -u -p -r1.867 install.sub
--- distrib/miniroot/install.sub 27 Dec 2015 18:42:11 -0000 1.867
+++ distrib/miniroot/install.sub 7 Jan 2016 03:55:23 -0000
@@ -1224,7 +1224,8 @@ __EOT
# user will know to try again.
install_files() {
local _src=$1 _files=$2 _f _sets _get_sets _n _col=$COLUMNS \
- _tmpfs _tmpsrc _cfile _fsrc _unver _t _issue _srclocal
+ _tmpfs _tmpsrc _cfile _fsrc _unver _t _issue _srclocal \
+ _signifykey
# Initialize _sets to the list of sets found in _src, and initialize
# _get_sets to the intersection of _sets and DEFAULTSETS.
@@ -1308,8 +1309,10 @@ install_files() {
_issue="Cannot fetch SHA256.sig" && break
# Verify signature file with public keys.
- ! signify -Vep /etc/signify/openbsd-${VERSION}-base.pub \
- -x "$_cfile.sig" -m "$_cfile" &&
+ _signifykey="/etc/signify/openbsd-${VERSION}-base.pub"
+ $AUTO && ask "Location of signify key" "$_signifykey" &&
+ [[ $resp != none ]] && _signifykey=$resp
+ ! signify -Vep "$_signifykey" -x "$_cfile.sig" -m "$_cfile" &&
_issue="Signature check of SHA256.sig failed" && break
for _f in $_get_sets; do
Index: share/man/man8/autoinstall.8
===================================================================
RCS file: /cvs/src/share/man/man8/autoinstall.8,v
retrieving revision 1.16
diff -u -p -u -p -r1.16 autoinstall.8
--- share/man/man8/autoinstall.8 15 May 2015 18:53:05 -0000 1.16
+++ share/man/man8/autoinstall.8 7 Jan 2016 03:55:26 -0000
@@ -180,6 +180,10 @@ A template file for
autopartitioning is fetched from
.Ar url
allowing a custom partition layout for the root disk.
+.It Location of signify key = Ar path
+A path to the
+.Xr signify 1
+public key used to verify the release distribution files.
.El
.Sh FILES
.Bl -tag -width "/etc/dhcpd.confXXX" -compact