OpenBSD Journal

Yet another updating tool

Contributed by jose on from the smoother-changes dept.

Andre Nathan writes:
"These are two small scripts I wrote to automate the updating of OpenBSD. handles CVS fetching (you can choose to get -stable or -current), kernel compiling and system building, including the `make release' process. This is similar to FenderQ's tool ( easybakeoven88 ), with some borrowed functionality. compares the files under /etc and /var with newly installed ones on an alternate location, showing diffs and giving options to copy the new file over the old one or skip it and edit it manually later. "

A pretty interesting set of tools. Perhaps some features of related tools we posted about a few days ago , along with things like mergemaster, could all be integrated.

(Comments are closed)

  1. By Michael Anuzis () on

    6:59am EST Wed morning both links are showing dead for me. --Michael

    1. By Andre Nathan () on

      it's up now. you need a lot of patience when dealing with

      1. By Anonymous Coward () on

        patience? Paranoia is more like it when dealing with such honeypots.

  2. By FenderQ () on

    This looks really cool! Good job Andre!

  3. By n8d0g () nate at totallybooty dot com on

    Anyone else getting this?

    # ./
    ./[102]: syntax error: `else' unexpected

    1. By FenderQ () on

      I just removed the && at the end of line 101 and it went ok for me. I'm not 100% sure but maybe this is a good bug report?

      1. By Andre Nathan () on

        oh... that was a late night change, sorry. removing the `&&' does the work.
        it's already corrected on the page.

    2. By Anonymous Coward () on

      I've not used it and don't intend to (not being critical, I've simply no need for such a thing), but yes there is a booboo.

      You probably figured it out already, but if not then
      just change line 101 from:
      cp /usr/src/etc/etc.`machine`/MAKEDEV ./ && ./MAKEDEV all &&
      cp /usr/src/etc/etc.`machine`/MAKEDEV ./ && ./MAKEDEV all

  4. By Matt () on

    This looks like a great little tool, I'm happy to see that people are out there working on making openbsd to be more easily maintained. It's not hard now really, but every bit helps.

    It would be great if this could also be integrated with something like fastest cvsup, a perl script. It's currently a little freebsd centric, but it does operate on openbsd. (

    That way we could find the fastest cvs server near your location, get the appropriate src, and make a compile a whole new system within one tool. Make it into a port and suddenly we have a badass tool.

    1. By Matt () on

      Another link to fastest_cvsup

  5. By Troll () on

    but where are the actual updates you need to apply??

  6. By Anonymous Coward () on

    I do something very similar

    in /tmp
    get etcNN.tar.gz
    tar zxvf etcNN.tar.gz
    cd /tmp/etc
    for i in * ; do
    echo $i
    diff $i /etc/$i | more
    echo $i

    then in another window, copy files that have changed or make the edits. Sure Mergemaster may do the same thing, but this approach is fast.

    the one window that is comparing the changed files shows output like this



    and so on until there is a change.

    If you wnated to you could compare etc with the default etc tarball BEFORE you do the upgrade to see what changed.

    Works for me.

Latest Articles


Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]