diff --git a/scripts/rpm2cpio.sh b/scripts/rpm2cpio.sh index b03ee36..57c47bb 100755 --- a/scripts/rpm2cpio.sh +++ b/scripts/rpm2cpio.sh @@ -28,9 +28,11 @@ comp=`dd if="$pkg" ibs=$o skip=1 count=1 2>/dev/null \ gz="`echo . | awk '{ printf("%c%c", 0x1f, 0x8b); }'`" lzma="`echo . | awk '{ printf("%cLZ", 0xff); }'`" +xz="`echo . | awk '{ printf("%c7z", 0xfd); }'`" case "$comp" in BZh) dd if="$pkg" ibs=$o skip=1 2>/dev/null | bunzip2 ;; "$gz"*) dd if="$pkg" ibs=$o skip=1 2>/dev/null | gunzip ;; + "$xz"*) dd if="$pkg" ibs=$o skip=1 2>/dev/null | xzcat ;; "$lzma"*) dd if="$pkg" ibs=$o skip=1 2>/dev/null | unlzma ;; - *) echo "Unrecognized rpm file: $pkg"; return 1 ;; + *) echo "Unrecognized rpm file: $pkg"; exit 1 ;; esac