diff --git a/opkg.py b/opkg.py index ddb2c38..23fed96 100644 --- a/opkg.py +++ b/opkg.py @@ -408,8 +408,12 @@ class Package(object): return [] f = open(self.fn, "rb") ar = arfile.ArFile(f, self.fn) - tarStream = ar.open("data.tar.gz") - tarf = tarfile.open("data.tar.gz", "r", tarStream) + try: + tarStream = ar.open("data.tar.gz") + tarf = tarfile.open("data.tar.gz", "r", tarStream) + except IOError: + tarStream = ar.open("data.tar.xz") + tarf = tarfile.open("data.tar.xz", "r:xz", tarStream) self.file_list = tarf.getnames() self.file_list = [["./", ""][a.startswith("./")] + a for a in self.file_list]