Репозитории ALT
S: | 8.95.6-alt1 |
5.1: | 8.79-alt0.M51.1 |
4.1: | 8.69-alt1 |
4.0: | 8.64-alt0.1 |
Группа :: Архивирование/Прочее
Пакет: alien
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
Патч: alien-dpkg-tar.xz.patch
Скачать
Скачать
diff --git a/alien/Alien/Package/Deb.pm b/alien/Alien/Package/Deb.pm
index bf09058..0141264 100644
--- a/alien/Alien/Package/Deb.pm
+++ b/alien/Alien/Package/Deb.pm
@@ -216,7 +216,7 @@ sub scan {
}
else {
@filelist=map { chomp; s:\./::; "/$_" }
- $this->runpipe(0, "ar -p '$file' data.tar.gz | gzip -dc | tar tf -");
+ $this->runpipe(0, "ar -p '$file' data.tar.gz | gzip -dc | tar tf - || ar -p '$file' data.tar.xz | xzcat | tar tf -");
}
$this->filelist(\@filelist);
@@ -244,7 +244,7 @@ sub unpack {
or die "Unpacking of '$file' failed: $!";
}
else {
- $this->do("ar -p $file data.tar.gz | gzip -dc | (cd ".$this->unpacked_tree."; tar xpf -)")
+ $this->do("ar -p $file data.tar.gz | gzip -dc | (cd ".$this->unpacked_tree."; tar xpf -) || ar -p '$file' data.tar.xz | xzcat | (cd ".$this->unpacked_tree."; tar xpf -)")
or die "Unpacking of '$file' failed: $!";
}
diff --git a/alien/Alien/Package/Deb.pm b/alien/Alien/Package/Deb.pm
index bf09058..a6efacf 100644
--- a/alien/Alien/Package/Deb.pm
+++ b/alien/Alien/Package/Deb.pm
@@ -143,6 +143,7 @@ sub getcontrolfile {
" cat '$file'; cd /; rm -rf /tmp/tar_out.$$)";
}
my $getcontrol = "ar -p '$file' control.tar.gz | gzip -dc | ".tar_out($controlfile)." 2>/dev/null";
+ $getcontrol .= " || ar -p '$file' control.tar.xz | xzcat | ".tar_out($controlfile)." 2>/dev/null";
return $this->runpipe(1, $getcontrol);
}
}