web/index.html

Sat, 26 Jul 2008 12:55:37 -0400

author
Brett Smith <brett@brettcsmith.org>
date
Sat, 26 Jul 2008 12:55:37 -0400
branch
trunk
changeset 89
fc0d6a3fde53
parent 75
856de7e8f494
child 93
6c20788653a8
permissions
-rw-r--r--

Release 6.2

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN"
"http://www.w3.org/TR/html4/strict.dtd">

<html><head><title>dtrx: Intelligent archive extraction</title>
<link rel="stylesheet" href="common.css">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<h1>dtrx: Intelligent archive extraction</h1>

<h2>Introduction</h2>

<p><span class="pname">dtrx</span> stands for &ldquo;Do The Right
Extraction.&rdquo; It's a tool for Unix-like systems that takes all the
hassle out of extracting archives.  Here's an example of how you use
it:</p>

<pre>$ dtrx linux-2.6.10.tar.bz2</pre>

<p>That's basically the same thing as:</p>

<pre>$ tar -jxf linux-2.6.10.tar.bz2</pre>

<p>But there's more to it than that.  You know those really annoying files
that don't put everything in a dedicated directory, and have the
permissions all wrong?</p>

<pre>$ tar -zvxf random-tarball.tar.gz
foo
bar
data/
data/text
$ cd data/
cd: permission denied: data</pre>

<p><span class="pname">dtrx</span> takes care of all those problems for
you, too:</p>

<pre>$ dtrx random-tarball.tar.gz
$ cd random-tarball/data
$ cat text
This all works properly.</pre>

<p><span class="pname">dtrx</span> is simple and powerful.  Just use the
same command for all your archive files, and they'll never frustrate you
again.</p>

<h2>Features</h2>

<ul>

<li><strong>Handles many archive types</strong>: You only need to remember
one simple command to extract

<span class="pname">tar</span>,
<span class="pname">zip</span>,
<span class="pname">cpio</span>,
<span class="pname">deb</span>,
<span class="pname">rpm</span>,
<span class="pname">gem</span>,
<span class="pname">7z</span>,
<span class="pname">cab</span>,
<span class="pname">gz</span>,
<span class="pname">bz2</span>,
<span class="pname">lzma</span>, and many kinds of
<span class="pname">exe</span> files, including Microsoft Cabinet archives,
InstallShield archives, and self-extracting <span class="pname">zip</span>
files.

If they have any extra compression, like <span
class="pname">tar.bz2</span>, <span class="pname">dtrx</span> will take
care of that for you, too.</li>

<li><strong>Keeps everything organized</strong>: <span
class="pname">dtrx</span> will make sure that archives are extracted into
their own dedicated directories.</li>

<li><strong>Sane permissions</strong>: <span class="pname">dtrx</span> makes
sure you can read and write all the files you just extracted, while leaving
the rest of the permissions intact.</li>

<li><strong>Recursive extraction</strong>: <span class="pname">dtrx</span> can
find archives inside the archive and extract those too.</li>

</ul>

<h2>Download</h2>

<p><a href="dtrx-6.2.tar.gz">Download <span class="pname">dtrx</span>
6.2</a>.  The SHA1 checksum for this file
is <tt>7f2c633c97e79083c08cb63f3c155395f8f88646</tt>.  New features in this
release include:</p>

<ul>

<li>A new <tt>--one-entry</tt> option: Normally, if an archive only
contains one file or directory with a name that doesn't match the
archive's, dtrx will ask you how to handle it.  With this option, you can
specify ahead of time what should happen.</li>
<li>Since version 6.0, when you extracted or listed the contents of a cpio
archive, dtrx would display a warning that simply said &quot;1234
blocks.&quot; dtrx 6.2 suppresses this message.</li>
<li>When you try to list the contents of an archive, dtrx will now cope
with misnamed files more gracefully, giving more accurate results and
showing fewer error messages.</li>
<li>dtrx 6.2 will only show you error messages from archive extraction if
it is completely unable to extract the file.  If one of its extraction
methods succeeds, it will no longer show you the error messages from
previous extraction attempts.</li>
<li>dtrx is now better about cleaning up partially extracted archives when
it encounters an error or signal.</li>
<li>Users will no longer see error messages about broken pipes from
dtrx.</li>

</ul>

<p>If you would like to try the latest development version—or maybe do some
work on it yourself—you can check out the
project's <a href="http://www.selenic.com/mercurial/wiki/">Mercurial</a>
repository.  A
<a href="http://www.brettcsmith.org/2007/dtrx/dtrx/">web repository</a> is
available, or you can just run:</p>

<pre>$ hg clone http://www.brettcsmith.org/2007/dtrx/dtrx</pre>

<h2>Requirements</h2>

<p>If you have Python 2.4 or greater, this should work out of the box.  If
you're stuck on Python 2.3, you can use this if you install
the <a href="http://www.lysator.liu.se/~astrand/popen5/">subprocess
module</a>.  You'll need the usual tools for the archive types you want to
extract: for example, if you're extracting <span class="pname">zip</span>
files, you'll need <span class="pname">zipinfo</span>
and <span class="pname">unzip</span>.  See the INSTALL file included
with <span class="pname">dtrx</span> for a complete list of necessary
utilities.</p>

<h2>Installation</h2>

<p>You can just put <span class="pname">scripts/dtrx</span> wherever is
convenient for you, but if you want to install the program system-wide, you
can also run the following command as root or equivalent:</p>

<pre>python setup.py install</pre>

<p>See the included <tt>INSTALL</tt> file for more information.</p>

</body>
</html>

mercurial