#!/bin/sh die() { echo $* >&2; exit 1; } WD=`mktemp -d -t menu-entries.XXXXXX` [ $? -ne 0 ] && exit 1 ( DEST=$HOME/wd/menus/files echo "wd: $WD" mkdir $WD/tmp || die "failed to make $WD/tmp" while read deb; do dpkg-deb -c $deb >&1|grep -q /usr/lib/menu if [ $? -eq 0 ]; then dpkg-deb -x $deb $WD/tmp || die "dpkg-deb failed" find $WD/tmp/usr/lib/menu -type f | while read f; do if [ -f $DEST/`basename $f` ]; then echo "WARNING: duplicate menu `basename $f` ($deb)" >&2 cp $f `mktemp $DEST.XXXXXX` else cp $f $DEST fi done rm -r $WD/tmp/* fi done < all-deb-files ) rm -r $WD