patch2mail for SLES10

April 21st, 2008

Well, there is this “nifty” tool called patch2mail, which basically converts the XML for the updates to a more readable format. But you’re screwed if you want to do the same on SLES10. Since it ain’t shipping with the zypper xml wrapper thing, you need to do it a bit different.

So I ended up writing a small (and yet, ugly) shell script to generate me a mail of my liking ..

TO="admin-addr@localhost"
CLASSES="security recommended optional"
 
# Temporary files
ZYPP_LIST="$( mktemp /tmp/zypper-list.XXXXXX )"
ZYPP_DETAILS="$( mktemp /tmp/zypper-details.XXXXXX )"
TMP="$( mktemp /tmp/zypper-report.XXXXXX )"
zypper pch 2>/dev/null > $ZYPP_LIST
 
# Figure out how much updates are still pending
PENDING="$( cat $ZYPP_LIST | grep "| Needed" | wc -l )"
 
if [ $PENDING -eq 0 ] ; then
  exit 0
fi
 
echo > $TMP
echo " Pending updates for $( domainname -f ) on $( date )" >> $TMP
 
for severity in $CLASSES; do
  PACKAGES="$( cat $ZYPP_LIST | egrep "${severity}(.*)\| Needed" | \
    cut -d\| -f2 | sed "s,^ ,," )"
  echo
  echo "  Category: $severity"
  for package in $PACKAGES; do
    zypper patch-info $package 2>/dev/null > $ZYPP_DETAILS
    echo "  * $package ($( cat $ZYPP_DETAILS | grep "Version: " | \
      sed "s,Version,version," ))"
    echo "    $( cat $ZYPP_DETAILS | grep "Summary: ")"
    echo "    $( cat $ZYPP_DETAILS | grep "Reboot Required:" )"
    echo
  done
  echo
done >> $TMP
 
cat $TMP | \
  mail -s "[$( date +%F )] Update report for $( domainname -f )" $TO
trap 'rm -f "$TMP" "$ZYPP_LIST" "$ZYPP_DETAILS" >/dev/null 2>&1' 0
trap "exit 2" 1 2 3 15
 
# vim: set tw=80

Life

April 19th

April 20th, 2008

Well, as some people already figured out; yesterday was my birthday. Chrissy noted it on my blog, as well as about every channel we’re together in (so did Chris); so thanks a lot for that ;-)

Anyway, Saturday morning as I was forced to head downstairs due to my aunt calling (that was at 9am), my brother managed to take a shot at the presents as well as something else:

Cat'se ontop of presents

Cat'se ontop of presents

Well, ain’t he cute ? He’s always been particularly fond of lying around on paper. Well, anyway I had a lil’ birthday party planned in combination of myself and a friend of mine, so I invited some of my friends from work over to our place. Turns out, it was quite a nice gathering.

Them benches!

Them benches!

Our 'hyper duper' barbeque grill

Our 'hyper duper' barbeque grill

I had lots of fun that evening (well, my birthday is the only day in the year I allow myself to get drunk!) apparently, so did all the others.

Life

That’s why …

April 17th, 2008

… I’d break a butterfly on a wheel … I was coming out of the office, and found my car this way:

Up close

Up close

Birdie view

Birdie view

Well happy me, I had some sort of cleanup detail for 20:00 local time (as in get all that birdie poooo of my damn roof!), and surprisingly once I was finished cleaning all the shit up, it started raining. Now, I’m never, *ever* gonna park below that dove/whateverdamndevilbirdyouare housing tree no more!

Life