43 lines
713 B
Bash
Executable File
43 lines
713 B
Bash
Executable File
#!/bin/bash
|
|
|
|
EDITOR=mcedit
|
|
|
|
if [[ -z "$1" ]]; then
|
|
echo "Syntax: $0 debfile"
|
|
exit 1
|
|
fi
|
|
|
|
DEBFILE="$1"
|
|
TMPDIR=`mktemp -d /tmp/deb.XXXXXXXXXX` || exit 1
|
|
OUTPUT=`basename "$DEBFILE" .deb`.modfied.deb
|
|
|
|
if [[ -e "$OUTPUT" ]]; then
|
|
echo "$OUTPUT exists."
|
|
rm -r "$TMPDIR"
|
|
exit 1
|
|
fi
|
|
|
|
dpkg-deb -x "$DEBFILE" "$TMPDIR"
|
|
dpkg-deb --control "$DEBFILE" "$TMPDIR"/DEBIAN
|
|
|
|
if [[ ! -e "$TMPDIR"/DEBIAN/control ]]; then
|
|
echo DEBIAN/control not found.
|
|
|
|
rm -r "$TMPDIR"
|
|
exit 1
|
|
fi
|
|
|
|
CONTROL="$TMPDIR"/DEBIAN/control
|
|
|
|
MOD=`stat -c "%y" "$CONTROL"`
|
|
$EDITOR "$CONTROL"
|
|
|
|
if [[ "$MOD" == `stat -c "%y" "$CONTROL"` ]]; then
|
|
echo Not modfied.
|
|
else
|
|
echo Building new deb...
|
|
dpkg -b "$TMPDIR" "$OUTPUT"
|
|
fi
|
|
|
|
rm -r "$TMPDIR"
|