Hi,

Someone ask me to push to ports a script I wrote to help download,
verify and patch bsd.rd image. So here a tarball with it if someone want
to commit it.

The port was two parts:
  - packaging of elfrdsetroot (aka /usr/src/distrib/common/ content -
    the source code is included in the port and doesn't rely on /usr/src
    tree)
  - upobsd.sh script (+ man page)

Homepage: https://bitbucket.org/semarie/upobsd/

SYNOPSIS
     upobsd [-v] [-m mirror] [-V version] [-a arch] [-p signify-key]
            [-i install-response-file] [-u upgrade-response-file] [-o output]

DESCRIPTION
     upobsd is a ksh(1) script designed to download, verify and optionally
     patch bsd.rd image.

     upobsd will download bsd.rd image using ftp(1) from mirror defined in
     installurl(5), will verify the downloaded file using signify(1) and local
     key inside /etc/signify to ensure integrity, and optionally patch the
     image for adding auto_install.conf or auto_upgrade.conf file to add
     support of offline autoinstall(8).

     Patching requires super-user privilegies in order to use vnconfig(8) and
     mount(8) for modifying the ramdisk image.  doas(1) will be used for this
     purpose and should be configured accordingly.



It is possible to choose alternate for:
  - mirror, instead of installurl(5)
  - version and arch, instead of the one of running machine (aka
    preparing a bsd.rd for another machine)
  - signify-key

I use it daily to keep -current a set of machines (several archs) with
offline autoinstall(8).

$ cd /tmp
$ upobsd -v
downloading bsd.rd (and SHA256.sig): 
http://ftp.fr.openbsd.org/pub/OpenBSD/snapshots/amd64
SHA256.sig   100% |**************************************************|  2152    
   00:00
bsd.rd       100% |**************************************************|  9575 KB 
   00:16
checking signature: /etc/signify/openbsd-62-base.pub
signature is valid
copying bsd.rd: /tmp/bsd.rd

$ upobsd -m file://var/www/htdocs/pub/OpenBSD
SHA256.sig   100% |**************************************************|  2152    
   00:00
bsd.rd       100% |**************************************************|  9579 KB 
   00:01

$ upobsd -u auto_upgrade.conf-clyde -v
downloading bsd.rd (and SHA256.sig): 
http://ftp.fr.openbsd.org/pub/OpenBSD/snapshots/amd64
SHA256.sig   100% |**************************************************|  2152    
   00:00
bsd.rd       100% |**************************************************|  9575 KB 
   00:14
checking signature: /etc/signify/openbsd-62-base.pub
signature is valid
adding response file: auto_upgrade.conf: auto_upgrade.conf-clyde
doas (semarie@clyde.local) password:
copying bsd.rd: /tmp/b/bsd.rd

-- 
Sebastien Marie

Attachment: upobsd.tar.gz
Description: application/tar-gz

Reply via email to