perl-Archive-Tar-Stream - pure perl IO-friendly tar file management

Property Value
Distribution ALT Linux Sisyphus
Repository Autoimports noarch
Package name perl-Archive-Tar-Stream
Package version 0.02
Package release alt1
Package architecture noarch
Package type rpm
Installed size 21.64 KB
Download size 21.64 KB
Official Mirror
Archive::Tar::Stream grew from a requirement to process very large
archives containing email backups, where the IO hit for unpacking
a tar file, repacking parts of it, and then unlinking all the files
was prohibitive.
Archive::Tar::Stream takes two file handles, one purely for reads,
one purely for writes.  It does no seeking, it just unpacks
individual records from the input filehandle, and packs records
to the output filehandle.
This module does not attempt to do any file handle management or
compression for you.  External zcat and gzip are quite fast and
use separate cores.
use Archive::Tar::Stream;
my $ts = Archive::Tar::Stream->new(outfh => $fh);
$ts->AddFile($name, -s $fh, $fh);
my $infh = IO::File->new("zcat $infile |") || die "oops";
my $outfh = IO::File->new("| gzip > $outfile") || die "double oops";
my $ts = Archive::Tar::Stream->new(infh => $infh, outfh => $outfh);
$ts->StreamCopy(sub {
my ($header, $outpos, $fh) = @_;
return 'KEEP' if $header->{size} < 64 * 1024;
return 'KEEP' if $header->{name} =~ m/\.jpg$/i;
return 'EDIT' unless $fh;
return 'KEEP' if mimetype_of_filehandle($fh) eq 'image/jpeg';
return 'SKIP';


Package Version Architecture Repository
perl-Archive-Tar-Stream - - -


Name Value
/usr/share/perl5 -
perl(File/ -
perl(IO/ -
perl(IO/ -
perl( -
rpmlib(PayloadIsLzma) -


Name Value
perl(Archive/Tar/ = 0.020
perl-Archive-Tar-Stream = 0.02-alt1


Type URL
Binary Package perl-Archive-Tar-Stream-0.02-alt1.noarch.rpm
Source Package perl-Archive-Tar-Stream-0.02-alt1.src.rpm

Install Howto

  1. Add the following line to /etc/apt/sources.list:
    rpm [Sisyphus] noarch autoimports
    rpm [Sisyphus] noarch autoimports
  2. Update the package index:
    # sudo apt-get update
  3. Install perl-Archive-Tar-Stream rpm package:
    # sudo apt-get install perl-Archive-Tar-Stream



See Also

Package Description
perl-Archive-Tar-Streamed-0.03-alt1.noarch.rpm Tar archives, non memory resident
perl-Archive-Tar-Wrapper-IPC-Cmd-0.22-alt1.noarch.rpm Archive-Tar-Wrapper minus IPC::Run, IO::Pty
perl-Archive-Tyd-0.02-alt1.noarch.rpm perl module Archive-Tyd
perl-Archive-Zip-Crypt-0.02-alt1.noarch.rpm Unpacking of password protected archives for Archive::Zip
perl-Archive-Zip-Parser-0.0.3-alt1.noarch.rpm Parser for .ZIP archives
perl-Archive-Zip-SimpleZip-0.022-alt1.noarch.rpm Create Zip Archives
perl-Archlinux-Term-0.03-alt1.noarch.rpm Print messages to the terminal in Archlinux style
perl-Argon-0.16-alt1.noarch.rpm A distributed execution platform for Perl
perl-Argon-scripts-0.16-alt1.noarch.rpm Argon scripts
perl-Arguments-0.2-alt1.noarch.rpm perl module Arguments
perl-Argv-1.28-alt1.noarch.rpm Provide an OO interface to an arg vector
perl-Ark-1.20-alt1.noarch.rpm light weight Catalyst-ish web application framework
perl-Ark-Plugin-I18N-0.01-alt1.noarch.rpm Ark plugin for I18N
perl-Ark-Plugin-MobileJP-0.01-alt1.noarch.rpm Ark plugins for japanese feature phones
perl-Ark-Plugin-ReproxyCallback-0.02-alt1.noarch.rpm Ark plugins for Reproxy