[Nut-upsdev] Re: About blazer, powermust and mustek
Peter Selinger
selinger at mathstat.dal.ca
Mon Oct 24 16:00:18 UTC 2005
Arnaud Quette wrote:
>
> 2005/10/23, Peter Selinger <selinger at mathstat.dal.ca>:
> >
> > ...
> > I am a great fan of backwards compatibility. Especially if you batch
> > update a lot of packages, it is a pain to have to track down
> > documentation for unexplained broken behaviors.
> >
> > I think we should do the same when we rename the "newhidups" driver.
>
>
> so do I.
>
> The driver name change is a long standing point, and more and more annoying
> me in my Debs. And we'll once again reach a high level of driver names
> change with 2.2, that point is sure!
>
> I'm currently more inclined at making some helper script that will replace
> the driver name in your conf (obviously making a backup of the orig files).
> This one would be called by the user at source install time, or by the
> package (preferably after having informed the user).
> The symlink and the stub doesn't solve the problem, but only annoy the user
> (if this one sees the message!). So let's go directly to a solution...
>
> Any perl (or other well supported scripting) monger out there to take over
> that one?
Great idea. How about bash/sh? Still the most universally available
scripting language. I am including a script below that is called as
updateconf.sh <configfile> <olddriver> <newdriver>
It does the trick nicely. It would have to be integrated into the
install process.
----------------------------------------------------------------------
#!/bin/bash
# command line
if [ $# -ne 3 ]; then
echo "$0: wrong number of arguments." >&2
echo "Usage: $0 <configfile> <olddriver> <newdriver>" >&2
exit 1
fi
UPSCONF="$1"
OLDDRIVER="$2"
NEWDRIVER="$3"
# Note: new driver must be backwards compatible with old driver, i.e.,
# must accept the same config options
BACKUP="$UPSCONF.$$.bak"
cp -p "$UPSCONF" "$BACKUP"
cat "$BACKUP" | sed -e 's/^\([ \t]*driver[ \t]*=[ \t]*\)'"$OLDDRIVER"'[ \t]*$/\1'"$NEWDRIVER"'/' > $UPSCONF
More information about the Nut-upsdev
mailing list